私は監査を受けており、権限を拡大できることをクライアントに示す必要がありますが、さまざまな方法で試しましたが、できませんでした。カーネルのバージョンは2.6.32-754.3.5.el6.x86_64です。
私はすでにDirtyCOWを使用してみましたが、問題は常に「sh:拒否されたアクセス権」を取得することです。そして実際、gccにはrootのみの権限もあります。
私は特権のないユーザーです。
私は実際に外に出て、ユーザーが書き込み権限を持っているディレクトリはnoexecとしてマウントされていると思います。つまり、直接何かを実行することはできません。これにもかかわらずシェルスクリプトを実行するには、いつでもbash script.sh
行う場合./script.sh
は、アクセス拒否のエラーで失敗します。実行可能な書き込み可能なディレクトリを探してみてください。何も存在しない場合、生成するコードを実行できないため、gccを使用しても役に立ちません。
DirtyCowを悪用するには、いくつかのシステムコールを呼び出す必要があります。これは、シェルスクリプト内からは実行できません。 Pythonなどの十分に洗練されたスクリプト言語を使用してエクスプロイトを書き直すか、実行する権限を持つバイナリを侵害してシェルコードを実行させる必要があります。攻撃を実行できない場合は、まずバイナリの悪用とシェルコードの開発を実践して方法を学ぶことをお勧めします。そうしないと、これはかなり困難になります。