Advertisement
Guest User

Untitled

a guest
Jul 27th, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.05 KB | None | 0 0
  1. <?php
  2. if(isset($_GET['input']))
  3. {
  4.     $vuln = $_GET['input'];
  5.    
  6.     checkVuln($vuln, makeVulnArray("and 1=0"));
  7.     checkRow($vuln, makeVulnArray("order by"));
  8.     elseif(strstr($vuln, "union select 1,2--"))
  9.     {
  10.         echo "id, key";
  11.     }
  12.     elseif(strstr($vuln, "1,CONCAT_WS(CHAR(32,58,32),user(),database(),version())--"))
  13.     {
  14.         echo "vuln,\n";
  15.         echo " 5.1";
  16.     }
  17.     elseif(strstr($vuln, "union select 1,id from vuln--"))
  18.     {
  19.         echo "1";
  20.     }
  21.     elseif(strstr($vuln, "union select 1,key from vuln--"))
  22.     {
  23.         echo "81xj2x09";
  24.     }
  25.     elseif(strstr($vuln, "UNION SELECT 1,2--"))
  26.     {
  27.         echo "id, key";
  28.     }
  29.     elseif(strstr($vuln, "UNION SELECT 1,id FROM vuln--"))
  30.     {
  31.         echo "1";
  32.     }
  33.     elseif(strstr($vuln, "UNION SELECT 1,key FROM vuln--"))
  34.     {
  35.         echo "81xj2x09";
  36.     }
  37.     else
  38.     {
  39.         echo strip_tags(trim($vuln)); //XSS protection
  40.     }
  41. }
  42. function makeVulnArray($query) {
  43.     $start = array(" ","' ");
  44.     $end = array("--","/*");
  45.     $vulnArray = array();
  46.     $i = 0;
  47.     foreach ($start as $s) {
  48.         foreach ($end as $e) {
  49.             $vulnArray[i] = $s . $query . $e;
  50.             $i++;
  51.         }
  52.     }
  53. }
  54.  
  55. function checkVuln($input, $vulnArray) {
  56.     $vulnFound = false;
  57.     array_push($vulnArray, "'");
  58.     foreach($vulnArray as $v) {
  59.         if(stristr($input, $v)) {
  60.             echo "You have an error in your MYSQL syntax near line 1";
  61.             $vulnFound = true;
  62.             break;
  63.         }
  64.     }
  65.     if($vulnFound == false) {
  66.         echo strip_tags(trim($input)); //XSS protection
  67.     }
  68. }
  69.  
  70. function checkRow($input, $vulnArray) {
  71.     $toHigh = false;
  72.     foreach($vulnArray as $v) {
  73.         if(stristr($input, substr($v,0,-2))) {
  74.             preg_match('/\d+/', $input, $number);
  75.             $rows = (int)$number[0];
  76.             if($rows > 2) {
  77.                 echo "Unknown column '".$rows."' in order clause";
  78.                 $toHigh = true;
  79.                 break;
  80.             }
  81.         }
  82.     }
  83.     if($toHigh == false) {
  84.         echo strip_tags(trim($input)); //XSS protection
  85.     }
  86. }
  87. ?>
  88. <html>
  89. <head>
  90.     <title>Poison - I'm sick</title>
  91. </head>
  92. <body>
  93.     <form name="input" method="get">
  94.         Text: <input type="text" name="input" />
  95.         <input type="submit" value="Submit" />
  96.     </form>
  97.     <center><a href="/tests/index.html">Back</a></center>
  98. </body>
  99. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement