#こういう質問を何処にしたら返事を戴けるのか解らないのですが・・・。

現在、 Linux のセキュリティ強化のためにカーネルにどのような
工夫をすべきか研究しています。

よく、バッファオーバーフローによって root 権限でシェルを起動される
恐れがあるという話を聞くのですが、シェルコードを見ると
私が知る限りでは /bin/sh を exec する数百バイト程度のものしか
ありません。何故、 /bin/sh を実行させるだけしかしないのでしょうか?
/bin/sh さえ開始できればあとは自由に弄れるから、わざわざ一連の処理
(例:ファイル一覧を取得→ホームページ改竄→トロイの木馬を設置)を
自動的に行うプログラムを作って送り込むのが面倒だからなのでしょうか?
それとも、広範なメモリ領域を上書きしてしまうとセグメント違反等が
発生してしまうため大きなプログラムを送り込むことができないから
なのでしょうか?

#クラッカーの心理として、標的のサーバで /bin/sh を開始できない
#場合は、そういう全自動シェルコードを書きたいと思うかを知りたいです。
#まぁ、クラッカー本人からの回答が得られるわけが無いので、
#サーバ管理者として、そういうクラッカーもいると思うかどうかでも
#結構です。

よろしくお願いします。