Uncontrolled format string: Difference between revisions

Content deleted Content added
See also: -desc
Details: Capitalized 'perl'
Line 11:
Format bugs arise because C's argument passing conventions are not [[Type safety|type-safe]]. In particular, the <code>[[vararg]]s</code> mechanism allows [[subprogram|function]]s to accept any number of arguments (e.g. <code>printf</code>) by "popping" as many [[argument]]s off the [[call stack]] as they wish, trusting the early arguments to indicate how many additional arguments are to be popped, and of what types.
 
Format string bugs can occur in other programming languages besides C, such as perlPerl, although they appear with less frequency and usually cannot be exploited to execute code of the attacker's choice.<ref name="bugtrag_perl"/>
 
== History ==