👻

CpawCTF level1 [Can you execute?] Writeup

2021/10/11に公開

問題

拡張子がないファイルを貰ってこのファイルを実行しろと言われたが、どうしたら実行出来るのだろうか。
この場合、UnixやLinuxのとあるコマンドを使ってファイルの種類を調べて、適切なOSで実行するのが一般的らしいが…

Flagの入手方法

問題文とexec_meという拡張子の無いファイルが与えられます。
問題文にとあるコマンドを使うというヒントが書いてあります。

このとあるコマンドはfileコマンドですかね…?

まず、このファイルをWindows環境で実行しようとしても
実行できません。

なので、言われた通りfileコマンドを使ってみます。
今回はfileコマンドを使うためにdockerコンテナを立てました。

fileコマンドを実行してみると、ELFと表示されたので、
実行可能形式のファイルであることが分かりました。
そして、for GNU/LinuxとあるのでLinux環境であれば実行できるのでしょう。

$ file exec_me
exec_me: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.24, BuildID[sha1]=663a3e0e5a079fddd0de92474688cd6812d3b550, not stripped

dockerでLinux環境は構築していたのでそのまま実行してみるとフラグが取得できました。

$ ./exec_me
GitHubで編集を提案

Discussion