我看到一些黑客工具可以找到自动注入SQL注入漏洞的网页。
它是如何运作的?
答案 0 :(得分:1)
通常,人们可以对SQL代码结构进行有根据的猜测,以允许注入。
例如,使用易受攻击的用户名/密码验证码,在大多数情况下会是这样的:
select count(*) from users where username=@username and password=@password;
所以黑客会尝试注入类似的内容:
@username=" 'blabla' or 1=1 "
@password=" 'blabla' or 1=1 "
所以结果是count(*)将是> 0,因此登录被接受。
答案 1 :(得分:0)
一个简单的测试可以是在输入字段中输入单引号,看看是否收到了mysql错误消息。
如果你得到类似'你的SQL语法错误;查看与您的MySQL服务器版本对应的手册,以便在第1行''''附近使用正确的语法
或者如果你得到一个php / mysql错误(可能通过其格式或常见错误消息以编程方式识别),那么你也知道你有一个注入漏洞。
如果您只是获得通用的“无此用户名”或有效的空结果集,那么您很可能没有注入漏洞。
答案 2 :(得分:0)
许多这些工具都有已知会破坏网页的参数列表。它们在多个请求中关闭这些参数,插入参数:
他们的工具通常会抓取网站以确保他们尽可能多地访问网站。
其中一个棘手的问题是确定何时找到可利用的网页。在某些情况下,Web服务器可能需要更长时间来重新调整页面,或者页面的某些部分可能略有不同。要检查的事项:
说了这么多,如果你真的可以访问网站的源代码,你可以使用静态分析技术来寻找漏洞。