当前位置: 首页 > 图文教程 > 服务器 > 安全防护 > 蓝雨设计整站SQL注入漏洞

安全防护
为Windows 2003安全—层层设防(3)
为Windows 2003安全—层层设防(4)
修改IIS的Banner隐藏操作系统版本
以毒攻毒!IIS Banner巧伪装
四招加强Windows 2003安全性
深入剖析EFS(2)
设置Active Directory域(1)
设置Active Directory域(2)
Rootkit分析(1)
Rootkit分析(2)
Rootkit分析(3)
Windows域信任关系建立全攻略
关于网站木马的解释(1)
关于网站木马的解释(2)
hdsi2.0 sql注入部分抓包(1)
hdsi2.0 sql注入部分抓包(2)
hdsi2.0 sql注入部分抓包(3)
hdsi2.0 sql注入部分抓包(4)
建造永不被杀的80端口后门(1)
建造永不被杀的80端口后门(2)

安全防护 中的 蓝雨设计整站SQL注入漏洞


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-29   浏览: 45 ::
收藏到网摘: n/a

本来是投稿文章来的,因为稿件的问题所以就上不了杂志,再加上最近有些人在网站留言说三道四的猜测蓝雨的问题,所以我就公开漏洞预警所说的漏洞,官方已经把版本都打了补丁,当然有些使用网站至今还是存在着SQL注入漏洞的,所以一切后果与我以及BCT小组无关

    最近无聊,在网上走来走去看看。发现现在的整站系统可是越来越多了,修改版本等等的N多阿!而蓝雨设计整站的使用者也越来越多了,蓝雨整站系统是从NOWA 0.94修改而来的!基于NOWA的系统不单指蓝雨一个还有很多的!我在此就不一一列举了,核心都是一样,只是程序的附加功能就各自不同!安全方面因为基于NOWA的系统所以到目前知道的漏洞就只有上传而已。以下文章中就会出现NOWA修改系统漏洞当中从未有的SQL注入漏洞!只怪蓝雨修改程序的时候没有做好注入问题了!这个可不能怪我!谁叫人家程序设计员不会注意安全死角阿?

一,确定注入点
    我们就拿官方网站进行测试,因为担心外面提供的版本并非最新版本导致文章的正确性有差异。首先我们提交http://***.net/view.asp?action=art&art_id=70 and 1=1 返回(图1)以下信息。
再次输入
http://***.net/view.asp?action=art&art_id=70%20and%201=2 返回(图2)以下信息
从标准的SQL注入点检测and1=1和and 1=2d 信息返回可以看出,两个图片的分别这个程序的评论存在着SQL注入,因为现在基于NOWA的修改版本都是基于ACCESS数据库架构的,所以我们可以进一步的确定这个程序的数据库类型。

二,猜解数据库表
    因为本人懒惰所以只好借用NBSI进行SQL注入的工作了,怎么知道是不是因为的NBSI实在太厉害了,不能够杀鸡用牛刀。竟然它全部检测不出我所找到的SQL注入点存在着SQL注入!(图3)实在太令人感到吃惊(HaK_BaN:难道真的....真的要我手动注入T_T)NBSI太给面子了!所以我只好硬着头皮去进行手动注入了。首先猜解数据库的表是否存在admin表。构造语句提交
http://***.net/view.asp?action=art&art_id=70%20and%200<>(select%20count(*)%20from%20admin) 现在的程序当中的数据库管理员表,不就是admin,adminuser user之类的名称,所以我们只要抓住程序作者的心理就可以知道了,提交语句之后页面返回正常,我们就可以确定数据库当中是存在admin这个表的。(图4)我们只是需要admin的密码以及账号,所以数据库当中其他的表可以忽略。

三,猜解数据库字段
    在猜解之前为了减少更多的麻烦和无谓的猜解,应该要对于所入侵的网站进行一些资料的搜集,例如管理员的QQ以及管理员所使用的网名都是要知道的,因为我们通常都会使用容易记忆的密码以及账号,从而使自己可以不会忘记。找了文章页面等等的功能页面都找不到文章编辑以及管理员的QQ号码。只好在BBS当中寻找了,很幸运的是我们在BBS当中找到了“蓝雨”这个用户名,这样子等待会猜解admin账号的时候我们可以试试中文的名字或者是拼音字母。(HaK_BaN:我可是曾经在MSN以一个名字看穿PLMM性格以及生日的哦,大家要注意社会工程学的重要性阿)
    废话少说,我们看看这个程序的管理员字段是什么!?首先猜解是name的提交语句如下http://***.net/view.asp?action=art&art_id=70%20and%201=(select%20count(*)%20from%20admin%20where%20len(name)>0) (HaK_BaN:*_*不是阿!不是NAME字段阿)提交语句后信息返回页面显示不正常就证实admin表中没有name这个字段名。看来又要想想如何去进行猜解了,既然name字段不行就试试admin_name字段行不行!再次构造猜解字段语句:http://***.net/view.asp?action=art&art_id=70%20and%201=(select%20count(*)%20from%20admin%20where%20len(admin_name)>0) (HaK_BaN:这下子总可以了吧?我又迈进一步了!)提交语句之后页面返回正常了,这下子终于可以了。(图片5)
然后,我们就开始猜解password的字段了,其实一看上面的回显我们就可以非常肯定的说password字段就是admin_password,所以提交的语句就是http://***.net/view.asp?action=art&art_id=70%20and%201=(select%20count(*)%20from%20admin%20where%20len(admin_password)>0) 信息回显正常对吧!?哈哈哈(图片6)
说到这里整个猜解就差不多完场了!(菜鸟:什么什么阿?还有账号和密码了?你丫的是不是傻了?)猜解密码和账号就更加是一个麻烦和浪费时间的活来的!好好,我们去看看账号和密码的猜解如何?首先我们猜解账号的长短阿!假设,我们之前就已经拿到了管理员常用的账号名称“蓝雨”是管理员账号。我们就有两种可能性,一是蓝雨的拼音“lanyu”,二是蓝雨的中文转为ASCII码进行猜解。我们首先试试拼音这个的可能性,如果是这样子的话我们就要构造admin_name的长度为5,所以提交语句为http://***.net/view.asp?action=art&art_id=70%20and%201=(select%20count(*)%20from%20admin%20where%20len(admin_name)>5) 页面信息返回无法正