Improper input validation: Difference between revisions

Content deleted Content added
This really seems to be a good disambiguation page.
The unsourced and unhelpful stuff, IMO needs to go, or it needs a rewrite and sourcing... but string exploits come and go daily, vary by language, OS, revision of each.
Line 7:
'''String exploits''' are [[security exploit]]s involving handling of [[String (computer science)|string]] data in computer software.
 
==Concatenation problems==
It is possible to cause ''String1 + User_Input_String + String2'' to behave in unexpected ways by crafting unanticipated User_Input_String, such as having string2 ignored in processing.
 
===String termination===
In many environments, it is possible to truncate the string with clever input.
* PHP: '''%00''' (NUL) can terminate strings, when used for API calls that uses it to terminate strings.
* Oracle: '''CHR(0)''' (NUL) can terminate strings when used for e.g. EXECUTE IMMEDIATE.
 
===Comment out characters===
In many environments, it is possible to "ask" the system to ignore the rest of the string, using "comment" characters.
* Many languages: '''/*''' means ignore everything until a '''*/''' combination.
* SQL: '''--''' means ignore rest of line
* Unix shells: '''#''' means ignore rest of line
 
==See also (other string problems)==
* [[Format string attack]] - unchecked <code>[[printf|*printf]]</code> format strings are dangerous<!-- If exception handling is not involved -->
* [[Buffer overflow]] - Buffer overflows often occurs in unsafe string functions