chroot
このオプションを使用してFTPサーバーを構成すると(vsftpd
実行されていない)、インターネット上の人々は書き込み可能なFTPルートを持つことがどれほど安全でないかを聞きます。
なぜ悪いのか説明がありませんか?
誰かがこのトピックをさらに拡張し、リスクが何であるか、chrootディレクトリに書き込む方法を説明できますか?権限のないユーザー悪用される可能性がありますか?
答え1
この攻撃は口語で「ハウリングビースト」攻撃として知られており、以下の勧告でこれに関する詳細を読むことができます。
この機能を使用するには、chroot(2)
FTPサーバー〜しなければならないroot権限があります。その後、権限のないクライアントは、/etc
chrootサーバープロセス内で(または)生成されるファイルを要求します。/lib
これらのディレクトリには通常、動的にロードされたライブラリとDNSリゾルバ、ユーザー/グループ名の検索、など.クライアントが生成したファイルは次のとおりです。いいえ内部に本物 /etc/
そして/lib
システムのディレクトリ -しかし、 以内に、chroot
このクライアントによって生成されたファイルそれは真実です。。
したがって、悪意のあるクライアントはプロセスをchrootするFTPサーバーに接続し、そのchroot内に必要なディレクトリ//lib
ファイルを生成し/etc
、いくつかの動的ライブラリの悪意のあるコピーをアップロードしてから、サーバーに特定のタスクを実行するように要求して使用を開始します。新しい動的ライブラリ(通常、ユーザー/グループ検索などのシステム機能を使用するディレクトリのリスト)。サーバープロセスは悪意のあるライブラリを実行し、そしてサーバーがそれでもrootアクセス権があるかもしれません、悪意のあるライブラリコードは、必要なすべてのタスクを実行するための追加のアクセス権を持つ可能性があります。
/etc
そうでは/lib
ありませんのでご注意くださいただディレクトリを見てください。問題は、システムライブラリがファイルの場所を想定していることです。したがって、さまざまなプラットフォームには保護する追加のディレクトリがある可能性があります。
/etc/
たとえば、ProFTPD はこのようなディレクトリの作成を禁止します。/lib
ルートするとき、これらの攻撃を軽減します。