このページの本文へ

コード内で行う文字列操作の誤り(バグ)を修正、開発コスト削減にも寄与

インジェクション攻撃撲滅へ NTTと早稲田大がプログラム修正技術を共同開発

2024年10月29日 07時00分更新

文● 福澤陽介/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

 NTTと早稲田大学は、2024年10月28日、「インジェクション攻撃」の主要な原因である、プログラム中の文字列操作の誤り(バグ)を修正する技術を世界に先駆けて開発したことを発表した。

 インジェクション攻撃は、ソフトウェアの脆弱性を悪用するサイバー攻撃手法のひとつ。Webアプリケーションのデータベースなどに不正な入力データを送信することで、データベース内の個人情報を抜き取るなど、サーバー上で予期しない動作を引き起こす攻撃だ。

 こうした攻撃を防ぐために、通常はプログラム中で文字列関数を使い、予期しない(不正な)入力データのチェックや排除、無害化が行われる。ただし、文字列関数を利用して文字列操作を行うためには専門的な知識が要求され、その文字列操作に誤りがあれば脆弱性となってしまう。

 発表によると、今回開発された技術によって、専門知識を持たないソフトウェア開発者でも、文字列操作の誤りを修正できるようになるという。さらに、サービスの開発段階からその誤りを修正できるため、コスト削減と安全なサービス提供にもつながる。

 NTTと早稲田大学が共同開発したのは、プログラム中の文字列操作の誤りを、ソフトウェア開発者が与える入出力例を基に修正して、修正結果に誤りがないことを保証する技術だ。文字列関数に対する処理の流れは、以下の通りになる。

文字列関数に対する処理の例

 まず、文字列関数に期待する入出力の例を、入力と出力に加えて“入力のどの部分をどのように変換したいのか”を含めて表記する手法を用いて、適切な修正結果が出力できるようにする。

 さらに、“文字列関数の振る舞い”を理論モデルとして厳密に定義することで、修正対象の文字列関数に与える情報であるパラメータが、すべての入出力例を満たすための条件を導き出せるようにする。

 最後に、修正結果のパラメータとなり得る候補を、明らかに入出力例を満たさないものを除外しつつ、網羅的に探索する手法を用いて、現実的な時間内に修正処理を終えられるようにする。また、修正結果は、修正前のパラメータに対して最小限の変更に抑えられるため、ソフトウェア開発者の目視での確認を可能にする。

 今回の技術は、生成AIでプログラムを自動生成した場合でも、そのメリットを損なうことなくプログラムの安全性向上に寄与する。今後は、文字列操作に伴う脆弱性そのものを修正する技術の研究が進められる予定だ。

 NTTと早稲田大学では、10月30日に米国で開催されるソフトウェア工学分野の国際会議「IEEE/ACM ASE 2024」で本技術の詳細を発表する。

■関連サイト

カテゴリートップへ

本記事はアフィリエイトプログラムによる収益を得ている場合があります

アクセスランキング

  1. 1位

    トピックス

    “持たない家電”ランキング、もはや定番のアレがやっぱり1位なような

  2. 2位

    トピックス

    思い切った慶應義塾 全教職員にNotion導入で168年分の知的資産をAIに食わせるプロジェクトが始動

  3. 3位

    ビジネス

    管理職こそ大事にしないとまずくないか? 約4割が「続けたい、と答えない」現実

  4. 4位

    TECH

    訓練だとわかっていても「緊張で脇汗をかいた」 LINEヤフー、初のランサムウェア訓練からの学び

  5. 5位

    トピックス

    インバウンドの頑張りランキングベスト3は「大分県」「岐阜県」「佐賀県」 努力が光る結果に

  6. 6位

    データセンター

    液冷技術の最先端が集うイノベーションラボ「DRIL」、印西のデータセンターに現わる

  7. 7位

    トピックス

    リモートワークは福利厚生なの? ITエンジニアが本当に欲しい福利厚生第1位となる

  8. 8位

    ビジネス

    ランチ抜きが22%!? 物価高で「水筒・コンビニ控え」が定着する中、なぜか「推し活・美容費」だけは死守するオフィスワーカーたち

  9. 9位

    TECH

    身代金要求攻撃の被害額は「1社平均6.4億円」 それでも6割超が「支払いを否定しきれない」苦境

  10. 10位

    ビジネス

    廃校がAIの心臓部に!? 地方の遊休施設を「AIデータセンター」に生まれ変わらせるハイレゾの挑戦がアツいぞ

集計期間:
2026年04月14日~2026年04月20日
  • 角川アスキー総合研究所