- 博客(8)
- 收藏
- 关注
原创 [鹤城杯 2021]EasyP NSSCTF题解(详解版)
不过要注意这里访问的并不是utils.php,执行的文件依旧是index.php,utils.php是作为路径信息传递过去的show_source还是index.php页面的参数。show[source=1即可,因为在php中遇到非法字符会统一将其改写成_,但"["和别的字符的改写机制还不太一样。代码中对utils.php和show_source关键字做了过滤,那我们大胆猜测utils.php文件里有重要的信息,先想办法看一下utils.php文件的信息。不是以/结尾的,因此绕过此正则。
2026-04-22 15:42:28
371
原创 Openssl心脏出血漏洞复现(菜鸟版)
OpenSSL 1.0.1 版本(低于1.0.1g)中的(1)TLS和(2)DTLS 实现在处理 Heartbeat Extension 数据包时存在不当,使得远程攻击者能够通过精心构造的数据包触发缓冲区过度读取,从而从进程内存中获取敏感信息(如读取私钥)。主包用的是搭建在Windows上的Ubuntu虚拟机,没有自带的msfconsole,同样问题的宝子们可以参考这个搭建msfconsole的过程(过程放在最后)是OpenSSL在实现TLS/DTLS协议的Heartbeat心跳扩展时,缺乏关键的。
2026-04-20 07:48:29
384
原创 [极客大挑战 2019]HardSQL1 BUUCTF 做题记录
输入用户名和密码,使用常见的注入语句,被拦了联合查询也被拦,感觉是有黑名单了,常见的语句关键词都被拦掉了,进burp爆破一下看看哪些还能用。SQL字典地址通过观察返回内容发现只有返回长度804的没有被屏蔽还有一个比较别致的1031,打开Response看一下诶嘿,这里报错了,那应该可以通过报错来进行注入?其实到这里知识储备就不够了,去看了别人的wp,发现确实是通过报错泄露表明等信息,使用的函数主要是两个。
2026-04-19 17:33:06
263
原创 [ZJCTF 2019]NiZhuanSiWei1 Writeup做题记录
但是反序列化的前提是构造出对象,在这段代码中是没有关于对象的定义的。并且,echo $password这里将对象进行输出,会调用这个对象的。最近天天在刷Web题,掌握了一些技巧但是思路还没有打开,碰见题了经常还是不知道怎么切入,还是些点Writeup记录一下加深印象。不能直接传useless.php,那样include函数会直接执行useless.php,很可能没有输出。中不能出现“flag”字符串,没关系,我们要先查看useless.php的内容。函数,因此一定还有一段能够构造反序列化的代码没有显示。
2026-04-19 14:10:12
235
原创 Apache 换行解析漏洞复现(菜鸟记录版)
访问127.0.0.1:8080端口,发现一个文件上传页面(推荐使用Firefox,我的edge访问127.0.0.1抓不到包,也可以换端口试试,在burp的设置里和代理里加一个8081端口)个人理解是,正常网站是不会允许上传.php后缀的文件的,但是在文件名后加一个%0a就能绕过黑名单,但是后端在检测到.php%0a后缀仍然会将其当作php执行。这个文件的作用是,如果它被当作PHP脚本成功执行,将会显示当前PHP环境的大量信息,这就能直观地证明我们成功利用了漏洞。2、新建一个php文件,在其中写上<?
2026-04-18 21:25:22
513
原创 栈迁移详解 例题buuctf ciscn_2019_es_21
ret的过程中随着移动到ebp-38的位置,假如我将shell的函数在第二次read时写入vul()函数的局部变量区域,那么程序就可以成功执行system的代码了;这么说有点抽象,放个我自己做的图;由这张图我们可以看出,当我们可以读入0x30个字节但字符串从EBP-0x28的位置开始填充的时候,我们只能覆盖掉调用者EBP和返回地址,这个时候想要在栈区放一些我们自己构造的ROP链或者shellcode是放不下的。看下图,这时候出现了栈空间不够的问题,只能覆盖8个字节,即ebp和返回地址;执行前后示意图如下;
2026-01-27 21:55:34
379
原创 BUUCTF not_the_same_3dsctf_2016 1题解菜鸟版
就是从flag.txt里读取了数据,将数据读取到fl4g这个变量里。①通过栈溢出让函数返回到get_secret()函数,程序执行完get_secret()函数后,fl4g里就存了我们想要的值。②再次运行main,这次要先栈溢出之后跳转到一个有输出功能的函数里,把fl4g当作参数传给这个输出函数,获得flag。write函数里三个参数,第一个填1即可输出到终端,第二个就是fl4g,第三个是写入长度,随便写个大点的数就行。点开发现是get_secret()函数里的,看看这个函数里都有什么。
2025-12-21 19:23:32
221
原创 BUUCTF babyrop1 新手菜鸟版writeup
摘要:本文分享了一个栈溢出漏洞利用的过程。通过分析二进制文件发现没有栈保护,利用read函数构造payload控制程序流程。首先发送特定payload触发漏洞,然后利用write函数泄露内存地址计算libc偏移。最后通过偏移定位system函数和"/bin/sh"字符串地址,构造最终payload获取shell权限。整个过程涉及函数地址泄露、偏移计算和ROP链构造等技术要点,最终成功获取flag。
2025-12-21 13:40:15
436
空空如也
大一学生想问一下这个是为什么
2022-10-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅