渗透测试中的SQL注入漏洞的延伸用法



     几年前,SQL注入在世界范围内很流行,但现在,SQL注入仍然是最流行的攻击方法之一,

开发人员为此头疼。当然主要是因为注入攻击的灵活性,一个目的,多条语句,多种编写方法

。SQL注入可以分为工具和手工两种。由于自动化,工具通常比手动注入效率高得多,但与手

动注入相比,它们受到限制,因为它们没有针对性。
 
 
 
所有的输入都可能是有害的,有参数的地方都可能存在SQL注入。但是由于浏览器的限制,ht

tp头中的一些隐藏链接、API调用和参数往往被忽略。那么如何进行全面的SQL注入挖掘呢?

在渗透测试中,无论注入工具多么强大,都会有局限性,手动注入可以解决这个弱点。当然,

手动注入需要渗透者对数据库的语法有一定的了解。但是由于SQL注入的灵活性和多样性,如

果详细讨论的话,恐怕可以写成单本书了。在这里,作者将选择最具代表性的例子进行论证。
 
 
 
注入遇到的一个常见情况是注入得到的加密密文无法求解。为了解决这个问题,这里解释几种

可行的方法。(1)使用国外的搜索引擎,往往会有意想不到的收获,最常见的是Google。(2)用

Whois查出管理员邮箱,然后发邮件通知管理员更改密码。邮件内容无非是“我们是XXX检测

中心,你的网站有风险。请立即更改管理员密码……”。(3)分析Cookie。有时加密的密文会出

现在cookies中。这种情况下,cookies中的密文可以直接被管理员的密文替换。(4)在特定的注

入环境中,原始密文有时可以被新密文替换。当然这种方法的执行条件比较苛刻,实践中很少

遇到。(5)使用密码检索功能。使用秘密安全问题来检索密码是很常见的。在这种情况下,可以

注入秘密安全问题的答案,然后使用密码检索功能成功登录目标帐户。(6)逻辑缺陷。比如一些

登录功能、修改功能、密码检索功能等都是以密文的形式直接在数据包中传输的。这时可以用

密文代替,这样就可以登录并更改密码了。
分享: