組み込みデバイスでシェルを取得しました/bin/sh
が、非常に制限されています。 、ifconfig
またはiptables
、またはcat
(ただし ではなくcat whateverIwant
、たとえば cat のみ) などの特定の引数を持ついくつかのコマンドしか実行できません。このシェルをバイパスして、任意のコマンドを実行できます。基本的に、任意のコマンド (たとえば )/proc/cpuusage
を実行しようとできますが、それを実行する権限はありません。ping
sh
エラー: 既存のファイルに書き込もうとしています
/bin/sh: cannot create /bin/ping: Text file busy
pingを実行しようとしています
/bin/sh: Access Denied.
つまり、非常に特殊な役に立たないコマンドしか実行できず、ファイルへの書き込みとファイル名の読み取り (ファイルの読み取りではない) も実行できるというシナリオです。ただし、特定のファイル (つまり、使用中のバイナリ) への書き込みはできませんが、新しいファイルへの書き込みは可能です。コードの実行に役立つ唯一のアイデアは、Windows で行われるような何らかの「dll ハイジャック」方法を使用することですが、これが実行可能かどうかはわかりません。
編集: 追加情報 -> デバイスには 2 つの USB ポートがあり、FTP サービスがあります。Telnet を使用して接続します。
答え1
/tmp でコードを実行してみてください。ここでコードを wget し、実行可能にして実行できます。