プログラムが/proc/self/memにアクセスする必要がある理由は何ですか?

プログラムが/proc/self/memにアクセスする必要がある理由は何ですか?

LinuxのFirefoxとChromiumブラウザの両方が読み取り用にファイルを開くことがわかりました/proc/self/mem。私が知っている限り、私のシステムの他のプログラムはこのファイルを読みません。

/proc/self/memマルウェアでメモリを上書きし、プログラムの実行を傍受する無限の特権上昇攻撃のベクトルとして悪名高い。

ブラウザは最も公開されているプログラムであり、インターネットから信頼できない入力を受け取るため、最大の攻撃面を持つため、これは悲しいことです。

最新のブラウザで読む必要がある理由はありますか/proc/self/mem

ベストアンサー1

FirefoxやChromiumなどのブラウザは、特に複数のプロセスを使用しています。減らす彼らの攻撃の表面。複数のプロセスに分割することの1つの側面はエラー処理です。特定のプロセスで重大なエラーが発生した場合は、他のプロセスで処理することをお勧めします(衝突したプロセスは自己分析を許可する状態ではない可能性があるため、プロセスの競合を防ぐため)。

したがって、ブラウザは/proc/self/memハンドルを開いて渡すことができ、競合処理プロセスが競合プロセスのメモリを読み取るか、またはプロファイリングプロセスがプロファイリングされているプロセスのメモリを読み取ることができます。これは特にスタック解除に使用されます。詳細についてはPerfettoドキュメント(Chromiumで使用されるデコイラーです。)

おすすめ記事