GitHubは「GitHub Advanced Security」の利用者を対象に、コードスキャン自動修正機能パブリックβ版の提供を開始した。「JavaScript」「TypeScript」「Java」「Python」に対応しており、脆弱性のないコード案を生成する。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
GitHubは2024年3月20日(米国時間)、「GitHub Advanced Security」の利用者を対象に、コードをスキャンし自動修正する機能のパブリックβ版を提供開始した。この機能では、「GitHub Copilot」と「CodeQL」を活用してコードをスキャンし、修正候補のコードを生成している。GitHubによると、「JavaScript」「TypeScript」「Java」「Python」のアラートのうち90%以上をカバーし、発見された脆弱(ぜいじゃく)性の3分の2以上を、ほとんど編集することなく、直ちに修正できるコード案を提供するという。
アプリケーションセキュリティの理想形は、脆弱性が発見されれば、直ちに修正が入る環境といえる。GitHub Advanced Securityは、開発者によるセキュリティ問題の素早い発見と修正を支援するソリューションだ。GitHubは「従来のセキュリティツールの7倍の速さで脆弱性を修正することができた。コードスキャンによる自動修正機能は、従来のツールを進歩させたものであり、開発者が修正に費やす時間と労力を劇的に削減できるよう支援する」と述べている。
GitHubは、アプリケーションが依然として主要な攻撃経路であるにもかかわらず、ほとんどの組織は、本番環境のリポジトリに存在する未修正の脆弱性の数が増え続けているのをそのままにしていると指摘する。コードスキャンの自動修正機能を用いて、開発者がコーディング中に脆弱性を簡単に修正できるようにすることで、組織がこの「アプリケーションセキュリティ負債」の増加を遅らせるのに役立つという。
「GitHub Copilotが開発者を退屈で反復的な作業から解放するのと同様に、コードスキャン自動修正は、開発チームが修正に費やしていた時間を取り戻すのに役立つ。また、セキュリティチームは、日常的な脆弱性の量が減ることで、加速する開発ペースに対応しながら、ビジネスを保護するための戦略に集中できるようになる」(GitHub)
サポートされている言語で脆弱性が発見された場合、修正コードのプレビューが提案され、それとともに、自然言語による説明が提供される。開発者はこれを「受け入れる」「編集する」「却下する」から選択する。これらのコード提案には、現在のファイルへの変更に加えて、複数のファイルへの変更やプロジェクトに追加すべき依存関係を含めることも可能だ。
コードスキャン自動修正機能はCodeQLエンジン、経験則とGitHub Copilot APIの組み合わせを活用してコード候補を生成している。自動修正とそのデータソース、機能、制限の詳細については、「CodeQLコードスキャンの自動修正について」で説明されている。
今後は「C#」と「Go」のサポートを予定しており、その他にも多くの言語のサポートが追加されるという。
Copyright © ITmedia, Inc. All Rights Reserved.