静的検査ツールの弱点だった過剰検知を、機械学習で補正する――テクマトリックス:@ITソフトウェア品質向上セミナー
@ITは2018年12月14日、「@IT ソフトウェア品質向上セミナー」を開催した。本稿ではテクマトリックスの講演「ソースコード診断で手戻りを防ぎ、開発スピードを早めるためのヒント〜開発ツールとの連携による脆弱性診断の早期発見と自動化〜」の模様をお届けする。
@ITは2018年12月14日、「@IT ソフトウェア品質向上セミナー」を開催した。本稿ではテクマトリックスの講演「ソースコード診断で手戻りを防ぎ、開発スピードを早めるためのヒント〜開発ツールとの連携による脆弱性診断の早期発見と自動化〜」の模様をお届けする。
アプリケーション開発には素早いリリースだけではなく、セキュリティも含めた品質、そしてリリース後に発覚した新たな脆弱(ぜいじゃく)性への対応といった事柄が要求される。この結果、現場ではアジャイル開発によって高速にソフトウェアをリリースしつつ、高い品質を保つため「セキュアデベロップメントという考え方を取り入れなければならない」と、テクマトリックス ネットワークセキュリティ事業部 セキュリティ研究所 シニア・セキュリティアナリストの酒井喜彦氏は述べる。
その流れで注目を集めるキーワードが「シフトレフト」だ。設計段階で脆弱性に対応すればコストは1で済むのに対し、テスト段階では15倍に、デプロイ後に修正する場合は100倍以上に跳ね上がり、非常に非効率だ。シフトレフトはこの問題を改善するため、テストフェーズに集約されがちなセキュリティ検査を、設計やコーディングといった前の各工程でしっかり実施していこうというコンセプトだ。
だが、シフトレフトは決して新しい言葉ではないのに、広く浸透しているとは言い難い。酒井氏はその理由を「セキュリティは自分の仕事ではなく『人ごと』になりがちだから。そしてもう一つ、『セキュリティ』というと、とかく難しく感じられてしまうからだ」と言う。
この課題を解消するには、早い段階でアプリケーションにどんな脆弱性があるのか、安全かどうかを確認することが必須だ。しかも、それを人手に頼るのではなく開発の各工程で自動化し、「たとえ開発者が当事者意識を持たなくても、普段の仕事をしている中でテストされるような形で、今までのスキームをなるべく変えずにそのまま診断を組み込むことが必要だ」とした。
テクマトリックスでは、そんな環境作りを支援するために、ソースコードの問題点を検査するツール「IBM Security AppScan」を提供している。これまで検査ツールの弱点だった過剰検知を、機械学習を使ったIBMの自動精査技術「Intelligent Findings Analytics」で補正することが特徴だ。
「これまで一番手間のかかったアラート精査の部分を機械学習に委ねることで、どんな人でも使える形にしようとしている」(酒井氏)
JenkinsなどのCI(継続的インテグレーション)ツールとも連携できるため、セキュリティテストを通常のテストと同じように繰り返し実施できることも特徴だ。酒井氏は「こうしたツールを活用して作業を自動化し、前倒しする形でより安全なソフトウェアを作ってほしい」とした。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 「三権分立」で1年に200リリースを達成した楽天トラベル、150人規模のチームで実現できた秘訣とは
2016年12月6日に開催されたセミナー「DevOps時代のテスト自動化カンファレンス〜はやく、いいものを届けよう〜」のレポート第3弾では、楽天トラベルにおけるDevOpsとテスト自動化の取り組みを中心に、最適な開発ライフサイクル実現のヒントを紹介する。 - 流用したOSSコードのライセンスや脆弱性を高速検索、テクマトリックスが管理ツール発売
テクマトリックスは、自社開発のソースコードに流用されているオープンソースソフトウェアを検出し、そのライセンスポリシーやセキュリティ脆弱(ぜいじゃく)性などを確認できるツール「FOSSID」の販売を開始した。 - テクマトリックス、Javaアプリテストツールの新版リリース
テクマトリックスは2月18日、米Parasoftが開発したJavaアプリケーション向けテストツールの新バージョン、「Parasoft Jtest 9.5」の販売を開始した。