- 博客(20)
- 收藏
- 关注
原创 [湖湘杯 2021 finalPenetratable
通过用户界面越权修改账户信息(将name值base64+URL编码改为admin),成功登录admin账号后发现更多功能。进一步抓包切换至root账号,在文件下载处利用目录穿越读取phpinfo.php文件,发现含有一句话木马。通过MD5解密(密码1q2w3e)并传入cc参数执行代码,但因权限不足无法获取flag。最后利用具有SUID权限的sed命令提权,尝试读取/etc/shadow等敏感文件。
2026-06-09 19:54:48
163
原创 [GHCTF 2025]ezzzz_pickle
pickled = pickle.dumps(a) 里面记录的是反序列化时调用 exec,参数为:"global exc_class ..."内存马的原理就是在web组件或者应用程序中,注册一层访问路由,访问者通过这层路由,来执行我们控制器中的代码。查看源码,有个hint:session_pickle,猜测是python pickle反序列化。__reduce__() -> 反序列化的时候不会正常创建对象,而是执行指定的函数。_get_exc_class_and_code(404)是flask内部方法。
2026-06-02 20:24:26
170
原创 [LitCTF 2025]星愿信箱&easy_signin题解
得到源码中禁止的一些协议ftp://', 'php://', 'zlib://', 'data://', 'glob://', 'phar://', 'ssh2://', 'rar://', 'ogg://', 'expect://测试下是否存在SSTI,发现输入{{7*7}}被过滤了,那就可能是题目中将{{}}进行了过滤。因为这里对读取命令有一点小过滤,所以进行绕过一下:tac /f*尝试读取/etc/passwd,发现可以成功读取到。进行绕过,如果{{被过滤,可以使用{% %}语法。
2026-05-26 20:04:48
24
原创 [GHCTF 2025]upload?SSTI!
当代码运行到render_template_string时,jinja2模板引擎解析文件里的{"g":"__globals__","o":"os","c":"whoami"}表达式,就会把文件里的变量占位符替换成内存中request.args的真实值。这里后端先使用python的.format()把文件内容(file_data)拼接到tmp_str模板字符串中,然后直接丢给Flask的render_template_string()去渲染,导致用户上传的文件内容直接变成了模板的一部分。
2026-05-19 19:50:46
215
原创 [GHCTF 2025]Goph3rrr
判断时否存在ssrf:服务器是否接受了用户输入的 URL/IP,并在后台代替用户去访问该目的地,最终将访问结果(或部分特征)返回给用户。/manage路由:仅允许来自127.0.0.1的POST请求,并执行传入的cmd命令(存在命令注入)/Gopher:接收用户传入的url参数,使用urlparse(),解析后通过curl发起请求。基本格式:URL:gopher://<host>:<port>/<gopher-path>但要注意的是:第一个字符会被忽略不转发,因此用_补偿。请求内容需要进行两次url编码。
2026-05-19 19:47:12
314
原创 VulnHub靶机DC-8
本文记录了从信息收集到提权获取flag的完整渗透测试过程。首先通过nmap扫描发现目标主机192.168.129.148开放80端口,使用sqlmap成功注入并获取数据库d7db中的users表数据。爆破获得john用户密码后登录系统,发现上传漏洞并成功上传webshell。最后利用exim4的提权漏洞(CVE-2016-1531)获取root权限。整个渗透过程涉及信息收集、SQL注入、密码爆破、文件上传、SUID提权等多个环节,最终成功获取系统flag。
2026-04-27 16:26:46
331
原创 VulnHub靶机DC-7
找下这个脚本文件,这个文件的属主是www-data,而我们现在是dc7user权限,需要获得www-data这个权限下才能对其进行修改内容,因为需要利用这个文件进行nc链接。是一个强大的shell接口,可以直接从云服务器命令行管理Drupal,利用drush对admin用户进行密码修改(默认账号是admin)进行nc反弹到kali上,可以看到是www-data权限,可以对backups.sh文件进行修改了。查找信息,它在github上有源码,在config.php文件中得到用户的账号和密码。
2026-04-20 18:08:51
166
原创 第六章 流量分析特征-蚁剑流量分析&waf 上的截获的黑客攻击流量
再过滤一下POST请求:http.request.uri contains "/admin/login.php"&&http.request.method == "POST"过滤请求中有/admin/login.php的流:http.request.uri contains "/admin/login.php"流量太多,过滤一下a.php找一下,然后可以看到关键字符串flag。过滤http流,追踪流查看,这是木马格式,木马的连接密码就是1。先锁定a.php,因为攻击者一直在请求a.php。
2026-04-07 22:56:50
62
原创 第二章日志分析-redis应急响应
通常为-rwxr-xr-x(所有者可读写执行,组和其他用户只可读和执行),但是这个却是-rwxr-rwxr-rwxr。定时任务是黑客常用的持久化攻击手段之一。通过检查当前用户的定时任务,可能会发现黑客设置的反弹 shell 命令。要获得用户名,在ssh中进行查看authorized_keys。使用 crontab -l 命令查看当前用户的定时任务。当时是去查auth.log去了,后来发现方向好像错了。在usr/bin目录下有一个文件的权限很可疑。接着查看日志,有一个./exp.so文件。
2026-03-30 21:25:04
174
原创 第五章 linux实战-黑链
追踪http流看下,用户访问的 URL 是 http://192.168.20.130/index.php/archives/1/,而 Referer 也指向同一个路径,说明这个页面是用户的直接访问目标。Cookie中注入的JavaScript代码通过将poc1.js文件引入到http://192.168.20.130/index.php/archives/1/页面。恶意脚本 poc1.js 的加载地址 http://192.168.20.130/poc1.js 也在同一服务器上,说明是攻击者预先上传的。
2026-03-24 21:27:54
174
原创 [玄武杯 2025]眼见不一定为实
在/secret后面添加一个\x85,nginx会认为它不匹配~* ^/secret/?$和~* ^/secret/,从而进行绕过解析为/secret。nginx在处理URL中字符时,会将其规范化或忽略,用特殊unicode字符可以绕过。~* ^/secret/ 匹配所有/secret/开头的文件,子路径全部被禁止访问。location(匹配网络路径),~*不区分大小写匹配/SECRET也会被匹配。$ 匹配/secert和/secert/地址上出现~* ^/secret/?
2026-03-24 21:18:57
61
原创 easy_tornado
cookie_secret 是一个加密强度足够的随机字符串(推荐长度≥32 字节),作为 HMAC 算法的密钥,用于对 Tornado 生成的安全 Cookie(如 set_secure_cookie)进行签名,同时也可作为框架内其他需要加密 / 签名场景的默认密钥。它能防止cookie伪造,cookie_secret 存储在服务器端,攻击者无法在无密钥的情况下伪造合法的安全 Cookie。这个提示的逻辑是将文件名进行md5加密再加上cookie_secret的值,最终再进行md5值加密。
2026-03-18 21:17:40
208
原创 应急响应- Linux入侵排查&日志分析-mysql应急响应
摘要:本文记录了Linux服务器入侵排查过程。在web目录(/var/www/html)发现木马文件index.php,其创建了后门文件.shell.php,并找到了密码"5d41402abc4b2a76b9719d911017c592"。通过分析可执行文件shell(1).elf,发现黑客服务器IP为10.11.55.21,监听端口3333。在MySQL日志分析中,发现黑客第一次写入的shell特征值"ccfda79e-7aa1-4275-bc26-a6189eb9a20b&
2026-01-21 21:26:03
659
原创 DarkHole1
本文记录了针对目标系统的完整渗透测试过程。首先通过端口扫描发现80和22端口开放,利用目录扫描发现上传页面。通过注册普通用户后修改ID参数越权获取admin权限,发现文件上传功能并成功上传PHP反向shell获取初始访问权限。接着利用环境变量劫持实现从www-data到john用户的提权,最后通过sudo配置漏洞利用Python脚本获得root权限。整个渗透过程涉及信息收集、权限提升、反向shell利用等多种技术,最终成功获取系统最高权限。
2026-01-20 11:01:44
587
原创 CTF+ 反序列化php-ser-libs-level1~9
代码分析:首先从__wakeup()触发,在Show类中__wakeup()中的echo $this->source触发Show类__toString()方法,在Show类中的$this->str->source会触发Test类中的__get()方法,Test类中__get()中$function()触发__invoke(),然后__invoke()调用append()包含flag.php。该题中的__wakeup()方法正是我们需要的入口点,而不是需要绕过的障碍,所以不需要进行绕过wakeup方法。
2025-12-30 21:58:50
333
原创 polar-ctf 简单(web)
查看了一下网页源代码,看到一个js文件,说要点击好多9999次,很显然这是不可能的,看到下面看有一个方法查看 flag,访问proxy.php?进行解密,将jwt中的代码解码然后更换username和对称密钥,然后再进行编码,将重新编码后的代码进行更换,发包,得到falg。抓包看到JWT,拿去解密,需要对称密钥,在kali中利用jwt-cracker进行爆破解密,解密后得知其密钥为SASY。得到账号为P0la2adm1n,登陆进去是一个上传页面,没有过滤,直接上传php的木马文件,然后蚁剑进行连接。
2025-12-30 21:45:50
962
原创 SSTI模板注入
SSTI(服务端模板注入)是通过构造恶意模板输入实现攻击的技术。本文以Flask框架的Jinja2模板引擎为例,详细分析了SSTI利用方法:1)通过__class__、bases__等魔术方法获取对象类信息;2)利用__subclasses()寻找危险类(如os._wrap_close);3)绕过数字过滤(使用算术运算)和引号过滤(使用元组等对象)。文章提供了多个攻击示例,包括读取文件、执行命令等场景,并介绍了使用config、request等内置对象绕过限制的技巧。最后总结了SSTI的基本利用思路
2025-12-22 17:20:21
990
原创 文件上传&文件包含学习
文章摘要: 本文系统分析了两种常见Web安全漏洞:文件上传漏洞和文件包含漏洞。文件上传漏洞主要由于未严格限制文件类型导致攻击者可上传恶意脚本,详细介绍了绕过检测方法(MIME类型、文件后缀等)及利用配置文件(.htaccess)的攻击手段。文件包含漏洞分为本地和远程两种,阐述了通过php://input、日志文件、session文件等实现代码执行的攻击方式,并提供了具体攻击案例。文章还涉及条件竞争漏洞的利用方法,展示了如何通过并发请求获取敏感信息。全文提供了全面的漏洞原理分析及实际攻击技术细节。
2025-12-18 17:46:41
702
原创 php反序列化学习
PHP反序列化漏洞是当应用程序不当处理不可靠来源的序列化数据时产生的安全风险。攻击者可借此执行恶意代码或访问敏感数据。漏洞成因在于可控参数传入unserialize()函数,且与类预定义值无关。关键点包括: 序列化格式标识(o-对象、a-数组等) 魔术方法触发机制(如__wakeup、__destruct等) 属性修饰符影响(public/protected/private) 字符串逃逸利用(通过字符替换制造溢出) 典型攻击链涉及魔术方法串联调用,如__destruct→__call→代码执行。防护需严格
2025-12-16 21:02:37
1009
原创 php反序列化ctfshow入门web254、255、256、257
想要触发eval函数 ,往上找找看,在ctfShowUser类中看到触发点,可以构造恶意的序列化字符串,其中$class属性指向backDoor对象,当$user对象销毁时,会触发__destruct()方法,调用$class->getInfo(),如果$class是backDoor对象,就会执行eval($this->code),执行任意代码。和上题相比,这题多了一个user参数,需要在cookie中进行传参,传递的是序列化字符串,序列化字符串要用url编码,要让isVip的值为true。
2025-12-12 20:12:42
469
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅