「ITに全く関係ない分野からITに飛び込んで活躍しているエンジニア」など、何らか“越境”を経験したエンジニアを「越境エンジニア」と名付け、1カ月に一人ずつインタビューを掲載する。今月取り上げるのは、ソフトウエアの脆弱性を見つけて報告する「バグハンター」として知られる西村宗晃氏。今回は、セキュリティを専門にしようと決心したところからバグハンターになるまでの経緯を聞いた。

(聞き手は大森 敏行=日経NETWORK


前回から続く)

 私は、大手電機系企業でLSI開発に携わっていました。LSIのハードウエアというよりは、ソフトウエアに近いところを開発していました。主に、ブートローダーやパワーマネジメントの機能など、LSIの電源制御に近い部分を担当しました。携帯電話の省電力化を実現するため、消費電力を抑えるようなソフトウエア設計を検討したり、ときにはLSIのハードウエア設計の変更も行いました。

[画像のクリックで拡大表示]

 携帯電話の中では、ブートローダーはセキュリティ機能の塊のようなものです。正規以外のファームウエアを起動させないようにする仕組みなど、ブートローダーに求められるセキュリティ要件は多い。

 セキュリティのソフトウエアを書くに当たって、「ハードウエアにこうした仕組みがなければソフトウエアを実現できない」ということがあります。例えば、デジタル著作権管理(DRM:Digital Rights Management)を使って、コンテンツを1週間レンタルする機能を実現しているとします。こうした場合、タイマーを使ってコンテンツの有効期限が切れていないかどうかをチェックします。

 ところが手練れのハッカーだと、時間を計算するタイマーモジュール自体を操作して時間を過去に戻したりします。ハードウエア的に書き換えができないタイマーを持たないと安全な装置を作れません。このように、LSIのハードウエアに対する要求仕様を決めながらソフトウエアを書いていました。