Pangolin是一款帮助渗透测试人员进行Sql注入测试的安全工具。
所谓的SQL注入测试就是通过利用目标网站的某个页面缺少对用户传递参数控制或者控制的不够好的情况下出现的漏洞,从而达到获取、修改、删除数据,甚至控制数据库服务器、Web服务器的目的的测试方法。Pangolin能够通过一系列非常简单的操作,达到最大化的攻击测试效果。它从检测注入开始到最后控制目标系统都给出了测试步骤。
如下是一些示例:
渗透测试人员用于发现目标存在的漏洞并评估漏洞可能产生后果的严重程度
网站管理员可以用于对自己开发的代码进行安全检测从而进行修补
安全技术研究人员能够通过Pangolin来更多更深入的理解SQL注入的技术细节
过去有许多Sql注入工具,不过有些功能不完全,支持的数据库不够多,或者是速度比较慢。但是,在Pangolin发布以后,这些问题都得到了解决。Pangolin也许是目前已有的注入工具中最好的之一。
穿山甲使用教程:
URL输入框
在这里输入待测试目标的URL地址,注意,该URL地址必须是携带参数的格式,例如 http://www.site.com/news.asp?id=100 这样的格式。
注入方式选择框
如果服务器端代码处理GET和POST参数的操作是一致的话(JSP编程中经常可以见到),那么通过GET和POST传递参数的效果是一样的。这时使用POST试可以避免服务端日志的产生。
如果待测参数是通过表单传递,那么您需要进行地址拼接。假设参数传递的目标地址为http://www.***.com/login.asp,参数分别为username和password,那么测试时,您需要在URL输入框中输入http://www.***.com/login.asp?username=aa&password=bb这样的格式,并且将注入方式设置成POST。
数据库类型选择框
顺便提及一点:SQL注入是跟数据库强相关的,而不是页面的代码语言,这一点许多文章都误导了读者。我们看到什么asp注入,php注入,jsp注入之类的概念都是不正确的。而应当说是MSSQL注入,Mysql注入或者Oracle注入等等。
在这个选择框中指明了目标Web连接的数据库类型。在扫描到注入点以后,该选择框将自动选择对应的数据库类型。
在注入前,如果我们已知了目标的数据库类型,那么我们可以先从该下拉框中选择合适的值,这样能够缩短注入扫描的时间。
关键字输入框
什么叫关键字呢?在自动化工具的测试过程中,如果目标针对不同的注入语句进行了错误提示的话那么程序能够知道这是一个典型的错误,然后就能够提取信息。但是如果页面返回的结果中并没有带有明确的错误提示信息的话,那么程序将无法判断哪一种情况下是正常页面哪一种情况下是错误页面。因为,测试人员需要手动的告之程序一个正常的页面或者错误的页面有什么特殊字符串能够标明,这时候您就需要在这里输入这个字符串了。
在其他的一些注入工具中,如果测试人员没有输入关键字的话是无法进行测试的,但是在Pangolin中我独创了自动分析关键字的功能,它能够让你在不干预的情况下自动的分析关键字从而更扫描出漏洞。