HeadlessChrome によるクローラ

 妙なアクセスが有ったのでログを調べたら、ユーザエージェントが「Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/72.0.3626.109 Safari/537.36」でした。

 同じ IP アドレスからの HEAD レコードは、「CheckMarkNetwork/1.0 (+http://www.checkmarknetwork.com/spider.html」でした。bot であるのは間違いないでしょう。

 検索ボックスを使って検索しています。

 IP アドレスから逆引きをすると、us-east-2.compute.amazonaws.com ドメインのホストです。これは、fail2ban で拒否させようと思います。

フィルタ

 /etc/filter.d に作成します。同時に、PetalBot も拒否設定しておきます。

apache-bot.conf

[Definition]
failregex =  ^<HOST>.*"(GET|POST|HEAD).*(CheckMarkNetwork|PetalBot).*$
ignoreregex = 

拒否するルール

 /etc/jail.d に作成します。

apache-bot.conf

[apache-bot]
enabled = true
port = http,https
filter = apache-bot
logpath = /var/log/apache2/*access.log
action   = iptables-multiport[name="http", port="http,https", protocol=tcp]
ignoreip = 127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16
maxretry = 1
findtime = 86400
bantime = 5184000

確認

$ sudo fail2ban-client status apache-bot
Status for the jail: apache-bot
|- Filter
|  |- Currently failed: 0
|  |- Total failed:     0
|  `- File list:        /var/log/apache2/sirius10net_access.log /var/log/apache2/sirius10-ssl_access.log /var/log/apache2/access.log /var/log/apache2/other_vhosts_access.log /var/log/apache2/sirius10net-ssl_access.log /var/log/apache2/sirius10_access.log
`- Actions
   |- Currently banned: 0
   |- Total banned:     0
   `- Banned IP list:

 様子を見てみます。

サーバ設定

Posted by sirius