MENU

GitHub Advanced Securityとは|GHASの3機能を完全整理

GitHub Advanced Security アイキャッチ
GitHub Advanced Security

GitHub Advanced Security(GHAS)はGitHub Enterprise向けに提供される有料アドオンで、Code Scanning(SAST)、Secret Scanning、Dependency Reviewの3機能を中核とする。2019年に買収したSemmle社のCodeQLを核に据え、リポジトリ単位で深いセキュリティ可視化を提供することを目的としている。2023年以降はSecret Scanningがパブリックリポジトリで無料化され、プライベートリポジトリでもGHAS契約により有効化される構成だ。

目次

この記事の目次

  1. CodeQLによるSAST解析
  2. Secret ScanningとPush Protection
  3. Dependency Review・SBOM対応
  4. コミット数課金と導入判断
  5. まとめ

CodeQLによるSAST解析

CodeQLによるSAST解析

Code Scanningの中核はCodeQLというセマンティック解析エンジンで、ソースコードをデータベース化してSQLライクなクエリで脆弱性パターンを抽出する。SQLインジェクション、XSS、パストラバーサルといった典型脆弱性に対しては数百のクエリが標準搭載されており、C/C++、C#、Go、Java、JavaScript、Python、Ruby、Swiftに対応する。

他のSASTツールと比べた利点は、データフロー解析の精度と誤検知率の低さである。解析結果はGitHub上のSecurityタブとPRレビューに統合表示され、開発者がコメントとして確認できる。カスタムクエリを書けば独自のセキュリティルールも実装でき、企業のコーディング規約違反検出にも応用できる柔軟性を備える。

Secret ScanningとPush Protection

Secret ScanningとPush Protection

Secret Scanningはリポジトリのコミット履歴を走査し、AWSアクセスキーやGCPサービスアカウントJSON、Stripe APIキーなど200種類以上のシークレットパターンを検出する。2022年に追加された「Push Protection」機能はさらに踏み込み、git push時点でシークレットを検知すると拒否することで、そもそも履歴に混入させない設計となった。

検出されたシークレットは、対応クラウドプロバイダーのパートナープログラムに通知され、AWS・GCP・Azureが該当キーを自動失効させる連携も整備されている。これにより、誤コミットから漏洩までの時間を分単位に短縮できる。Custom Patternsを定義すれば、社内の独自トークン形式も検出対象に追加でき、組織独自のシークレット管理にも対応する。

Dependency Review・SBOM対応

Dependency Review・SBOM対応

Dependency ReviewはPull Request単位で依存パッケージの追加・更新・削除を可視化し、新たに導入される依存に脆弱性やライセンス問題がないかをレビュー画面で警告する。Dependabotが「修正PRを出す」役割なのに対し、Dependency Reviewは「マージ前の最終ゲート」として機能し、人間の判断ポイントを残す思想で設計されている。

2023年以降はSBOM(Software Bill of Materials)の自動生成にも対応し、CISA・NISTが推進するサプライチェーン透明性要件への準拠を支援する。SPDXまたはCycloneDX形式でエクスポートでき、規制対応の文書化負荷を大幅に削減する。FedRAMPやEO 14028対応を求められる政府関連プロジェクトでの採用が進展している。

コミット数課金と導入判断

コミット数課金と導入判断

GHASは「アクティブコミッター」単位の課金で、過去90日以内にコミットしたユーザー数でライセンス料が決まる。1コミッター月49ドルが定価で、エンタープライズ向けにはボリュームディスカウントも交渉可能だ。小規模チームには高額に映るが、SASTツールを別途調達する場合と比較すると総コストは抑えられるケースが多い。

導入判断のポイントは「すでにGitHub Enterpriseを使っているか」「コンプライアンス要件で監査証跡が必要か」の2点である。マルチクラウドでGitLab併用の組織にはオーバースペックになりがちで、その場合はSnyk・SonarQubeなど独立系SAST/SCAを選ぶほうが柔軟だ。逆にGitHub完結組織にとってはROIが極めて高い投資となる。

まとめ

GHASはCodeQL・Secret Scanning・Dependency Reviewの3層でGitHub上のリスクを統合管理するプラットフォームであり、サプライチェーンセキュリティを社内標準化したい組織に最適だ。コミッター課金のコスト構造を踏まえつつ、Push ProtectionとSBOM生成を活用すれば、規制対応と開発速度を両立する強力な防御基盤を構築できる。

※本記事はIT用語辞典の手書きドラフトです。公開前に最新情報・出典を確認のうえ加筆修正してください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次