私は、動的に割り当てられたメモリの上書きによるエラーをキャッチする、新しいメモリ上書きテストツールを設計して、コード化する作業を行っています。メモリ上書き検出ツールの設計
ユーザがxバイトを要求した場合は、x + rバイトを割り当ててください。です。 mprotect
を使用すると、rバイトにアクセスすることができません。そのため、ユーザープログラムがその部分に実行されると、SIGSEGVを生成して停止します。
しかし、上記の場合に問題であるが、mprotect
は、マップされたメモリ(mmap
)とx + Rバイトをマッピングmalloc
要求オーバーヘッドが実質的に存在しているすべての時間を要します。
他の方法をお勧めしますか?このようなツールを使っていれば、コードスニペットを使うことができますか?
P .:誰でも、知っているか、使っているオープンソースツールの設計ドキュメントを共有できますか?
あなたはエフェンスを書き直しているようなサウンドを、おそらくあなたはどのようにして見てみたいですか? – PlasmaHH
@PlasmaHH:私が上記の手順をエフェンスで使用しています。膨大なメモリオーバーヘッドがあります。だから、それを書き直しても意味がない。 – kingsmasher1
valgrind? http://valgrind.org/docs/manual/mc-manual.html – rve