コメントスパムへの対策 デモサイトサーバ側の対応
Starbug1のデモサイトがコメントスパムの標的になってしまった(http://demo.starbug1.com/starbug1ja/index.cgi/its/ticket/38)ので、調査しつつ対策を行ないました。
BotNet
まず、BotNetというのがあるというのがあるらしい。
ボットネット(Botnet)とは、サイバー犯罪者がトロイの木馬やその他の悪意あるプログラムを使用して乗っ取った多数のコンピュータ(ゾンビPCという)で構成されるネットワークのことである。
ボットネット – Wikipedia
んー。これは醜いインターネットですね。
確かにapacheのログを見ると、同じコメントスパムのPOSTリクエストが、連続して違うIPアドレスから送信されていた。これらは、BotNetの中からランダムに抽出されたクライアントから、コメントスパムを投稿しているという訳か。
対策
今回対策するのが、デモサイトだったので、簡易的な対策でお茶を濁すことにした。BotNetからのアクセスらしき以下のUser-Agentを弾くようにした。
- (compatible; MSIE 6.0; Windows NT 5.1; SV1)
- WindowsXPのIE6であり、.net環境がインストールされてないOSからのアクセス。普通に使ってる人がこのUser-Agentを送ってくるとは考えにくい。
- Firefox/1.0.4
- えらく古いFirefox。これも考えにくい。
この方法の対策は、完全にBotNetからのアクセスを判定できる訳ではなく、それらしいクライアントを排除してしまうので、BotNet以外からのアクセスを弾いてしまう可能性があります。
.htaccessにmod_rewriteの設定を行ないました。
RewriteEngine On RewriteCond %{HTTP_USER_AGENT} "^.*\(compatible; MSIE 6.0; Windows NT 5.1; SV1\).*$" [OR] RewriteCond %{HTTP_USER_AGENT} "^.*Firefox/1.0.4.*$" RewriteRule .* - [F]
今のところ、これでブロックできている様子。
BotNet Database が欲しい
BotNetかどうかをチェックするためのAPIが欲しい。BotNet データベース欲しいな。既にあったりするかな。(誰か作ってくれないかなw)
BotNet IPを晒す
7/28から7/30に、デモサイトにアクセスしてきたBotNetに属すると思われるIPアドレスです。
自分が管理してるIPが含まれているようだったら、感染してる可能性があるので、対策して下さい。
間違ってたら、教えて下さい。
109.86.108.184 110.138.178.143 113.232.104.85 118.169.77.147 118.170.35.123 118.175.2.75 118.233.160.104 118.81.118.229 118.96.143.59 119.100.114.173 119.246.199.121 119.247.143.232 119.247.63.184 119.70.40.120 120.50.54.20 121.10.120.214 121.11.158.158 121.204.0.2 121.241.48.203 121.242.73.7 121.52.151.142 121.57.2.72 121.8.142.60 122.100.95.110 122.169.108.205 122.225.56.18 123.202.189.132 123.5.167.237 124.129.222.45 124.160.27.162 124.16.144.133 124.207.141.123 124.238.242.98 124.244.132.130 124.244.170.26 124.30.27.20 124.42.10.119 125.162.42.195 130.238.83.197 144.140.129.30 144.140.46.10 144.140.46.13 146.191.228.22 148.223.66.51 151.9.14.133 167.206.203.101 168.172.251.253 173.22.170.127 174.142.39.14 180.149.49.114 188.129.241.232 189.115.138.23 189.125.212.212 18.181.3.39 190.144.53.138 190.152.223.27 193.84.77.90 194.149.209.174 194.179.76.107 195.168.109.60 195.229.241.176 195.235.161.10 195.56.42.131 196.216.68.42 196.216.71.51 200.144.17.222 200.146.123.242 200.170.221.10 200.238.83.49 200.69.209.33 200.87.208.173 201.20.18.165 201.38.240.167 201.64.105.81 202.113.239.21 202.164.38.220 202.215.38.125 202.28.27.4 202.43.182.248 202.69.8.131 203.110.240.131 203.153.42.60 203.175.19.167 203.178.135.13 203.181.85.42 203.183.45.166 203.213.216.30 203.218.214.214 205.202.120.216 205.209.140.212 208.188.3.39 208.79.238.132 208.96.213.149 209.190.75.75 210.19.196.98 210.212.214.184 211.115.127.139 211.138.191.87 211.161.159.74 211.24.133.54 212.118.11.154 212.241.176.94 213.0.89.6 213.0.89.7 213.153.62.110 213.210.200.170 217.150.252.80 217.170.97.242 217.196.164.35 217.218.241.200 217.29.30.20 217.79.62.102 218.161.92.137 218.173.122.19 218.199.208.20 218.210.199.252 218.248.45.51 219.139.158.59 219.232.238.56 219.32.120.66 220.113.9.162 220.163.114.60 220.199.6.54 220.242.122.10 221.10.44.214 221.124.245.217 221.132.46.2 221.186.170.142 221.249.64.52 222.124.166.58 222.166.181.181 222.166.181.42 222.166.181.47 222.58.225.154 222.58.227.131 222.58.227.134 222.58.227.140 222.58.227.141 222.77.14.54 222.77.14.55 24.77.246.231 41.190.16.17 41.222.65.173 41.223.157.14 41.234.204.166 58.54.255.218 59.165.185.242 60.39.121.81 61.128.235.20 61.135.134.214 61.178.74.38 61.18.170.115 61.19.26.83 61.244.96.244 61.57.68.216 62.122.205.28 62.193.13.136 66.232.120.2 66.8.77.90 66.90.85.12 68.15.91.138 69.134.72.141 69.164.207.128 70.86.166.34 72.52.65.4 72.53.160.200 74.115.0.251 74.115.6.56 74.115.6.57 77.108.68.235 77.94.32.33 77.94.32.36 77.94.32.38 78.39.200.25 79.160.18.80 80.90.116.141 81.169.171.191 82.99.195.94 83.234.14.150 85.226.254.114 85.233.93.114 86.109.113.73 86.96.226.20 87.106.248.36 87.106.251.235 87.120.157.104 88.198.39.244 88.202.124.121 88.248.114.46 89.207.215.4 89.2.196.213 91.186.221.26 91.203.240.77 91.214.45.63 92.237.186.81 92.48.80.107 92.49.21.196 93.167.194.250 93.174.93.154 93.186.104.10 93.62.4.207 93.63.71.211 94.198.47.6 95.169.190.2 95.225.87.50 96.31.86.184