窓の杜Logo

バックナンバー
・ 2006年5月 ・
最終回:めも理、2年生に進級!? (06/05/15)
・ 2006年4月 ・
第152回:NTPサーバーと電話の時報 (06/04/24)
第151回:アプリケーションの強制終了とサッカーのレッドカード (06/04/17)
第150回:サードパーティと車の改造 (06/04/10)
第149回:送るメニューとスタントマン (06/04/03)
・ 2006年3月 ・
第148回:ダウンロードのレジュームと長編マンガの読書 (06/03/27)
第147回:プレイリストとお菓子のレシピ (06/03/20)
第146回:ホットスポットと宅配便 (06/03/13)
第145回:ファイルの関連付けと専門医 (06/03/06)
・ 2006年2月 ・
第144回:SpeedStepとめも理のマラソン (06/02/27)
第143回:CC、BCCとクラス会の案内状 (06/02/20)
第142回:トラックバックと掲載誌の贈呈 (06/02/13)
第141回:ブログと首相の記者会見 (06/02/06)
・ 2006年1月 ・
第140回:ハッシュ値と人間の指紋 (06/01/30)
第139回:ヒューリスティックエンジンと実験室 (06/01/23)
第138回:ネットバンキングとラーメンの出前 (06/01/16)
・ 2005年12月 ・
第137回:グループウェアと職員室 (05/12/19)
第136回:モーフィングとお餅 (05/12/12)
第135回:GIFアニメーションとパラパラマンガ (05/12/05)
・ 2005年11月 ・
第134回:アスキーアートとビーズ細工 (05/11/28)
第133回:相対パスと上の階 (05/11/21)
第132回:アドミニストレーターと賃貸マンションの管理人 (05/11/14)
第131回:デスクトップ検索と専属探偵 (05/11/07)
・ 2005年10月 ・
第130回:パターンファイルと犯罪捜査 (05/10/31)
第129回:仮想メモリとコインロッカー (05/10/24)
第128回:アフィリエイトと販売代理店 (05/10/17)
第127回:アカデミックパッケージと子供料金 (05/10/03)
・ 2005年9月 ・
第126回:ブルースクリーンと朝礼の貧血 (05/09/26)
第125回:スタンバイとビデオの一時停止 (05/09/12)
第124回:ソースコードとペーパークラフト (05/09/05)
・ 2005年8月 ・
第123回:WYSIWYGとレストラン入り口の食品サンプル (05/08/29)
第122回:NASと庭の納屋 (05/08/22)
第121回:アルゴリズムとプラモデルの組み立て説明書 (05/08/08)
第120回:ストリーミングと電話の問い合わせ (05/08/01)
・ 2005年7月 ・
第119回:RAWデータと映画の原作 (05/07/25)
第118回:OCRと教科書の朗読 (05/07/11)
第117回:ベリファイと時間割の確認 (05/07/04)
・ 2005年6月 ・
第116回:マルチモニターと机の合体 (05/06/27)
第115回:ポートと駅の北口 (05/06/20)
第114回:ポップアップと漫画のフキダシ (05/06/13)
第113回:SNSと同窓会のお知らせ (05/06/06)
・ 2005年5月 ・
第112回:代打のバッターと仮想プリンター (05/05/30)
第111回:ルアー釣りとフィッシング詐欺 (05/05/23)
第110回:楽器屋さんと統合アーカイバプロジェクト (05/05/16)
第109回:手抜き感想文とテンプレート (05/05/09)
・ 2005年4月 ・
第108回:ダンボール箱とメディア (05/04/25)
第107回:詰め込みメモとCSV形式 (05/04/18)
第106回:車の免許とタイムスタンプ (05/04/11)
第105回:借りっぱなしの本とWebブラウザーのキャッシュ (05/04/04)
・ 2005年3月 ・
第104回:クロスサイトスクリプティングとかご抜け詐欺 (05/03/28)
第103回:GREPとアンケート調査 (05/03/14)
第102回:タスクトレイと腕時計 (05/03/07)
・ 2005年2月 ・
第101回:QRコードと学校の下駄箱 (05/02/28)
第100回:100回記念企画 窓の杜編集部に行ってみよう!(実写版) (05/02/21)
第99回:ログと学級日誌 (05/02/14)
第98回:マウスジェスチャーと変身ヒーロー (05/02/07)
・ 2005年1月 ・
第97回:Webメールと美人秘書 (05/01/31)
第96回:ごみ箱のデータと学食の下膳台 (05/01/24)
第95回:IMEと執事と国語辞典 (05/01/17)
・ 2004年12月 ・
第94回:エンコード、デコードとカップラーメン (04/12/20)
第93回:ポリゴンとお風呂のタイル (04/12/13)
第92回:RSSと電車の吊り広告 (04/12/06)
・ 2004年11月 ・
第91回:ファイヤーウォールと空港の持ち物検査 (04/11/29)
第90回:スパイウェア、アドウェアと盗聴器 (04/11/22)
第89回:デフォルトとご飯の大盛り (04/11/15)
第88回:PDFと設計図 (04/11/08)
第87回:タブレットとスケッチブック (04/11/01)
・ 2004年10月 ・
第86回:IEコンポーネントとスポンジケーキ (04/10/25)
第85回:共有フォルダと部室の雑誌置き場 (04/10/18)
第84回:スキャンディスクとダムの検査 (04/10/04)
・ 2004年9月 ・
第83回:デバイスのドライバーと車の運転手 (04/09/27)
第82回:サービスパックと家のリフォーム (04/09/13)
第81回:FAQとトイレの張り紙 (04/09/06)
・ 2004年8月 ・
第80回:黒板消し落としとブラクラ (04/08/30)
第79回:予防接種とWindows Update (04/08/23)
第78回:十徳ナイフとファンクション・キー (04/08/09)
第77回:狐や狸と差出人詐称ウイルスメール (04/08/02)
・ 2004年7月 ・
第76回:穴埋め問題とオートコンプリート (04/07/26)
第75回:内線電話とLAN (04/07/12)
第74回:めも理の将棋とアンドゥー (04/07/05)
・ 2004年6月 ・
第73回:始業の準備とスタートアップ (04/06/28)
第72回:バリアフリーとアンチエイリアス (04/06/21)
第71回:太陽と月とRGBとCMYK (04/06/14)
第70回:カタカナ言葉と通信の暗号化 (04/06/07)
 

これ以前の連載一覧
.
めも理と窓太のパソコン講座

【第48回】

バッファオーバーランと野球中継(セキュリティホール2)

(03/12/01)

めも理 窓太 めも理と窓太
登場人物紹介

 窓の杜高校、超パソコン部の部室。

 あらあら、めも理ちゃん。今日は脱力状態で部室に入ってきました。

 一体、何があったのでしょう?

野球中継

窓太  どうしたんですかめも理ちゃん、げんなりしているようですね。

めも理  そうよ、昨日げんなりするようなことがあったのよ。
 家のビデオで“世界のお菓子紀行”という番組を録画していたのよ。そうしたら昨日、お父さんが野球中継を同じビデオに録画して、その野球中継が長引いちゃったからと、私が録画していた世界のお菓子紀行の上にまで、野球中継を録画してくれたのよ。
 おかげで、私が録画していた世界のお菓子紀行は、野球中継に上書きされてパーになったの。

窓太  それは災難でしたね。しかしまあ、野球中継が延びて世界のお菓子紀行に上書きされたのは、まるで、“バッファオーバーラン”みたいですね。

めも理  はっ? マッハオーバーラン? マッハの速度で走り過ぎるの?

窓太  違いますよ。バッファオーバーランです。

めも理  何それ?

窓太  そうですね、昨日の野球中継の件を例に、少し説明してみましょう。


上書き

4コマまんが
めも理と窓太の4コマまんが
「バッファオーバーラン」

窓太  昨日のビデオの件ですが、本来世界のお菓子紀行が入るべき場所に、野球中継が録画されたのですね。

めも理  そうよ。

窓太  つまり、野球中継が思いのほか長くなってしまったために、本来めも理ちゃんが見るべき部分だった、世界のお菓子紀行の番組まで上書きされたということですよね。

めも理  そうよ。私が見るはずだった世界のお菓子紀行が、野球中継なんかになってしまったのよ。

窓太  バッファオーバーランも似たような現象です。
 バッファオーバーランは、メモリ上に読み込まれたアプリケーションのプログラムの一部に、ほかのプログラムが上書きされて、実行される現象なのです。

めも理  へっ?

窓太  それじゃあ仮に、ビデオテープをメモリと思って下さい。メモリ上には、アプリケーションのプログラム部分や、そのアプリケーションが利用しているデータなどが読み込まれています。
 ここでは便宜的に、めも理ちゃんが見るはずだった世界のお菓子紀行の部分をプログラムが読み込まれている領域、野球中継の部分をデータの領域とします。


めも理  ふむふむ。世界のお菓子紀行がプログラムで、野球中継がデータなのね。
 あれ、ちょっと待ってよ。それじゃあ、世界のお菓子紀行が録画されていた部分に野球中継が上書きされたら変なことになるわよ。プログラムがデータに上書きされていることになるんじゃないの? そんなことってあり得るの?


窓太  それがあるのです。世界のお菓子紀行が野球中継に上書きされたように、データが溢れることによってプログラムの一部が上書きされてしまうことがあるのです。

めも理  へー。じゃあ、プログラムが書いてあった部分を上書きしてしまったデータ部分って、どうなるの?

窓太  そのままプログラムとして実行されますよ。

めも理  はっ?

窓太  つまりコンピューターは、プログラムと思ってそのまま上書きされたデータ部分も実行するわけです。
 めも理ちゃんが、世界のお菓子紀行だと勘違いして、延々と野球中継を見るようなものです。

めも理  私はそんな間抜けなことはしないわよ。

窓太  でも、コンピューターはするのです。
 こういった現象を、バッファ(メモリ上のある領域)をオーバーして、プログラムが実行(ラン)されてしまう現象ということで、バッファオーバーランと呼ぶのです。

めも理  へー。でもそんなのじゃ、まともにプログラムが動かないんじゃないの?

窓太  そうですね。普通は、こういったことが起こると、プログラムはエラーを起こして終了してしまいます。

めも理  普通はって、普通じゃないことがあるの?

窓太  それがあるのです。こういった現象を利用して、プログラムに意図しない動作を無理矢理実行させる、悪質な行為もあるのです。
 つまり、データが溢れてプログラムを上書きすることを想定して、プログラムを上書きするデータ部分に、まったく別のプログラムを書いておくのです。

めも理  ぐはー、そんなにややこしいことをする人がいるの?

窓太  ええ、そうなんです。プログラムやデータといっても、本質的にはメモリ上では区別はないのです。
 なので、少しデータが溢れるだけで、簡単にプログラムを書き替えてしまうことができるのです。

めも理  ふーん。好きなようにプログラムを書き替えられるのなら、どんな悪いことでもできるわね。

窓太  ええ、ハードディスク上のファイルを消したり、書き替えたりするのも思いのままです。
 普通はこういうことが起こらないようにアプリケーションは作られているのですが、時どき作った人がミスをして、こういう現象が発生してしまうことがあるのです。

めも理  なるほど、そんなことがあるのね。知らなかったわ。


不機嫌

窓太  どうしたんですかめも理ちゃん。今日も不機嫌ですね。

めも理  また、野球中継が伸びたのよ。毎度毎度毎度毎度、バッファオーバーラン許すまじ。それと、ホームラン打ったからってバカ騒ぎする父親も許すまじ。ランってつく物は全て敵よ!

窓太  荒れていますねえ。


今回出てきた用語の解説

【バッファオーバーラン】 メモリ上のデータの一部が溢れて、同じくメモリ上にあるプログラムの一部を上書きしてしまう現象。プログラム部分を上書きするデータに、悪質なプログラムが書かれていることもあるので注意が必要。こういった現象が起こる場合は、プログラムの修正パッチなどを当てなければならない。バッファオーバーフローとも呼ばれる。

クロノス・クラウン:柳井 政和


トップページへ
めも理と窓太のパソコン講座 INDEX
Copyright (c) 2003 Impress Corporation All rights reserved.
編集部への連絡は mado-no-mori-info@impress.co.jp まで