CTFが開催されていました。個人チームで参戦して15位取ったのでかけるものを書く。1]discordに入れたら勝ち。2999つなぐとbashが出てくる。機能が制限されている、というか/binにlsしかない。lib64したがって縛り状態で/flagを出すことになる。bashにはbuiltinでreadがあるので、これでなんとかできる。hdd.http://114.177.250.4:9999/cgi-bin/viewer.plperl製のblogが見える。アクセスしたらソースが落ちてきた。folderクエリでディレクトリトラバーサルができるようなのですると、/flagがあることがわかる。つないでも何も見えない。そこで、perlのopenの特性を利用する。つけると実行ファイルの実行結果を読み込んでくれるようになる。executableである。https://drive.google.com/file/d/1EHUY2UDK8BGbs-TaSrXs7un1m4Suz7bW/view?usp=sharing竸プロチックなwebサーバが舞台。試しにシェルを動かしてみる。-1;}ちゃんと(?)helloがきた。あとは環境とかいろいろ調べてみていた。(というかdocker-compose?のNAPT周りがよくわかんなかったのでヒントとソースと勘でなんとかした)まずはmysqlのパスワードを取らなきゃいけないのだが、提出コードを管理しているtftpサーバのコードが気になる。nil}ディレクトリトラバーサルが実行できそうである。backendは全て同じホストで動いていること、実行時にソースがなくなっていることから、ftpサーバからapiのバイナリを拾って強引に吐かせることによってmysqlのpass取得を目指す。Computer.ATTACK.試しに自身をhackさせてみた。webページを読んでtracerouteしてnmapをしている(nmapはしていない)ようだ。(勘で治したので理屈は知らん)続いて自ホスト向けに飛ばさせてパケットを見ると、wgetで/index.htmlに、curlで/test.php?cmd=shutdownにアクセスしていることがわかる。'\e(0'fiここで時間切れ。コメントをキャンセルメールアドレスが公開されることはありません。WordPress%d人のブロガーが「いいね」をつけました。