<bdo id="lrr2q"></bdo>
  • <track id="lrr2q"><span id="lrr2q"></span></track>

    <track id="lrr2q"><source id="lrr2q"></source></track>
         
       

      sql注入的一些新發現,突破關鍵字過濾

      保定網絡公司:保定乾坤網站建設 來源:保定網絡公司 人氣: keywords:
      導讀:一直以來都以為只有空格,tab鍵和注釋符/**/可以用來切割sql關鍵字,段時間在邪八看了風迅cms注入漏洞那篇帖子,才知道原來回車也可以用來作為分割符(以前竟然沒…

          一直以來都以為只有空格,tab鍵和注釋符/**/可以用來切割sql關鍵字,段時間在邪八看了風迅cms注入漏洞那篇帖子,才知道原來回車也可以 用來作為分割符(以前竟然沒有想到,真是失。;剀嚨腶scii碼是chr(13)&chr(10),至于為什么要兩個連在一起,這個我也不知 道[嘿嘿,你不知道的話,孤行一鬼告訴你答案,在ASP中,回車符就是這兩個字符組成的chr(13)&chr(10),換行用vbcrlf  ]。轉換成url編碼形式是%0d%0a,于是就可以用%0d%0a代替空格pass一些過濾空格的檢查了。


      引申一下,只用%0d能正常執行語句嗎?只用%0a呢?測試證明,用任意一種分割在mssql、mysql和access里面都是可以的。
      另外,關于mssql的多語句問題。我以前一直以為必須用分號作為語句的結尾,后來發現,完全不是那樣。類似

      select * from table exec xp_cmdshell'xxxxxxxxxx'

      select * from table/**/exec xp_cmdshell'xxxxxxxxxx'

      select * from table|---tab---|exec xp_cmdshell'xxxxxxxxxx'

      select * from table|---enter---|exec xp_cmdshell'xxxxxxxxxx'

      的語句都是可以正常執行的。而我以前竟然一直不知道!不過這個貌似跟連接數據庫驅動有關系,odbc可以正常執行,sqloledb的話就會報錯。有興趣的繼續研究吧

      這樣,以后遇到帶空格過濾關鍵字的攔截程序,又可以發揮發揮了?赡艽蠹以缇椭懒,不管怎么說,發在這里吧!

      最近想起可能還有些ascii碼可以用來在sql語句中代替空格,于是寫個腳本測試了一下,結果在所有128個低位ascii字符 中,chr(12)也可以在access里用,不過貌似chr(12)不能出現在and、or之類的關鍵詞附近,原因不清楚。mysql中比access 多一個chr(11)可以。至于mssql,挖日,直接從1到32的ascii碼換成字符后都可以正常使用。

       



      上一篇:揭密:黑客是如何攻擊電子郵件的
      下一篇:淺談政府網站的安全性
      保定網站建設

      92无码午夜福利_一级无码精品在线_国产欧美日韩亚洲18禁在线_亚洲一区二区三区日本久久九