sqlmap常用参数和原理 |
您所在的位置:网站首页 › sqlmap执行命令-ol-she › sqlmap常用参数和原理 |
一、原理:
SQLmap是一个自动化的SQL注入工具,可用于检测和利用Web应用程序中的SQL注入漏洞。 其原理是通过构造恶意的SQL查询语句,利用应用程序的漏洞来执行SQL注入攻击。具体一点就是,SQLmap首先分析目标网站的结构和参数,尝试检测是否存在SQL注入漏洞。如果存在漏洞,它将尝试利用不同的技术(如布尔盲注、时间盲注、联合查询注入等)来获取数据或者直接对数据库进行修改。 SQLmap的运行原理主要包括以下几个步骤:1、 识别目标网站:SQLmap会对目标网站进行扫描,识别是否存在注入漏洞。 2、获取数据结构:如果目标网站存在注入漏洞,SQLmap会获取数据库的数据结构,包括表名、列名、数据类型等。 3、执行注入攻击:SQLmap会使用不同的注入技术来执行攻击,包括基于错误的注入、基于布尔盲注、基于时间盲注、基于联合查询注入等。 4、获取数据或者修改数据:一旦注入成功,SQLmap可以获取数据库中的数据,或者修改数据库中的数据。 注意:使用SQLmap进行SQL注入攻击是非法的行为,仅限于授权的渗透测试和安全研究活动。 二、常用的一些选项:-d 链接目标后端数据库(不利用sql注入) -p 指定注入点 -u 指定url -m 指定txt文件,批量扫描 -r post数据包注入 -x 站点地图,提交给sql一个xml文件 -c 把使用的命令写进一个文件中,让sqlmap执行文件中的命令,可以用 --save 命令写入配置 -r 加载外部请求包 --OS-shell 与系统shell交互 --OS-cmd 使用系统命令 --sql-shell 执行sql命令 --dbs 列所有出数据库 --tables 列出数据库中的表 --cookie 设置cookie值 --current-db 获取当前库名 --current-user 获取当前用户名 --tamper-TAMPER 使用给定的脚本篡改数据 --proxy-PROXY 使用http代理链接到目标URL --data-DATA 通过post发送数据字符串 -v REVBOSE信息级别: 0:只显示python错误以及严重的信息。 1:只显示sqlmap的基本信息,如版本号和版权信息等。(默认) 2:显示sqlmap的基本信息和调试信息,如 SQL 查询语句、HTTP 请求头和响应头等。 3:显示第二级别的信息,并且在请求和响应中包含更多的数据,如响应正文、cookies、headers 等。 4:显示第三级别的信息,并且在响应正文中包含所有的数据库查询结果。 5:显示第四级别的信息,并且在每个 HTTP 请求和响应中包含完整的数据 6:显示所有的信息,包括第五级别的信息和更多的调试信息,如 HTTP 请求体中的参数、发送的 SQL 查询语句等。 -risk-RISK 执行的测试风险级别: 1:仅对目标进行最基本的 SQL 注入测试,不包括时间基注入、布尔盲注入等高级技术,适用于对目标进行初步测试,快速了解其是否存在 SQL 注入漏洞的情况。 2:对目标进行深度 SQL 注入测试,包括时间基注入、布尔盲注入等高级技术,适用于对目标进行详细的测试,发现可能存在的 SQL 注入漏洞。 3:与级别 2 相同,但同时还会尝试进行更加敏感和危险的测试,如 SQL 查询文件系统、SQL shell 等,适用于对目标进行极其详细的测试,发现潜在的高级 SQL 注入漏洞。 -level-LEVEL 执行测试的等级: 1:仅进行最基本的 SQL 注入测试,不包括时间基注入、布尔盲注入等高级技术,适用于对目标进行初步测试,快速了解其是否存在 SQL 注入漏洞的情况。 2:对目标进行常见的 SQL 注入测试,包括时间基注入、布尔盲注入等基本技术,适用于对目标进行基本测试,发现可能存在的 SQL 注入漏洞。 3:与级别 2 相同,但同时还会尝试使用一些额外的 SQL 注入测试技术,如错误信息注入、堆叠查询等,适用于对目标进行详细的测试,发现潜在的高级 SQL 注入漏洞。 4:与级别 3 相同,但同时还会尝试使用更多的高级 SQL 注入测试技术,如基于时间的盲注入、基于报错的注入等,适用于对目标进行较为深入的测试,发现更难以利用的 SQL 注入漏洞。 5:与级别 4 相同,但同时还会尝试使用更多的高级 SQL 注入测试技术,如基于布尔的盲注入、联合查询注入等,适用于对目标进行最为深入和全面的测试,发现所有可能存在的 SQL 注入漏洞。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |