中村和志@神戸です。ほとんど新城さんが語ってくれているけど、補足。

In article <YAS.03Aug20181951@kirk.is.tsukuba.ac.jp>
>> そうですね。作成者の意図…とは異なりますが。
これでも、十分意図と言うか、予測の範囲内です。

>それは、擬態かもしれませんよ。Worm のふりして、実は、DoS 攻
>撃プログラムだったりして。
Worm, Troyan, (狭義の)virusというのは感染形態。
DoS,DDoS,sniffer,spyware,改竄,LogCleaner,etc.というのは感染に成功した
後のactionに依る分類。
なので、Dos攻撃を仕掛けるwormというのも有り得るかと。

>buffer overrun 攻撃は、攻撃が成功した時には、メモリアクセス
>の例外は「発生しません」。攻撃には、絶対番地が必要になるので
>すが、これもだいたいでよくて、nop 命令を埋めておけば、ある程
>度の範囲内なら1発で成功します。
>
>1発で成功しない場合は、番地を変えながら何回かループする必要
>がある場合があります。その場合は、メモリアクセスの例外が発生
>するので、

かつてRedHat Linuxのとあるバージョンで、初期値のままEnterを叩き
続けてインストールすると、WWWサーバもインストールされて、その
WWWサーバにとあるリクエストを送るとbuffer overrunして、しかも
それがOS起動後の最初のリクエストだと必ず同じ番地に飛べる、という
穴が有って、それを悪用したwormが流行った時が有ります。初期値の
ままEnter押しっぱなしでインストールする人が実は少なくない模様。

なので攻撃者にとっては、狙った環境(OS,server,mailer,etc.)
で狙った予測アドレス(範囲)に飛べれば乗っ取れるし(最善解)、
そこまで行かなくても例外発生でそのサービスを停止されられる
(次善解)というくらいの意図でしょう。

OpenBSDでは早い時期から/dev/randomなんてドライバまで用意して、
そこかしこで乱数を使って、攻撃者からoverrun後に飛ぶと上手く
いくアドレスを予測され難くしていました。FreeBSD 5-current
でも、様々なEntropy harvestingを利用して予測困難性を上げようと
努力しています。Windowsを見ると、そういった注意が払われていない
と言うより、debugの為、再現性を確保しようとさえしているのでは?
なんて邪推させられます。「一般保護例外 0E...」なんて教えてくれ
ちゃってどうするの?
-- 
中村和志@神戸         <mailto:kaz@kobe1995.net>
NAKAMURA Kazushi@KOBE   <http://kobe1995.jp/>
- Be Free(BSD), or Die...