SQLMAP 测试sql注入

Posted

技术标签:

【中文标题】SQLMAP 测试sql注入【英文标题】:SQLMAP to test sql injection 【发布时间】:2013-09-10 13:14:47 【问题描述】:

我运行 SQLMAP 来测试其中一个站点的 SQL 注入,并获得了以下信息。

sqlmap identified the following injection points with a total of 78 HTTP(s) requests:
---
Place: GET
Parameter: id
    Type: boolean-based blind
    Title: AND boolean-based blind - WHERE or HAVING clause
    Payload: id=666' AND 1737=1737 AND 'pQMi'='pQMi
---
web server operating system: Windows Vista
web application technology: ASP.NET, ASP.NET 1.1.4322, Microsoft IIS 7.0
back-end DBMS: Microsoft SQL Server 2005

我不确定,这个网站在多大程度上容易受到这么多信息的影响?

【问题讨论】:

【参考方案1】:

第一个 sqlmap 仅在 78 个请求中发现了漏洞,这意味着很快就会发现,基于注入的攻击是 2013 年的最大威胁。有了这些信息,唯一的限制是数据库管理员设置的权限,不同的 SQL 语法,以及攻击者的想象力。 提取数据和/或破坏数据可能是微不足道的。

来自 OWASP:

SQL 注入已成为数据库驱动网站的常见问题。该漏洞很容易被检测到,也很容易被利用,因此,任何网站或软件包,即使是最小的用户群也可能会受到此类攻击。

本质上,攻击是通过将元字符放入数据输入然后将 SQL 命令放入控制平面中来完成的,这在以前并不存在。这个缺陷取决于 SQL 没有真正区分控制平面和数据平面这一事实。

结果的底部显示了其他可能被利用的信息,这些信息可能允许更有针对性的攻击。然后可以使用诸如Metasploit(打包在 SQLMAP 中)之类的程序来针对 Microsoft SQL Server 2005、Windows Vista 和/或 Microsoft IIS 7.0 中的漏洞。如果攻击者发现由于他们在 sql server 中的访问级别而无法获得他们想要的东西,他们可以利用 MSSQL 2005 来提升用户权限。任何可以获取的信息都可以用于不同的利用路径来获取访问/更改您的数据。

More Information about the type of problem you have

2013 top threats by owasp

SQL Server 2005 Vulnerabilities

IIS 7.0 Vulnerabilities

【讨论】:

【参考方案2】:

首先服务器通过异常发送信息,关于

1)服务器类型
2)应用服务器版本
3)数据库软件及版本
4)最重要的是可以通过传递恶意字符串来操纵sql。并且容易受到 SQL 盲注的影响。

验证和清理请求参数,并使用参数化的 sql。

【讨论】:

【参考方案3】:

由于单个 SQL 注入的可能性,您的整个数据库都会变得容易受到攻击。如果您的表中经过谨慎尝试的数据也可以删除,其他攻击可能是随机数据更新,查询默认情况下不应访问的信息。 Sql 注入有可能造成比 XSS 攻击更大的损害。所以在任何情况下都应该避免。

从好的方面来说,这种攻击是最容易避免的。只有您应该谨慎地避免创建/使用动态 SQL 查询(永远)。最佳做法是使用存储过程,并且任何输入都应作为参数传递给过程。

这是一个链接,您应该参考此链接了解更多详细信息,请访问此MSDN link

【讨论】:

【参考方案4】:

此信息告诉您,该网站可能容易受到盲目 sql 注入的影响。 SQL 盲注入使您能够从数据库中猜测有效数据。您实际上并没有得到任何响应,但是当您输入无效数据时,响应将不同于您输入有效数据时的响应。例如。如果数据无效,您将收到页面未找到消息。可以逐个字符猜测,所以这仍然是一个危险的漏洞。

【讨论】:

以上是关于SQLMAP 测试sql注入的主要内容,如果未能解决你的问题,请参考以下文章

sqlmap怎么注入sql server

SQL注入测试神器sqlmap

安全测试入门——sqlmap的简易使用

安全测试入门——sqlmap的简易使用

sql注入工具之 sqlmap的基本使用

SQL注入神器——sqlmap