セキュリティは、難しく、お金のかかる世界です。そこで私たちは、オープンソースのセキュリティ・ツールの包括的なガイドを作成し、でたらめな情報に切り込み、導入すべき最も重要なツールは何か、保護すべき資産は何か、フリーでオープンソースのツールだけを使って長期的なセキュリティ・プランを構築する方法を示すことにした。

最も重要なツールとは?
無数のセキュリティツールが存在するように見えますが、最初のステップは常にどこから始めるかを決定することです。具体的な状況によって異なる場合もありますが、私たちは常に攻撃者にとって容易な標的から始めることを推奨します。クラウドインフラストラクチャが安全であることを確認し、攻撃者が容易に見つけられるシークレットがなく、エラーにつながる単純なコーディングミスがなく、オープンソースサプライチェーンに致命的な脆弱性がないことを確認してください。そこから、セキュリティを向上させるためのより多くのツールを導入し、ソフトウェア開発ライフサイクル全体でより多くのベストプラクティスを実装することができます。

どのようなツールがありますか?
素晴らしいオープンソースのツールはたくさんあり、あなたのスタックや正確なニーズにもよるだろうが、以下に我々がゴールドスタンダードと考え、手始めに最適と考えるものをいくつか紹介する。
CSPM(クラウドセキュリティポスチャ管理)
Cloudsploit
CSPMはクラウド資産を保護するための不可欠なツールであり、CloudsploitはオープンソースのCSPMです。このプロジェクトは、Amazon Web Services (AWS)、Microsoft Azure、Google Cloud Platform (GCP)、Oracle Cloud Infrastructure (OCI)を含むクラウドインフラストラクチャアカウントのセキュリティリスクを検出します。
シークレット検出
Trufflehog | gitleaks。
シークレットは、新しいシステムへの迅速なラテラルムーブメントを可能にするため、攻撃者にとって価値の高い標的であり、実際、シークレットは侵害の83%で使用されています。特にgitリポジトリなど、シークレットが存在する場所でそれらを検出することが不可欠です。シークレット検出に最適なオープンソースツールの2つは、Trufflehogとgitleaksです。
SCA(ソフトウェア構成分析)
Trivy | Dependency-Check | Dependency-Track
オープンソースの依存関係は、アプリケーションのコードの85%を占めており、これは攻撃者が開発者よりもコードをよく知っている可能性があることを意味します。どのオープンソースコンポーネントに脆弱性が含まれているかを知ることは非常に重要です。SCAツールは、アプリケーションで使用しているオープンソースの依存関係を分析し、それらに対して既知の脆弱性があるかどうかを判断します。Trivy、Dependency-Check、Dependency-Trackは、オープンソースのリスクを理解するのに役立つ優れたツールです。
SAST(静的アプリケーションセキュリティテスト)
Bandit | Breakeman| GoSec |SemGrep
SASTは、セキュリティ問題につながる可能性のあるミスがないかソースコードをレビューします。SASTが発見できる最も一般的なエラーには、インジェクションの脆弱性、暗号化の失敗、バッファオーバーフローなどがあります。選択するツールは、特定の技術スタックに特化している必要があります。優れたオプションとしては、Bandit(Python)、Breakeman(Ruby)、GoSec(Go)、SemGrep(汎用)などがあります。
DAST(動的アプリケーションセキュリティテスト)
Nuclei | Zap
DASTツールは、自動化されたハッカーのように機能し、ドメインに対して攻撃を実行して悪用可能な脆弱性を発見します。これはサーフェス監視とも呼ばれます。優れたオープンソースツールとしては、NucleiとZapがあります。
マルウェア検出
Phylum
従来のSCAツールは、公に開示された脆弱性に依存しています。マルウェア検出は、報告されていない可能性のあるパッケージ内の悪意のあるコードを発見することです。Phylum はこのための優れたツールであり、厳密には完全にオープンソースではありませんが、CLIスキャンツールで使用できる無料版があります。
IaCスキャニング
Checkov
Infrastructure as Codeにより、クラウドインフラストラクチャをより確実かつ容易にプロビジョニングおよびデプロイできるようになりました。しかし、これによりセキュリティ問題を引き起こす設定ミスが発生する可能性があります。以前に説明したCSPMツールはクラウドインフラストラクチャのエラーを発見できますが、IaCスキャンはデプロイ前にエラーの発生を防ぐことができます。Checkovは、これらのセキュリティ問題をスキャンできる優れたツールです。
アプリ内ファイアウォール
Zen-Node | Zen Python
セキュリティにおけるシフトレフト(ライフサイクルの早期段階でセキュリティを移行すること)という真のトレンドがありますが、これは素晴らしいことである一方で、その反対側を無視して、実行中のアプリケーションにセキュリティを実装すべきではありません。AikidoのZenは、ランタイムでのインジェクションなどの攻撃をブロックし、二次的な保護レベルを追加できるオープンソースのインアプリファイアウォールです。Zen-Node | Zen Python
使用済み部品
endoflife.date
オープンソースのサプライチェーンの大きなリスクは、メンテナンスされなくなったコンポーネントである。endoflife.dateは、もはやメンテナンスされておらず、本番で使うべきでないプロジェクトの素晴らしいデータベースである。
ライセンス保護
Trivy
アプリケーションで正しいオープンソースライセンスを使用していることを認識することは重要です。Trivyは、オープンソースライセンスの種類とそれらがどのように使用されているかについての素晴らしい洞察を提供します。
オープンソースのツールは商用版と同等か?
オープンソースツールは、そのスキャン機能に関して非常に高品質である場合があります。しかし、ノイズ削減、修復、監視に関しては、商用ツールの方が多くの機能を提供します。オープンソースツールの使用を恐れるべきではありませんが、特に成長するにつれて、オープンソースツールの使用には多くのエンジニアリング時間が必要になることに注意してください。
オープンソースのセキュリティツールを使う理由
- 参入障壁がない(すぐに無料で始められる)
- オープンソースは、取締役会の賛同を得るための素晴らしいツールである。
- 高品質のスキャナ(多くのオープンソースツールは、スキャニングの能力において一致している)
- 地域支援
なぜオープンソースのセキュリティツールを使わないのか
- セットアップが難しい。オープンソースのツールは、さまざまな言語やフレームワークを使用しているため、それらをうまく使いこなすのは難しい。
- ノイズの多いオープンソースのツールは、発見を重視する傾向があるため、フィルタリングの追加レイヤーを作成しなければ、多くの偽陽性をもたらす可能性がある。
- サポートは限定的、道具が壊れたら自己責任
- RBACなし。最新の開発では、チーム全体が関与することが重要だ。オープンソースのセキュリティは、役割間のフィルタリングを許さないため、セキュリティチームにとって大きな負担となる。
商用ツールよりオープンソースの方が良いという正解はなく、どちらにも適材適所がある。
Aikidoの優位性
オープンソースのセキュリティツールを調査している場合、商用ツールは高価である一方で、オープンソースツールはダッシュボードに一元化するために多くの作業が必要であるという現実に直面するか、いずれ直面することになるでしょう。Aikidoでは、この課題を理解し、オープンソースプロジェクトをシームレスに統合し、単一のダッシュボードに一元化することで、自動トリアージと修復ワークフローによりすべてのセキュリティ問題にコンテキストをもたらす製品を開発しています。これにより、大規模な商用ツールの機能をはるかに低価格で利用できるようになります。

今すぐソフトウェアを保護しましょう




