- BeginCTF官方WP
- Pwn
- one_byte
- unhappy
- gift_rop
- no_money
- mini_ema1l
- Aladdin
- Cat
- zeheap
- ezpwn
- qwtp
- Web
- POPgadget.
- readbooks
- pickelshop
- zupload
- zupload-pro(revenge)
- 预期解(revenge解法)
- 非预期解
- zupload-pro-plus(包含enhanced)
- zupload-pro-plus-max
- zupload-pro-plus-max-ultra
- zupload-pro-plus-max-ultra-premium
- king
- Sql教学局
- Crypto
- fake_n
- baby_classic
- 我玩青水的
- begin_rsa
- OEIS2
- baph
- ezcry
- Reverse
BeginCTF官方WP
BeginCTF官方WP
2024年2月10日修改
本文讨论了BeginCTF比赛的官方WP,涵盖Pwn、Web、Crypto、Reverse等多个类别题目,介绍了各题漏洞点、解题思路及详细步骤。关键要点包括:
1.
Pwn题目:
◦
one_byte:利用[libc.so](libc.so).6重新执行main函数,循环读取文件逐字节输出flag。
◦
unhappy:考察过滤字符的shellcode和suid提权,可构造read二次读入shellcode或直接写orw。
◦
gift_rop:静态编译程序,/bin/sh在.data段,关闭标准输出,通过ROP利用。
2.
Web题目:
◦
POPgadget:构造特定对象实现命令执行。
◦
readbooks:通过构造url获取flag文件名,进而拿到flag。
◦
pickelshop:利用反序列化漏洞执行命令。
3.
Crypto题目:
◦
fake_n:从17个素数中挑出混入的2个素数,其余相乘得真n后解密。
◦
baby_classic:化简矩阵操作,利用sage求解矩阵得到plaintext并md5加密。
4.
Reverse题目:
◦
红白机:翻译6502cpu汇编代码,初始化内存后得出flag。
◦
Xor:分析仿轮式加密算法,逆推得出flag。
◦
俄语学习:动态调试获取加密盒子和相关字符串,用多种方法解出flag。
Pwn
one_byte
这个题目出出来是作为签到题的,考察的点是利用libc.so.6重新执行main函数。
可以看到main函数的返回地址是__libc_start_call_main+128。
附件不支持打印