Можно ли обойти фильтрацию спецсимволов в mssql.

Discussion in 'Уязвимости' started by vmn, 17 Dec 2006.

  1. vmn

    vmn Elder - Старейшина

    Joined:
    16 Oct 2006
    Messages:
    26
    Likes Received:
    12
    Reputations:
    3
    Есть несколько инъекций в mssql, где фильтруются символы "," и ";" Инъекции в целочисленном значении, результаты запроса id=10 и запроса id=0xA одинаковы. Можно ли как-нибудь с помощью 0x... или другими способами обойти фильтрацию?
     
    #1 vmn, 17 Dec 2006
    Last edited: 17 Dec 2006
  2. SQLHACK

    SQLHACK Остались только слоны

    Joined:
    27 Sep 2006
    Messages:
    437
    Likes Received:
    372
    Reputations:
    407
    Просто не используй их и всё :), не всегда же Select нужен.
     
    _________________________
  3. Ded.MCz

    Ded.MCz Member

    Joined:
    16 Jan 2006
    Messages:
    18
    Likes Received:
    19
    Reputations:
    36
    http://xtoolz.ru/files/char.php
     
  4. Goudini

    Goudini Elder - Старейшина

    Joined:
    7 Jun 2006
    Messages:
    132
    Likes Received:
    134
    Reputations:
    91
    PHP:
    <title>Encoding to char by Goudini 2006</title> 
    <style> 
    body {background-color:#333333;font-family:Verdana, sans-serif; font-size:12px; color:#C0C0C0;} 
    </style> 
      <form action="<?=$_SERVER["SCRIPT_NAME"]?>" method="post"> 
      <b>String</b> : <input type=text name="input" value="<?=htmlspecialchars(@$input)?>"> 
      <input type=submit value="to chr"> 
      </form> 
    <? 
    error_reporting(0); 
    $input=stripslashes($_POST["input"]); 
    if ($input!=""){ 
      echo "<b>PHP:</b> <tt>"; 
      for ($i=0;$i<strlen($input);$i++) { 
            if ((strlen($input) - $i) == 1) echo "chr(".ord($input[$i]).")</tt>"; 
            else echo "chr(".ord($input[$i]).")."; 
      } 
      echo "<br>\n<b>MySQL:</b> <tt>char("; 
      for ($i=0;$i<strlen($input);$i++) { 
              if ((strlen($input) - $i) == 1) echo ord($input[$i]); 
            else echo ord($input[$i]).","; 
      } echo ")</tt>"; 
    } else echo "<b>Goudini</b> (c) 2006"; 
    ?>
    чё-то типо того)
     
    1 person likes this.
  5. Denny

    Denny New Member

    Joined:
    12 Oct 2006
    Messages:
    2
    Likes Received:
    3
    Reputations:
    -5
    Возможно замени ; и ' на соответствующий hex