web-dev-qa-db-ja.com

以前に回答した「Apache Shellからrootへのエスカレーション」へのフォローアップ

私は数多くの質問 上記と同様 をルートの特権への特権の昇格に関連する回答で見ました。 silverlightfoxの回答と例は、より明確なものの1つです。

このエクスプロイトをエミュレートしようとしているときに私が抱えている問題は、VM Linux Red Hat 2.4.xxのインストールで、ソースコードをリストするさまざまなエクスプロイトを使用して、ボックスは、コンパイル(gccがインストールされている)またはバイナリファイルの実行を許可しません。

私がここからかなり外れているのでない限り、コード化されたソース(silverlightfoxによってリストされています)およびネット全体で見つかったその他(エクスプロイトdbなど)をコンパイルして、ターゲットマシンで実行する必要があります。

取得した非ルートアクセス(ユーザー名とパスワードの検索、リモートエクスプロイトなど)でバイナリファイルのコンパイルまたは実行が許可されない場合、ターゲットマシンのソースコードを「悪用」するために他にどのようなオプションがありますか? metasploitが自動化を処理すると思いますが、バイナリファイルをターゲットマシンで実行することについて見た限りの情報により、何か間違っていると思います。

1
jayho

特にWebサーバーでは、貴重な情報がWebルートまたはWebアプリケーションを介してアクセス可能なデータベースにあるため、ルートを取得する必要はありません。これは、最初の脆弱性にパッチが適用された場合に、アクセスを維持するには、Webshel​​lなどの低い権限のバックドアで十分であることも意味します。

Root権限を取得したいが、カーネルのエクスプロイトに依存して特権を昇格できない場合は、ローカルプロセスを悪用する必要があります。最初に、setuidファイル、cronjobs、書き込み可能なディレクトリなどを調べます。次のスクリプトは、初期のデータ収集の大部分を自動化するのに非常に便利です。 http://pentestmonkey.net/tools/audit/unix-privesc-check

1
wireghoul

コードをコンパイルして実行するためにrootである必要はありません。おそらく、ユーザーの構成ができないように、構成によって必要なコンパイルツールチェーンへのアクセスが制限されています。

攻撃者は、必要なバイナリをプリコンパイルするか、プリコンパイルされたコンパイラまたは独自のインタプリタをシステムにドロップすることにより、これを回避できます。

システム、ユーザー環境、ワークフローの実行に必要なツール、およびローカルのアクセス許可がどのように影響するかを理解することから始めるのが最善です。 [〜#〜]その後[〜#〜]エクスプロイトの仕組みを理解することに移ります。基本を理解していなければ、それは役に立たないからです。

1
tylerl