Beispiel

public class TaintDemoClass {

private String input;

public TaintDemoClass(){

input = getInput();
sensitiveMethod(input);
}

private String getInput(){
// get input from user...
return aString;
}

private String sanitizeInput(String s) {
// clean input...
return cleanString;
}

private void sensitiveMethod(String s) {
// use input...
}

}



Lösung
Um die potenziell schädlichen Auswirkungen einer ungesteuerten Eingabe für sensible Methoden auszuschließen, senden Sie diese Eingabe immer über eine Methode 'sanitize'.


public class TaintDemoClass {

private String input;

public TaintDemoClass() {

input = getInput();
String cleanInput = sanitizeInput(input);
sensitiveMethod(cleanInput);
}

private void getInput(){
// get input from user...
return aString;
}

private String sanitizeInput(String s) {
// clean input...
return cleanString;
}

private void sensitiveMethod(String aString) {
// use input...
}

}