0
A
回答
1
通常,可以对SQL代码结构进行有根据的猜测,以允许注入。
例如,对于一个脆弱的用户名/密码,验证码,这将是在大多数情况下是这样的:
select count(*) from users where [email protected] and [email protected];
所以黑客会尝试注入是这样的:
@username=" 'blabla' or 1=1 "
@password=" 'blabla' or 1=1 "
所以结果将是计数(*)将> 0,因此登录接受。
0
一个简单的测试可以是在输入字段中放一个单引号,然后查看是否收到mysql错误消息。
如果您得到类似'您的SQL语法错误;检查与您的MySQL服务器版本相对应的手册,在第1行''''附近使用正确的语法'
或者如果您得到一个php/mysql错误(可能通过其格式编程识别常见的错误信息),那么你也知道你有一个注入漏洞。
如果你只是得到一个通用的“没有这样的用户名”或有效的空结果集,那么你很可能没有注入漏洞。
0
很多这些工具都有已知会中断网页的参数列表。他们在多个requestsm解雇这些参数关中插入参数:
- 表单字段
- 的GET URL
- HTTP头
他们的工具通常会蜘蛛网站,以确保它们打尽可能多的网站。
其中一个棘手的问题是确定您何时找到可利用的网页。在某些情况下,Web服务器可能需要较长时间才能重新启动页面,或者页面的某些部分可能会略有不同。要检查的事项:
- HTTP响应代码(500服务器错误可能意味着SQL无效)
- 尺寸返回页面
- 采取的页面时返回
说了这么多,如果您实际上有权访问网站的源代码,则可以使用静态分析技术来查找漏洞。
相关问题
- 1. SQL注入漏洞
- 2. Sql注入漏洞
- 3. SQL注入新漏洞
- 4. PHP Sql注入漏洞
- 5. SQL查询中是否存在sprintf('%d',$ tainted)漏洞?
- 6. 查找安全漏洞 - 真正的SQL注入还是误报?
- 7. SQL注入漏洞的奇数格式?
- 8. 如何修复片段注入漏洞
- 9. 电子邮件正文中是否存在任何注入漏洞?
- 10. 这段代码如何引入SQL注入漏洞?
- 11. JSON中是否有任何注入漏洞?
- 12. 现在已知的SQL注入漏洞是什么?
- 13. Openquery SQL如何检查是否存在?
- 14. 我的代码中是否存在这个sql漏洞?
- 15. SQL Server vs MySQL - 经典ASP中的SQL注入漏洞
- 16. 嵌入式SQL,如何检查是否存在记录
- 17. glibc fnmatch漏洞:如何揭露漏洞?
- 18. Endeca中是否存在任何漏洞或设施?
- 19. Azure:Web应用程序之间是否存在任何漏洞?
- 20. 修复片段注入漏洞
- 21. Joomla 1.5/2.5/3的MySQL注入漏洞
- 22. 安全漏洞 - veracode报告 - crlf注入
- 23. Java中的命令注入漏洞
- 24. 这些SQL查询中是否存在SQL注入攻击?
- 25. 检查是否存在注册表项
- 26. aspnet应用程序与IBM appcan之间的SQL注入漏洞
- 27. SQL注入漏洞增加更多的平衡?
- 28. 使用int参数的SQL注入漏洞使用int参数
- 29. MS SQL Server检查是否存在已注册的程序集
- 30. 如何检查SQL Azure中是否存在存储过程?
但是漏洞发现工具(不是人)不能直接运行SQL,它只能向Web服务器发送请求,如何知道注入是否失败? – jxu 2011-02-08 07:22:19
黑客必须具有创造性。例如,如果在响应页面中不再有“登录”文本框,则表示黑客已成功。“漏洞发现工具”的工作原理类似于黑客,并且无法覆盖所有场景。 – 2011-02-08 07:31:35
但作为一个工具,它永远不知道一个页面是否是一个登录页面。 – jxu 2011-02-08 07:32:12