2016年11月3日木曜日

Linux でメモリ破壊を見つけるときに有効な方法のメモ randomize_va_space, ALSR

デバッグ時に苦悩、懊悩するのが、メモリ破壊系。
SIGSEGV で core を吐かせる前にやっておくべき設定のメモ。
この記事に何度助けられたことか。

参考: メモリ破壊の現場を見つけるTips - nariのぶろぐ

プログラム実行時のアドレスを固定。
これやったあとも原因の特定に時間がかかってしまうんだが…。
ASLR とか、この記事読んで初めて知った。

# echo 0 > /proc/sys/kernel/randomize_va_space

あと、バッファオーバーフロー系は、gcc のコンパイルオプション (下記) で対応。

参考: IPA ISEC セキュア・プログラミング講座:C/C++言語編 第10章 著名な脆弱性対策:バッファオーバーフロー: #5 運用環境における防御

-fstack-protector-all

● Linux, プログラム, 実行, program, run, アドレス, address, 固定, fix, randomize_va_space, デバッグ, debug, メモリ, 破壊, memory

0 件のコメント: