sqlmap:wins系统+python3上安装

 python2和python3互不兼容,SqlMap是基于python2的,所以SqlMap不支持python3,这里使用virtualenvwrapper切换python版本;

一、sqlmap的安装

1. 安装python3,安装成功会自动配置环境变量(个人计算机上wins系统,已经装有python37);

2. 安装python2,安装成功会自动配置环境变量,手动删除环境变量;

3. cmd窗口,输入python检查python版本,显示的是配置了环境变量的python;

1278571-20190918004839020-132329174.png

4. 安装pip;

5. 安装wins版的vitualenvwrapper,命令:pip install install vitualenvwrapper-win;

  由于网络的原因可能出现错误:

  ERROR: Could not find a version that satisfies the requirement virtualenvwrapper-win (from versions: none)
  ERROR: No matching distribution found for virtualenvwrapper-win

  通过镜像的方式解决:pip install virtualenvwrapper-win -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com;

1278571-20190918011323935-882205132.png

6. 配置virtualenvwrapper虚拟环境的环境变量;

  默认创建的虚拟环境位于C:\Users\username\envs,可以通过WORKON_HOME来定制;

  计算机-属性-高级系统设置-环境变量-新建系统变量,变量名:WORKON_HOME,变量值:自定义路径;

1278571-20190918020303613-1960651401.png

7. 创建当前版本虚拟环境:mkvirtualenv noobvir;(可忽略该步骤)

8. 创建指定版本虚拟环境:mkvirtualenv --python=E:\program\python27\python.exe py27;

1278571-20190918013057541-969059472.png

9. 列出所有虚拟环境:workon;

10. 进入虚拟环境:workon py27work;

11. 退出虚拟环境:deactiveate;

12. 删除虚拟环境:rmvirtualenv py27work;

1278571-20190918021407895-934644315.png

13. 下载SqlMap,解压后将其复制到python27的安装目录下;

1278571-20190918022629537-2016462452.png

14. 进入创建的python27的虚拟环境,并切换到sqlmap.py所在的路径,执行python sqlmap.py -h的命令;

  如下图显示,则整个环境成功:

1278571-20190918023249274-201985096.png

sqlmap常用基础命令

 sqlmap Common operation command

1、基本运行步骤

以下命令顺序即为sql注入常见步骤。

sqlmap -u url --dbs #获取数据库
sqlmap -u url --current-user #获取当前用户名称 :
sqlmap -u url --current-db #获取当前数据库名称
sqlmap -u url -D 数据库名 --tables   #列出表名 : 
sqlmap -u url -D 数据库名 -T 表名 --columns #列出字段 
sqlmap -u url -D 数据库名 -T 表名 -C 字段名1,字段名2,…… --dump #获取字段内容

提示:

1、如果是Microsoft Access 可省略前三个步骤 且不需要-D参数

2、获取字段内容时可以省略字段信息直接查询所有字段 使用:

sqlmap -u url -D 数据库名 -T 表名 --dump

2、常见参数及解释

--cookie=cookie的内容        设置cookie 值 通常配合获取数据库使用 
--data        设置 POST 提交的值
-u        指定目标 URL
-b        获取 DBMS banner
--current-db        获取当前数据库
--current-user        获取当前数据库的用户
--tables        获取数据库里所有的表名
--columns        获取表里的所有字段
--dump        获取字段中的内容
--current-user        获取当前用户
-D [数据库名]       指定数据库名
-T  [表名]      指定表名
-C  [字段名]      指定字段名
--string       当查询可用时用来匹配页面中的字符串
--users        枚举所有用户
--passwords      枚举所有用户的密码hsah
--dbs      枚举数据库中的数据库名
-r       指定请求包

GET型注入一般用 sqlmap -u url

POST型注入一般用 sqlmap -u url --data POST参数

如果需要增加cookie或其他请求头 可将请求保存到文本中,如request.txt,则用sqlmap -r request.txt(经常配合burpsuite使用,直接将请求包保存到文件,然后使用sqlmap -r 来进行sql注入)

二、sqlmap常用基础命令

--level 5  探测等级(1~5 默认为1,等级越高Payload越多,速度也比较慢)
--fresh-queries 刷新缓存,避免后续查询数据不更新
--techque=U 使用联合查询,B 布尔查询…… 通常能用U就用U 很快
--random-agent 使用随机ua
--is-dba   判断当前用户是否是管理员权限
--roles    列出数据库管理员角色(仅适用与Oracle数据库)
--referer  HTTP Referer头(伪造HTTP头中的Referer,当--level等级大于等于3时会通过伪造Referer来进行注入)
--sql-shell 运行自定义SQL语句 用法:sqlmap -u url --sql-shell
--os-cmd,--os-shell 运行任意操作系统命令(仅支持MySQL、PostgreSQL、SQL Server)
--file-read 从数据库服务器中读取文件(要知道文件绝对路径)
--file-write "本地文件路径" --file-dest "远程绝对路径"   上传文件到数据库服务器中
--tamper "模块名" bypass绕waf时使用 具体模块可参考书《Web安全攻防 渗透测试实战指南》P40~49页


分享目的仅供大家学习和交流,您必须在下载后24小时内删除! 2. 不得使用于非法商业用途,不得违反国家法律。否则后果自负! 3. 本站提供的源码、模板、插件、软件、等等其他资源,都不包含技术服务请大家谅解!内容投诉
资源库 » sqlmap:wins系统+python3上安装

发表评论

欢迎 访客 发表评论

一个令你着迷的网站!

定制开发 在线客服