2019 CSAW CTF 复赛 WriteUp
🏆 决赛概况
时间与地点:决赛于 2019 年 11 月 6日 至 8 日在美国纽约布鲁克林举行。此外,在法国、印度、以色列、阿联酋和墨西哥也设有同步进行的国际赛区
赛制:采用 Jeopardy 解题模式
规模:全球共 1225 支队伍参与选拔,最终 44 支队伍进入全球总决赛。仅美加赛区就迎来了 66 支决赛队伍
Web
Unagi(XXE 注入 + UTF-16 编码绕过 + intro 字段绕过)
打开是正常的页面

Upload 页面提供一个 XML 用户格式样例

普通的 XXE 会被拦截
1 |
|
我们可以使用 UTF-16 编码 + intro 字段绕过
username 或 email 在数据库或业务逻辑中通常有严格的长度限制(如 VARCHAR(20)),而 intro 通常允许长文本,能容纳完整的文件内容
1 |
|
然后转码
1 | # Get-Content -Path .\xxe.xml -Encoding UTF8:以 UTF-8 编码读取源文件 xxe.xml |
