bugku成绩单writeup(手动注入、sqlmap注入、python盲注详解)

本文介绍了SQL注入的三种方法:手动注入、sqlmap工具使用和Python盲注。通过手动注入,揭示了MySQL的系统配置和信息数据库的使用,逐步暴露数据库名、表名和字段名。接着,详细演示了sqlmap如何进行注入攻击,爆库、爆表和爆字段。最后,解释了Python盲注的基本原理和脚本应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

知识点:SQL注入,三种解法手动注入、sqlmap注入、python盲注

  • 一、手动注入

手动注入前先理解msysql的系统配置

select 1,database(),version();//查询数据库类型和版本

select * from information_schema.schemata //数据库下的所有库 schema_name='mysql'

information_schema信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息,SCHEMATA表:提供了当前mysql实例中所有数据库的信息

SELECT * FROM information_schema.TABLES where table_schema='mysql'//数据库mysql用户下的所有表table_name

SELECT * FROM information_schema.COLUMNS where table_schema='mysql' and table_name='db' ;//条件要选用户 table_schema ,表名table_name

select USER from mysql.db //查询字段值

 

1、找到sql注入点

输入1,2,3分别能查到1,2,3号学生的成绩

输入1'返回异常,输入1'--+返回异常,输入1' #或者1’-- +返回正常,看来过滤了--+

(#和--+均为注释)

观察,表貌似有四列(名字,Math,English,Chinese),

 

输入1' order by 4#返回正常,输入1' order by 5#返回异常,看来的确是4列。

2、接下来就开始暴库名、表名、字段名

尝试联合查询,记得把前面的查询数据置空,写成id=0(0或者很大的数都可以)即可,显示正常,说明确确实实存在这四列数据 

我们先手遍历一遍 id=0' union select 1,2,3,4#

 

 

发现有四个表且都有回显

开始爆破

  1. 首先爆库名:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值