ロボットカーで情報セキュリティを学ぼう! 中学生が見慣れぬコマンドラインと奮闘セキュリティ・ジュニアキャンプ in 高知レポート(前編)(3/3 ページ)

» 2016年08月23日 05時00分 公開
[谷崎朋子@IT]
前のページへ 1|2|3       

みんな「いたずら」は大好き? 脆弱性の怖さを遊びながら体感

 2日目。中学生たちは引き続きロボットカーのプログラムの完成を目指す。当初はプログラムが完成した後は、ロボットカーに搭載されたNFC(Near Field Communication)リーダーと、レースコースに埋め込まれたNFCタグを使った陣取りゲームが開催される予定だった。コースには遮断機があり、他の車の位置を確認しながら遮断機を下ろして進行を妨害するなど、面白い仕掛けもあった。

事前に用意されていたレースコース 事前に用意されていたレースコース

 ところが、ロボットカーを遠隔操作できるようになった途端に、Webページの操作ボタンを連打する参加者が続出。レースコースが敷かれた別フロアの会場では、ロボットカーが突然走り出して壁に激突したり、タイヤが高速で空回りして摩耗したりと、もはや“無法状態”に。結果的にハードウェアが耐えられず、残念ながらレースは開催できなくなった。

 そこで予定を変更し、残りの時間はネットワークを介して互いのロボットカーを乗っ取ることができるかを、参加者自らが考えながら実践する時間に充てられた。結果的には、この予定変更が功を奏した。実は、本イベントでRaspberry PieのWebサーバや、それにログインするためのID、パスワードは全員が共通のものを使用していた。つまり、IDやパスワードを変更するなどの対策をしない限り、誰もが簡単に他の参加者の環境に変更を加えたり、ロボットカーを操作できてしまったりする状態になっていた。

 そんな環境の下、“いたずら”が許される時間となるとがぜんやる気が出てきたのか、Webサーバを再起動をすることでしばらく操作が行えなくなることに気付いた参加者の1人が、リブート攻撃を開始。その攻撃手法が他の参加者にも知れわたり、運営側から禁止されるまで、教室ではリブートの嵐が吹き荒れた。

 また、他の参加者のコードに“悪意ある”変更を加える参加者もいた。「ただコードを消すのではなく、変更されたことが分からないように書き換えるのがプロのやり方だよ」というチューターの“悪魔のささやき”もあり、「;」を「i」に、「I」を「1」に変更するなどの手法が次々と生まれ、フィッシングサイトのURLなどでもよくある、「紛らわしい文字列」の悪用事例を遊びながら知るという、思わぬ機会になった。

 さらに、今まで受け身で受講していた参加者にも、この時間をきっかけに変化が見られた。ある参加者は、process killというコマンドで実行中のプロセスを終了できることを知り、早速コマンドを入力してみたが、「pidまたはprocess名が必要」と表示されて失敗。pidとは何か。process名はどう調べればいいのか。分からないことを目の前にして、自ら進んでインターネット検索を始めた。分からなかったら、まずは調べてみる。そんな自発的な姿勢も、知らず知らずに身に付けることができた。

 こうして一通り攻撃を終えた後は、こうした攻撃を受けないための対策として、服部氏が「パスワードを推測されにくいものに変更する」「controller.html(ロボットカーの操作ボタンを配置したWebページ)のファイル名を変更する」「パスワードの文字数やパターンを工夫する」などの方法を紹介。攻撃に夢中だった中学生が、今度は防御の大切さを学んだ。

濃密な2日間を過ごした参加者と講師、チューターで記念写真 濃密な2日間を過ごした参加者と講師、チューターで記念写真

 「初めてモノをテーマにし、運営側としても課題の多いキャンプとなったが、1つずつ丁寧に課題を回収しつつ、さらに楽しいキャンプになるようバージョンアップしていきたい」(佐藤氏)。高知高専やセキュリティ・ジュニアキャンプの取り組みは、まだ始まったばかりだ。

前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。