セキュリティコンテストチャレンジブック pwn ASLR回避〜ブルートフォースの誤植
//
詳しい内容は省略
ASLRが有効だと、libc.so.6のアドレスが不定となり、今までの攻撃手段が使えない。しかし、そのランダム性にも規則性があり特に今回で言えば、8桁中6、5、4桁目のみが変化しています。なので、その範囲でアドレスを決め打ちし、呼び出したい関数のアドレスもoffsetを利用して決めてしまいます。あとは、そのアドレスになることを願って、ひたすら同じ入力を繰り返すだけです。
誤植
最後のbreakはif文にあるべきなので、このインデントは間違い。このままだと一回実行しただけで、breakしてしまう。なので以下のように修正