1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWS WAFでLog4Sellを防御してみる

Posted at

はじめに

AWS WAFでのLog4Sell防御についてです。
設定は、マネージドルールを追加するだけなので、少し落穂拾い的なことを。

設定

現状、Log4Shellのルールは、AWS-AWSManagedRulesKnownBadInputsRuleSetに含まれています。
AWSManagedRulesKnownBadInputsRuleSetとは、AWSが提供する、攻撃性のあるインプット情報を判定するルールセットになります。
Log4JRCEというルールが、Log4Sellのためのものになります。

今回のLog4Sellの流行を受けて、至急緩和策を入れたいけれど、WAFでの誤検知も怖い…
Log4Sellだけでも防げないかといった要望もあると思います。

そのような時は、Log4JRCEのみブロックモードで動かしつつ、他のルールはカウントモードで動かすといった対応が可能です。

AWS-AWSManagedRulesKnownBadInputsRuleSetを追加後、以下のような設定をすることで実現できます。

Screenshot at Dec 19 13-55-44.png

AWS-AWSManagedRulesKnownBadInputsRuleSetはルール数が少ないので、他をポチポチカウント設定することも苦ではないですが、大量のルールを保有するルールセットで同様のことを行う場合は、上方のall rule設定で操作すると楽です。

ログで確認

以前はfirehoseでS3に格納したログをAthenaで解析していたのですが、今は直接Cloudwatch Logsで見れちゃいますし、Log Insightで解析することも可能なので、すごく楽になりました。

ログから、どのルールでBlockしたのかを確認することが可能です。

canvas (18).png

ちなみに、カウントモードで運用していると、以下のようなログになります。ちょっと注意が必要です。
Screenshot at Dec 19 15-15-41.png

まとめ

AWS WAFでの設定について、紹介させていただきました。
ただ、これはあくまで緩和と考えています。
緩和でバージョンアップまでの時間を稼ぎつつ、Log4Shellの根本対策のため、サーバー側でのLog4jのアップデートをしましょう!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?