web-dev-qa-db-ja.com

バッファオーバーフローの脆弱性を使用してコードを挿入した後、ルート権限を取得するにはどうすればよいですか?

攻撃者が、ユーザープログラムに悪用可能な脆弱性(バッファオーバーフローなど)を見つけたら、彼の目標がroot権限を獲得することであり、典型的な対策がシステム(ASLR、NXなど)に存在しないと仮定します。

攻撃者がroot権限を獲得できる一般的な方法は何ですか(LinuxおよびWindowsの場合)?

編集1:シンプルで実際の例は本当に役に立ちます。

2
drdot

Rootになるには多くの方法があります。ルートを取得するエクスプロイト、および特権エスカレーションエクスプロイトと組み合わせて、より低い特権でアクセスするエクスプロイトを検討する必要があります。

一般的に必要なのは、ルートとして実行されるサービス、または別の特権アカウントでの悪用です。

Cremefraicheが指摘したように、種類を理解するには、 cve.mitre.org をよく読んでください。

3
Rory Alsop

実際のケースでは、攻撃者は新しい脆弱性をMetasploitのようなツールにパッケージ化すると思います。

このツールは、ターゲットホストでプレゼンスを取得し、特権を昇格させるための完全なフレームワークを提供します。

2
HalfAdd3r

Linuxでroot権限を取得する1つの方法は、set-root-uidプログラムの脆弱性を悪用することです。基本的に、set-root-uidプログラムでは、権限のないユーザーがroot権限でいくつかのタスクを実行できます。 set-root-uidプログラムの例は、パスワード管理用のpasswdプログラムです。 set-root-uidプログラムを利用してroot権限を取得する手順を追った簡単な例は、次の場所にあります。

http://www.cis.syr.edu/~wedu/seed/Labs_12.04/Vulnerability/Buffer_Overflow/

2
ZillGate