DockSecはAdvait Patelの不満から生まれたオープンソースのセキュリティツールです。
その不満の根源は、AIは脆弱性の検出には優れているが、その修正方法の説明は下手だという認識の高まりにあります。「通常の日には、コンテナイメージをスキャンすると200以上のCVEが返されます。ほとんどはノイズで、本当の問題は少数ですが、開発者に『この3行を修正すれば大丈夫』と伝える簡単な方法がありませんでした。セキュリティツールは問題を見つけるのは得意ですが、人々が問題を修正するのを支援するのは下手です。」
既知の脆弱性を適時に修正することの困難さのためだと思われますが、ソフトウェアイメージは修正されていない脆弱性を含んだままDockerに入力されています。「15のイメージをスキャンしたところ、高深刻度と評価された183の脆弱性と、さらに重大度が高いと評価された15の脆弱性が見つかりました」と彼は続けます。「たとえば、HashiCorp Vaultは機密情報を保護するために特別に構築されたツールですが、独自のイメージには40個の脆弱性を含まれて出荷されました。」
脆弱性がイメージに含まれている場合、Dockerによって自動的に実行される可能性があり、CI/CDパイプラインにも含まれる可能性があるという脅威があります。Patelはこの脅威を解決するために、DockSecと呼ぶオープンソースツールを開発することで自らに課しました(最近OWASPに公式プロジェクトポートフォリオとして採用されました)。

困難なのは脆弱性を見つけることではなく、開発者がそれらを修正するのを支援することです。DockSecは新しい脆弱性スキャナーを含まず、単にTrivy、Hadolint、およびDocker Scoutをローカルで実行します。その後、新しい機能がやってきます。LLMは3つすべての調査結果を相互に関連付けて、重複を削除し、実際の影響によってランク付けします。スキャンはローカルで実行され、スキャンメタデータのみがLLMに送信されます。イメージコンテンツは決して送信されません。
すべてはローカルで実行されます。使用できるLLMはOpenAI、Anthropic、Google Geminiから選択でき、Ollamaを通じてローカルで実行できます。その機能は、プレーンテキストの英語での説明と、開発者の共通言語であるMarkdownで配信される正確なDockerfile修正を生成することです。DockSecは脆弱性検出と脆弱性修正の間のギャップを閉じます。
Patelはアーキテクトであり、DockSecのリード開発者です。しかし、プロジェクト自体は彼を超えて成長しています。「OWASP認識とOWASPインキュベータープロジェクトとしての採用は転機でした」と彼は説明しています。「それ以前は、人々がGitHubを通じて見つけた個人的なプロジェクトでした。OWASP後、信頼できる、検証されたエコシステムの中に今それが位置しているため、エンタープライズチームがそれを真摯に受け取り始めました。貢献も増加し、より多くのプルリクエスト、より良いイシュー品質、そしてセキュリティ専門家は単にバグを報告する代わりに機能を提案し始めました。OWASPはそれをオープンで、ベンダー中立的で、コミュニティを最優先にしておく責任をもたらします。それは設計する上で良い制約です。」
これはコミュニティ主導のオープンソースであり、Patelが最前線にいます。ダウンロード数は18,000に近づき、プルリクエストは90に達しています。そして、それはオープンソース開発の純粋さの例です。Patelは自分の個人的な時間に概念を考え出し、それを作成しました。ダウンロードと使用は無料です。そして、彼はそれから何のお金も作りません。
しかし、それはただ単一のプロジェクト以上のものです。AIが問題を見つけるが、それらを修正するのに役立たない他の領域に適応することができる設計方法論です。
「DockSecは確実に適応できます。それは単にコードをスキャンするセキュリティスキャナーではなく、アーキテクチャをスキャンし、インフラストラクチャをスキャンします。それは検出と修正の間の橋です。市場には検出ギャップとなるスキャナツールがたくさんありますが、修復部分、そのギャップを修正する方向へ導いてくれるツールはほとんどありません」とPatelは説明しています。
「DockSecはそのうちの1つです。人々、または業界、または企業がDockSecをSOC自動化に適応させたいのであれば、確実にそうすることができます。スキャナーの調査結果を使用して、DockSec方法論を使用して、タイムリーに調査結果を修正することができます。」