Questions about this topic? Sign up to ask in the talk tab.

Difference between revisions of "Unsafe evaluation"

From NetSec
Jump to: navigation, search
(Created page with " Unsafe evaluation Proof of concept: It is never safe to eval() user input, plain and simple. There is always another way to skin the cat; try and consider that...")
 
Line 1: Line 1:
 
     Unsafe evaluation
 
     Unsafe evaluation
      Proof of concept:
+
Proof of concept:
        It is never safe to eval() user input, plain and simple.  There is always another way to skin the cat; try and consider that!
+
* It is never safe to eval() user input, plain and simple.  There is always another way to skin the cat; try and consider that!
 
        
 
        
      Mitigation:
+
Mitigation:
        Design around combining the function "eval" with user input.
+
* Design around the need to combine the function "eval" with user input.
 
        
 
        
       Auditing:
+
        
        IGNORECASE=1 find -regextype posix-awk -regex ".*\.(rb|php|pl|py|pm)" -exec grep -HnC2 \\beval\( '{}' \;
+
Auditing:
 +
{{code|text=<source lang="bash">IGNORECASE=1 find -regextype posix-awk -regex ".*\.(rb|php|pl|py|pm)" -exec grep -HnC2 \\beval\( '{}' \;</source>}}
  
 
[[Category:Secure programming]]
 
[[Category:Secure programming]]

Revision as of 00:48, 12 May 2013

   Unsafe evaluation

Proof of concept:

  • It is never safe to eval() user input, plain and simple. There is always another way to skin the cat; try and consider that!

Mitigation:

  • Design around the need to combine the function "eval" with user input.


Auditing:

IGNORECASE=1 find -regextype posix-awk -regex ".*\.(rb|php|pl|py|pm)" -exec grep -HnC2 \\beval\( '{}' \;