2.1 Google批量注入
Google批量注入顾名思义就是批量发现SQL漏洞,然后进行注入测试,通过注入等方式达到渗透的目的。在SQL注入出现的早期和中期由于攻击少,因此测试效果非常明显;在后期由于安全爱好者数量剧增和网站安全意识的提高,比较通用的SQL注入点少了不少,因此批量注入测试效果就要差一些。对于新出来的各个Blog、CMS、BBS以及一些专有系统的SQL注入漏洞,借助Google实现批量注入其效果还是不错的。
2.1.1 使用啊D注入工具搜索SQL注入点
直接打开“啊D注入工具”,单击“扫描注入点”,先在“检测地址”中输入“http://www.google.com”,出现Google的页面后,接着在Google搜索框中输入“filetype:asp index.asp?id=1’”,然后单击“Google搜索”按钮进行搜索,“啊D注入工具”会自动检测Google搜索到的结果,如图2-1所示,一共出现了12个可用的注入点。
图2-1 通过“啊D注入工具”批量搜索SQL注入点
技巧:
(1)在Google搜索页面中可以设置页面搜索记录显示最高为100项,默认是显示10个搜索记录。
(2)在批量注入检测时,在间隔一段时间后,单击Google搜索记录中页面链接,可以进行后面的检测,检测出的SQL注入点会自动添加在可用注入点下面。
2.1.2 进行SQL注入测试
在“啊D注入工具”最下方的SQL注入扫描结果中随机选中一个记录,单击“SQL注入检测”,工具自动进行SQL注入检测,如果该注入点存在并且能够利用,则会给出一定的数据和提示,如图2-2所示,该SQL注入点可以猜测数据,数据库用户为sepri,用户权限为db_owner。依次选择检测标段和检测字段,最终可以猜测出数据库管理员表中的数据,如图2-3所示。
图2-2 猜测数据库中的数据
图2-3 获取管理员表中的数据
其后续步骤就是如何通过SQL注入来获取网站获知服务器的WebShell,通过WebShell来提升权限,在后面的章节中会有很多案例进行分析,在此就不再赘述了。
2.1.3 总结与探讨
(1)目前Google搜索引擎采取了一些新策略来限制批量注入搜索。Google通过判断搜索来路来对批量搜索SQL注入进行限制,通常要求用户输入验证码来判断搜索是来自软件还是来自个人。
(2)在批量注入检测中“啊D工具”对asp、aspx、cfm等SQL注入检测效果较好,搜索出结果后通过常规的SQL注入渗透方法即可获取WebShell和服务器权限。其关键点就是对搜索内容的定位,例如针对aspx的sql注入搜索可以是“filetype:aspx index.aspx?id= 2”,通过限定网站语言的类型以及页面链接来搜索,如果已知某些系统的漏洞,通过搜索存在漏洞的具体文件,其效果会更有效。
(3)在实际注入中可以对某一个网站进行定点测试,测试语法:
Site:www.somesite.com filetype:asp
通过查看搜索出来的页面链接来进一步分析网站的时候,存在SQL注入。
(4)相关渗透测试。在进行Web渗透测试时有可能主站点无法渗透下来,但通过渗透使用这些系统的网站来获取系统的源代码,进而再回到主站进行渗透。通过Google搜索使用该系统的关键字来获取。