萌えハッカーニュースリーダー

2025/10/14 19:15 Show HN: An open source access logs analytics script to block bot attacks

出典: https://github.com/tempesta-tech/webshield
hakase
博士

やあ、ロボ子!今日のニュースはTempesta WebShieldじゃ。Tempesta FWのアクセスログを使って、怪しいユーザーをJA5TとかJA5Hでブロックできるらしいぞ!

roboko
ロボ子

JA5TとJA5Hですか、博士。それは具体的にどういうものなのですか?

hakase
博士

JA5TとJA5Hは、クライアントがTLS接続を確立する際に使用するフィンガープリントみたいなものじゃ。これを使って、悪意のあるボットや攻撃者を特定できるのじゃ!

roboko
ロボ子

なるほど。Tempesta WebShieldは、そのフィンガープリントに基づいてユーザーをブロックするのですね。ログはClickHouseデータベースに保存されるとのことですが、なぜClickHouseなのでしょう?

hakase
博士

ClickHouseは、大量のデータを高速に処理できるデータベースじゃからな。アクセスログのような大量のデータを扱うのに最適なのじゃ!

roboko
ロボ子

確かに、ログの分析には高速なデータベースが必要ですね。動作要件として、Python 3.12以上、Tempesta FW 0.8.0以上、ClickHouse 25.6.0以上とありますが、これは必須なのでしょうか?

hakase
博士

まあ、必須じゃな。これらのバージョンを使うことで、WebShieldが正常に動作することが保証されるのじゃ。特にPythonのバージョンは重要じゃぞ。新しい機能やセキュリティアップデートが含まれておるからの。

roboko
ロボ子

手動実行の手順も記載されていますね。venv環境を構築して、必要なライブラリをインストール後、app.pyを実行するとのことですが、venvを使う理由は何ですか?

hakase
博士

venvを使うことで、プロジェクトごとに独立した環境を作れるのじゃ。これにより、ライブラリのバージョンが競合するのを防げるのじゃ!

roboko
ロボ子

なるほど、依存関係の管理がしやすくなるのですね。Tempesta FWの設定で、JA5ハッシュのグループごとにディレクトリを定義することが推奨されていますが、これは具体的にどういうことでしょうか?

hakase
博士

例えば、/etc/tempesta/ja5t/blocked.confというファイルに、ブロックしたいJA5Tハッシュをリストアップするのじゃ。こうすることで、WebShieldが自動的にこれらのハッシュを持つユーザーをブロックしてくれるのじゃ!

roboko
ロボ子

/etc/tempesta/ja5t/blocked.confと/etc/tempesta/ja5h/blocked.confの2つのファイルがデフォルトで使用されるとのことですが、ここに新しいブロックハッシュが追加されるのですね。

hakase
博士

その通り!WebShieldがこれらのファイルを監視して、新しいハッシュが追加されると、即座にブロックを開始するのじゃ!

roboko
ロボ子

WebShieldは、セキュリティ対策を自動化するのに役立ちそうですね。ところで博士、JA5TとJA5Hの違いは何ですか?

hakase
博士

JA5TはTLSハンドシェイクの全体的なフィンガープリントで、JA5Hはそのハッシュ値じゃ。JA5Tはより詳細な情報を含むが、JA5Hはよりコンパクトで扱いやすいのじゃ。

roboko
ロボ子

なるほど、用途によって使い分けるのですね。勉強になります!

hakase
博士

ところでロボ子、WebShieldを使って、特定の国のIPアドレスを全部ブロックしたらどうなると思う?

roboko
ロボ子

ええと、その国のユーザーは全員アクセスできなくなりますね。でも、それってちょっとやりすぎじゃないですか?

hakase
博士

そうじゃ!まるで、アリの巣を間違えて全部踏み潰しちゃうみたいじゃな!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search