## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-CTM1-CVE-2023-32784-KEEPASS-LINUX
# KeePass 2.53< マスターパスワードダンパー PoC (CVE-2023-32784) Linux向け
vdohney の脆弱性発見と責任ある報告、そして Dominik Reichl の素晴らしいオープンソースソフトウェアと迅速な問題認識・修正に感謝します。
## 心配すべきですか ?
おそらく必要ありません。このエクスプロイトは `/proc` 仮想ファイルシステムへのアクセスが必要です。具体的には `proc/[pid]/mem` です。 procのマニュアルによると、このファイルへのアクセスは `ptrace` アクセスモード `PTRACE_MODE_ATTACH_FSCREDS` によって制御され、ほとんどのシステムでは root ユーザーのみに制限されています。
悪意のあるアクターがすでにこれらのファイルにアクセスできる場合、それ以上の大きな懸念があるはずです。
## 修正をお願いします ?
KeePass 2.54 がリリースされ次第(2023年7月頃)、アップデートしてください。これにより問題がある程度緩和されます。(Forum)
## どのように動作しますか ?
まず、Keepassのプロセスメモリをダンプすることから始まります。
デフォルトの動作では、すべての `/proc/<pid>/cmdline` ファイルをスキャンし、コマンドライン引数に `KeePass` というキーワードを含むプロセスの `pid` を保存します。
次に、`/proc/<pid>/maps` 内のメモリマップのうち、ライブラリに直接関連していないもの(つまり、ファイルパスが空のもの)のアドレスを取得します。
そして、`/proc/<pid>/mem` を利用して、それらのマップのメモリをすべてバッファに保存します。これはLinux上の任意のプロセスのメモリをダンプする原始的な動作です。
メモリを解析して、ユーザーがマスターパスワードを入力した際に残った文字列(`•a, ••s, •••s` のような連続した文字列)を探します。最初の文字は欠落しています。その他の機能についてはコードを参照してください。
`gcc dump_pwd.c -o dump` で準備完了です。
