lcx
分析服务器的web程序,像论坛、聊天室了,发现其程序编写的bug或疏漏,从而进行80端口的渗透入侵,似乎只是黑客程序高手的事情。其实不然,虽然我们不会编写程序,但是利用构造特殊字符菜鸟一样可以来进行80端口的渗透入侵。不相信?那好,看我用特殊字符精心打造的的四把小李飞刀。
第一把飞刀:鱼目混珠。我们可以用它实现在论坛里冒名发言。看中一个美眉,日思夜想想让她在论坛里对全世界说我爱你,美眉就是不说怎么办?打开记事本,按下tab键或capslock+tab键,就会形成一个特殊空格。然后复制下来,将空格放在美眉的名字后注册,啊,果然成功注册了和美眉一个同样的名字,剩下来的事就好办了。形成特殊空格的字符还有区位输入法输入的aaaa或aaab或aaac。还有一个字符是 ,在html标签里它就是空白的意思,用它也可以。我的经验是区位输入法输入的aaaa/aaab/aaac,在asp编写的程序里成功率极高,而tab键和 在php程序里成功率高。更可怕的是,在wdb论坛和ibb论坛,用tab键构造的特殊用户名可以取得和原用户相同的权限。如果原用户名是管理员,那你的构造的这个冒名用户也会变成管理员。
第二把飞刀:瞒天过海。在asp动态网络编程中,经常会有验证管理员帐号和密码的登陆页面,以便进行后台管理。但是在这样的身份验证里会存在一些漏洞,例如在用户名和密码框里都输入'or''=',也可以进入管理页面。为什么会这样?我简单说一下。看原程序: user=request.form("user")
pass=request.form("pass")
......
sql="select * from guestbook where user ='"&user&"' and pass='"&pass&"'
如果将user和pass的值我们都输入'or''=',那么上边的最后一行sql代码就会变成
sql="select * from guestbook where user =''or''='and pass=''or''='"
如果你懂一点sql语句的话,就可以看到,我们输入的'or''='满足了程序成真的条件值,所以我们就蒙敝过关了。这样说太抽象了,信心文章管理系就存在这个漏洞,这套程序在网上一抓一大把。抓个图看看,你用我提供的特殊字符,在帐号和密码处都输入'or''='就可以就入后台管理了。