ファズテストはどのようにして効率的に脆弱性を探り、問題を正確に特定するのでしょうか?

サイバースペースのセキュリティがディープゾーンに入るにつれて、中心的な戦場は外部の国境警備から内部のソフトウェアセキュリティに移行しており、内部のソフトウェア脆弱性マイニングも将来のセキュリティシステムの最も重要なリンクになるでしょう。

企業は通常、手動 + 静的分析コード監査ツールを使用して脆弱性を発見します。ただし、コード行が大幅に増加すると、手動レビューは非常に手間がかかり、SAST は脆弱性ルールを使用してパターン マッチングを実行しますが、既知の脆弱性のみを検出でき、誤検知率が高く、複雑なシナリオをコーディングすることはできません。ロジックと未知の欠陥です。ファズテストは、テスト対象の動作状況をリアルタイムに監視し、テスト対象の潜在的なセキュリティ脆弱性を発見することができ、ソフトウェアの品質を効率的に確保できる動的テスト手法です。今日は、オープンソース ネットワーク セキュリティ ファズ テスト (SFuzz) を例として、ファズ テストが脆弱性を効率的に発見し、問題を正確に特定する方法について説明します。

効率的なマイニング

脆弱性を効率的にマイニングするには、次の側面を満たす必要があります: 「広範な」テスト。テストの範囲はさまざまなシナリオをカバーし、漏れがないことを保証します。干渉と誤検知を減らすために、システムのさまざまな状態に対してさまざまな戦略を採用する必要があります。

テスト「ワイド」

SFuzz エンジン アルゴリズムでは、突然変異と生成に基づく 2 つの方法を組み合わせてテスト ケースを生成します。「プロトコル仕様内の汎用言語」の完全なセットは、さまざまなプロトコルと互換性があるように整理されており、テンプレート解析部分全体の汎用性が高まり、さまざまなアプリケーション シナリオをカバーできるようになります。SFuzz は、環境変数とパラメータ、Web アプリケーション、ファイル形式、ネットワーク プロトコル、Web ブラウザ、組み込みおよびシステム カーネルなどをテストできます。研究開発チームは手動でテスト ケースを作成し、ハードウェア環境を構築する必要がないため、検出効率が大幅に向上します。

「深い」テスト

SFuzzは、テンプレートエンジンに従ってデータ構造と動作を分析し、ファジーアルゴリズムで特定のファジーデータを生成します完全にランダムなファジーと比較して、優れたアルゴリズムによりファジーデータの品質をさらに保証でき、潜在的なセキュリティ欠陥の検出が容易です。

テスト「準」

SFuzz は 60 を超える突然変異アルゴリズムをサポートし、テスト ケースのインテリジェントな突然変異を実現し、テスト スケジュール戦略を動的に調整し、外部干渉を低減して誤検知を減らします。

正確な位置決め

多くの検出ツールはフォルダーまたはファイルの位置を特定することしかできず、開発者が脆弱性をさらに正確に特定するには多大な時間がかかり、非効率的です。一方、SFuzz はランダム化シーケンス技術を使用しており、コード行までの欠陥を正確に特定し、繰り返しユースケースを生成し、同じテストシーケンスを再構築し、「エラーシーン」を再現することができ、開発者は脆弱性の状況を深く理解し、迅速に理解することができます。欠陥を修理します。

オープンソースのネットワーク セキュリティ ファズ テスト プラットフォーム (SFuzz)

オープンソースのネットワーク セキュリティ ファズ テスト プラットフォーム (SFuzz) は、ファズ テスト技術に基づいて独自に開発されたブラック ボックス セキュリティ テスト製品で、ファイル形式とネットワーク プロトコルのファズ テストに焦点を当てており、さまざまなソフトウェアおよびハードウェア システムの未知の脆弱性を発見します。SFuzz には、モジュール化、クロスプラットフォーム、自動テスト、高効率、制御性という利点があります。

おすすめ

転載: blog.csdn.net/weixin_55163056/article/details/132224386