/bin/sh に権限がない場合にコードを実行する

/bin/sh に権限がない場合にコードを実行する

組み込みデバイスでシェルを取得しました/bin/shが、非常に制限されています。 、ifconfigまたはiptables、またはcat(ただし ではなくcat whateverIwant、たとえば cat のみ) などの特定の引数を持ついくつかのコマンドしか実行できません。このシェルをバイパスして、任意のコマンドを実行できます。基本的に、任意のコマンド (たとえば )/proc/cpuusageを実行しようとできますが、それを実行する権限はありません。pingsh

エラー: 既存のファイルに書き込もうとしています

/bin/sh: cannot create /bin/ping: Text file busy

pingを実行しようとしています

/bin/sh: Access Denied.

つまり、非常に特殊な役に立たないコマンドしか実行できず、ファイルへの書き込みとファイル名の読み取り (ファイルの読み取りではない) も実行できるというシナリオです。ただし、特定のファイル (つまり、使用中のバイナリ) への書き込みはできませんが、新しいファイルへの書き込みは可能です。コードの実行に役立つ唯一のアイデアは、Windows で行われるような何らかの「dll ハイジャック」方法を使用することですが、これが実行可能かどうかはわかりません。

編集: 追加情報 -> デバイスには 2 つの USB ポートがあり、FTP サービスがあります。Telnet を使用して接続します。

答え1

/tmp でコードを実行してみてください。ここでコードを wget し、実行可能にして実行できます。

関連情報