【はじめに】オープンソースのWAF(アプリケーションファイアウォール)ソフトウェアとは?



What Are Open Source Waf Software



Webアプリケーションファイアウォール(WAF)、HTTP(S)要求の検出、SQLインジェクションの識別とブロック、クロスサイトスクリプティング(クロスサイトスクリプティングxss)、Webトロイの木馬のアップロード、コマンド/コードインジェクション、ファイルインクルード、機密ファイルアクセス、サードパーティアプリケーションの脆弱性攻撃、CC(Challenge Black Hole)攻撃、悪意のあるクローラースキャン、クロスサイトリクエストフォージェリ、およびWebサービスのセキュリティと安定性を保護するその他の攻撃。

新しい王冠の流行の世界的な発生は2020年に経済に打撃を与え、5Gやモノのインターネットなどの新しいインフラストラクチャが急速に上昇して経済を後押しする可能性があります。 HTTPS暗号化が一般的になり、従来のファイアウォール検出機能は失敗しました。したがって、サーバーがWEBアプリケーションファイアウォールを展開することは非常に重要です。オープンソースのwafはたくさんありますが、優れているものは多くありません。ここでは、多くの検索を行った後、誰もが学習できるように10個のオープンソースwafをコンパイルしました。 (これは企業が現金コストを節約するのに役立ちますが、実際の学習とマイニングのコストは非常に大きいです)



興味のある人はトスを勧めることができます:WebアプリケーションファイアウォールのLua保護ルールの動的更新(WAF)を実現するためのopenresty + nginxオープンソースフレームワーク





1、ModSecurity
ModSecurityには10年以上の歴史があります。当初、それはApacheセキュリティモジュールでした。その後、オープンソースのクロスプラットフォームWEBアプリケーションファイアウォールに発展しました。 WEBサービスで受信したデータと送信したデータを確認することで、Webサイトを保護することができます。
最も強力なのは、有名なセキュリティコミュニティOWASPです。このコミュニティは、一連の無料のアプリケーション保護ルールを開発および維持しています。これはいわゆるOWASPModSecurityコアルールセット(つまりCRS)であり、SQLインジェクション、XSSクロスサイトVPNスクリプト、DOSなどの数十の一般的なWEB ***メソッドをほぼカバーしています。
プロジェクトの住所: https://github.com/SpiderLabs/ModSecurity (nginxと完全に互換性があり、WAFはnginxによって公式に推奨されています)

2、HiHTTPS



hihttpsは、完全なソースコードとMQTT IoTファイアウォールがほとんどなく、ModSecurityルールおよびオープンソースと互換性のある高性能Webアプリケーションです。この機能は非常に使いやすく、約1,000万の実行可能ファイルですが、脆弱性スキャン、CC&DDOS、パスワードクラッキング、SQLインジェクション、XSS ***などの保護機能がすべて利用できます。
さらに重要なことに、機械学習に基づくhihttpsの商用バージョンも無料です。マシンは、教師なし学習のサンプルを自動的に収集し、対立ルールを自動的に生成します。ご存知のとおり、Alibaba Cloud / Tencent CloudなどのWAFは非常に高価であり、多くの中小企業はそれらを買う余裕がありません。無料のhihttpsをダウンロードして試すことができます。
プロジェクトの住所: https://github.com/qq4108863/ 公式サイト: http://www.hihttps.com

3、ナクシ
Naxsiは、Nginxモジュールに基づくファイアウォールです。独自のルール定義があり、低いルールを提唱しています。プロジェクトはC言語で記述されており、理解するにはNginxソースコードの優れたコマンドが必要です。
プロジェクトの住所: https://github.com/nbs-system/naxsi

4、OpenWAF

OpenWAFはNginx_luaに基づいていますか? HTTPリクエスト情報を分析するためのAPI。動作分析エンジンとルールエンジンの2つの機能エンジンで構成されています。ルールエンジンは主に単一のリクエストを分析し、動作分析エンジンは主にクロスリクエスト情報の追跡を担当します。
ルールエンジンは、modsecurityとfreewaf(lua-resty-waf)に触発され、luaを使用してModSecurityのルールメカニズムを実装します。
ルールエンジンに基づいて、プロトコル仕様、自動ツール、SQLインジェクション、クロスサイトVPN、情報漏えい、異常な要求を実行できます。ルールの動的な追加と脆弱性のタイムリーな修復をサポートします。欠点は、複雑であり、NginxおよびLua言語に精通していない開発者には適していないことです。
プロジェクトの住所: https://github.com/titansec/OpenWAF

5、FreeWAF
FeeWAFは、FreeWAFという名前のオープンソースのWEBアプリケーションファイアウォール製品であり、アプリケーション層で機能し、HTTPの双方向の詳細な検出を実行します。インターネットのリアルタイム保護による回避***アプリケーション層の脆弱性を使用して不正に取得または破棄Webサイトのデータは、SQLインジェクション、XSS、CSRF ***、バッファオーバーフロー、アプリケーション層DOS / DDOS ***など、あらゆる種類の***に効果的に抵抗できます。同時に、エラー情報、悪意のあるコンテンツ、 WEBサーバーが応答する標準以下のコンテンツは、機密情報の漏洩を回避し、Webサイト情報の信頼性を確保するために、リアルタイムでフィルタリングされます。しかし、プロジェクトは長い間更新されていません。

6、ESAPI WAF
これはOWASPが提供するオープンソースのWAFですか? J2EE実装に基づくESAPIプロジェクト。主に、XML構成を使用してファイアウォールを駆動します。インストール中に、ESAPIWEBApplicationFirewallFilterをWEB.xmlのフィルターとして構成して、アプリケーションの前後の入力と入力を処理します。

7、unixhot
unixhotは、Nginx + Luaを使用してカスタムWAFを実装することです。一言で言えば、HTTPリクエスト(プロトコル解析モジュール)、ルール検出(ルールモジュール)を解析し、さまざまな防御アクション(アクションモジュール)を実行し、防御プロセス(ログモジュール)を非常に簡単に記録することです。
プロジェクトの住所: https://github.com/unixhot/waf LuaWAF(建設中のコミュニティ)に似ています

8、Java WAF
Javaで開発されたWAFはほとんどありません。 Javaで開発されたAPIゲートウェイが見つかりました。 WAFはオープンソースプロキシLittleProxyに基づいて構築されているため、基盤となるWAFはNettyを使用していると言われています。セキュリティの傍受、さまざまな分析と検出、スクリプト(サンドボックス)、フロー制御/ CC保護などを機能的にサポートします。C言語は、Java愛好家にとって福音ではありません。
プロジェクトの住所: https://github.com/chengdedeng/waf

9、X-WAF
X-WAFは中小企業に適したクラウドWAFシステムであるため、中小企業も独自の無料のクラウドWAFを非常に便利に利用できます。コアはopenresty + lua開発に基づいており、waf管理のバックグラウンド:golang + xorm + macromを使用して開発され、バイナリ展開をサポートしています。
プロジェクトの住所: https://github.com/xsec-lab/x-waf

10、VeryNginx
VeryNginxは、高度なファイアウォール、アクセス統計、その他の機能を実装する?lua_Nginx_module(openrestry)?に基づいて開発されています。統合はNginxで実行され、Nginx自体の機能を拡張し、使いやすいWEBインタラクティブインターフェイスを提供します。
プロジェクトの住所: https://github.com/alexazhou/VeryNginx/

【その他のWAFの無料・無料インストール】

GoodWAF、CloudFlare、ShareWAF(すべて実名認証が必要です)。多くの商用WAF国内クラウドベンダーおよびサードパーティの中立ベンダーはここにリストされていません。

概要: hihttpsとmodsecurityは、最高のオープンソースのwaf、github検索です。カスタム開発が含まれるため、適切な視覚化はできません。
従来のWAFルールは、未知の脆弱性や未知のものに対処するのが困難でした。商用wafは、従来の機能エンジニアリングから機械学習の自動防御に移行しました。この点でオープンソースのwafはほとんどなく、hihttpsだけが機械学習をサポートする無料のWAFです。WEBセキュリティの未来はAIの世界でなければなりません。