Log4jとは何ですか? #
Log4jは、 Apache Foundationグループによって開発・リリースされた、ログ機能を提供するオープンソースのJavaライブラリです。このライブラリは、 Apache Struts2、Apache Solr、Apache Druid、Apache Flink、Apache Swiftといった複数のApacheフレームワークに含まれているだけでなく、 Netty、MyBatis、Spring Frameworkなどでも使用されているため、 Javaアプリケーションで世界的に広く利用されている多くのアプリケーションやサービスの依存関係として使用されています。
Log4j の脆弱性とは何ですか? #
影響を受けるバージョンのLog4jログライブラリに検証されていないユーザー入力を渡すアプリケーションは、脆弱性を抱えています。Log4jの脆弱性により、バージョン2.0-beta9から2.14.1まで、認証なしでリモートコードを実行できます。以下に、Log4jの脆弱性がどのように悪用されるかを説明します。
Log4j 軽減のための優先アクション #
Log4jインスタンスが既知の場合は、最新のアップデートをインストールしてください。最初のステップは、組織内のLog4jインスタンスを検出し、公式リポジトリから最新のアップデートを適用することです。
導入済みのアプリケーションを保護するために、WAFポリシールールを適用してください。組織内でWebアプリケーションファイアウォール(WAF)を使用することで、この脆弱性の悪用を監視およびブロックする能力を向上できます。URLに「jndi:ldap」などの文字列が含まれるリクエストは必ずブロックしてください。WAFの亜種は現在のWAFルールを回避したり、LDAP機能を使用しているアプリケーションが使用できなくなったりする可能性があることに注意してください。必ず最新の状態に更新してください。
Log4j 軽減のための Web アプリケーション ファイアウォールとして Relianoid を使用することを検討してください。
Relianoid は Log4j の脆弱性の影響を受けますか? #
Relianoidの機器や公共サービスは、Apacheフレームワークを使用していないため影響を受けません。
Relianoid Web アプリケーション ファイアウォールを使用して、Log4j の脆弱性からアプリケーションを保護する方法 #
アプリケーションの仮想サービスまたはファームが作成されたら、次の手順を適用して WAF ルールを作成します。
新しいルールセットを作成する
新しいを作成します 行動 新しいルールセットのルール。ルールの設定は次のようになります。
解決策: 拒否 (リクエストをカットし、残ったルールを実行しない)
フェーズ: リクエストヘッダーが受信される
次の構成でルールに条件を作成します。
変数: REQUEST_URI、REQUEST_HEADERS
変換: 小文字、urlDecodeUni
演算子: strContains
オペレーティング: jndi:ldap
最後に、ルールセットを起動し、目的のファームに適用します。
このルールセットでは、すべての HTTP リクエストの URL とヘッダーが分析され、脆弱な文字列が検索されることに注意してください。


