c2f058cb
よく分からないなりにも、なんとなく仕組みが分かってきました。
でも、手の込んだ攻撃ですね。本当に実現できるのでしょうか?

単純な例を考えよう。Wordに必要以上に大きなファイルや、中身がWordでは無いデータを開かせると不正終了するだろう。このようなイメージだ。
Webサーバのhttpdというプロセスに、不正なものを送り込めば、同じようにhttpdが不正終了してしまうから、サービスをダウンさせることができる。
sef2

なるほど。
不正終了させる手口はなんとなくイメージできました。
でも、情報流出させるなどの込み入った処理をさせるのは大変ですよね。
確かにそう。
「戻り先アドレス」の場所に、ピタリとあふれさせることは不可能ではないかと思ってしまう。
しかし、ほんとんどの場合は、攻撃ツールによるものだ。
ApacheやJavaやOfficeなどの脆弱性が見つかり、それを攻撃するバッファオーバフローのツールが出回ると、一気に被害が増える。
sef1 
でも、ApacheやJavaやOfficeの脆弱性があっても、ApacheやJava上やOffice上での不正実行ですよね。
そうであれば、大した問題にならないのでは?
それは違う。
その脆弱性を突いて、任意のプログラムを実行させるのである。
具体的には、プログラムの戻りアドレスまで上書きさせて、違う場所に戻らせる。そこに、任意のプログラムを実行させる命令を書いておけば、何でもできてしまう。つまり、コンピュータが乗っ取られたのと同然の状態になる。