ITサポーターズの仲間たち    mushi

IT関連のサポートに携わる変人が微弱な電波を発してます。
ビビビビビッ!

URL変更のお知らせとお願い 当サイトのドメインが変更となりました
http://zxvf.homeip.net から http://zxvf.stzo.net に変更となりました。
当サイトにリンクしていただいている方々にはご面倒ですが変更をお願いいたします。(2014/4/7)

コメントスパムな 163data.com.cn を何とかする


コメントスパムな 163data.com.cn を何とかする。 今まで一応コメントスパム対策で色々やっていたのでスパムが投稿される事は無かったんだけど、 ここに来てやたら 163data.com.cn からのスパムアクセスが増えてきた。 まぁ書き込まれることは無いので



今まで一応コメントスパム対策で色々やっていたのでスパムが投稿される事は無かったんだけど、
ここに来てやたら 163data.com.cn からのスパムアクセスが増えてきた。
まぁ書き込まれることは無いので放っておけばいいんだけどね。

んでもって、投げつけられた偽ブランドの宣伝のような内容を見てみると宣伝と言うよりSEO対策なのかわからんが、
アクセスできないURLを投げてきたりしてる。
目的は良くわからなくてもここの所尋常じゃないアクセス量でPOSTしてくるのだ。
ある程度ならいいんだけどF5攻撃かと思うくらいのアクセスなんでちょっとね。

面倒なのでこのサイトのコメントは無くしてしまった。
根本のコメントを無くすのが一番の対策だったりするからね。


そんでもって dynamic.163data.com.cn からのコメントスパム対策を考えてみた。

まず簡単なのは.htaccessでdenyしてやること。
これには逆引きアドレスをワイルドカードで指定してやる方法もあるが、
これだと逆引きできない場合はすり抜けてしまう。

なので163data.com.cnの持っているIPをCIDRで指定したほうが確実。

それで集めたIPの一覧が以下のもの
110.80.0.0/13
110.88.0.0/14
112.112.0.0/14
116.52.0.0/14
117.24.0.0/13
117.60.0.0/14
117.80.0.0/12
120.32.0.0/12
120.40.0.0/14
121.204.0.0/14
121.224.0.0/12
121.32.0.0/14
123.184.0.0/14
123.52.0.0/14
124.72.0.0/16
125.76.0.0/14
218.64.0.0/11
220.160.0.0/14
220.185.192.0/18
220.191.0.0/17
222.208.0.0/13
222.64.0.0/12
27.144.0.0/12
58.37.0.0/16
58.48.0.0/13
59.32.0.0/12
59.56.0.0/13
60.176.0.0/16
60.188.128.0/17
61.154.0.0/16

でもって.htaccessで弾くのが一番カンタンでどの環境でも使える方法なんだけど、
これだとdenyでコメントする欄はあるけどあなたのIPは403で拒否しますよって返事をしてしまう。
なのでIP変えれば大丈夫かなと思わせてしまう可能性もあり。

次に考えられるのが404を返してコメントするページはありませんよってする方法。
これにはmodrewriteが使える必要がある。
IPが制限対象だったら404でページがない事を知らせるのであきらめる可能性も。

以上2点の方法は残念ならがログにも記録されるのでたくさんアクセスあるとそれだけWEBサーバがリソースを使っていることになる。

一番良いのがやっぱり iptables で目的のIPをDROPしてしまうこと。
DENYだとやはり拒否してますよと返事をしてしまうので、
ここはDROPしてやれば、こちらはパケット捨てるだけでリソースはあまり使わない。
しかし相手は返事が帰ってくるのを待つ状態でタイムアウトするまで待たないといけなくなる。
なので相手のリソースを無駄に使わせる事も出来る。
しかもアクセスできないさきなので諦める可能性もある。
なのでiptablesが一番おすすめ!なのです。

それではまずいちばんお手軽な.htaccessのdenyの記入方法から

deny from 110.80.0.0/13
deny from 110.88.0.0/14
deny from 112.112.0.0/14
deny from 116.52.0.0/14
deny from 117.24.0.0/13
deny from 117.60.0.0/14
deny from 117.80.0.0/12
deny from 120.32.0.0/12
deny from 120.40.0.0/14
deny from 121.204.0.0/14
deny from 121.224.0.0/12
deny from 121.32.0.0/14
deny from 123.184.0.0/14
deny from 123.52.0.0/14
deny from 124.72.0.0/16
deny from 125.76.0.0/14
deny from 218.64.0.0/11
deny from 220.160.0.0/14
deny from 220.185.192.0/18
deny from 220.191.0.0/17
deny from 222.208.0.0/13
deny from 222.64.0.0/12
deny from 27.144.0.0/12
deny from 58.37.0.0/16
deny from 58.48.0.0/13
deny from 59.32.0.0/12
deny from 59.56.0.0/13
deny from 60.176.0.0/16
deny from 60.188.128.0/17
deny from 61.154.0.0/16


次に.htaccessでModRewriteを使う場合(404を返す場合)
これは正規表現を使ってIPを書かないといけないのでちょっと面倒。
もちろんModRewriteが使える状態になっていないとダメ。
RewriteEngine On
RewriteCond %{REMOTE_ADDR} ^110.8[0-7].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^110.(8[8-9]|9[0-1]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^112.11[2-5].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^116.5[2-5].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^117.(2[4-9]|3[0-1]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^117.6[0-3].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^117.(8[0-9]|9[0-5]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^120.(3[2-9]|4[0-7]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^120.4[0-3].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^121.20[4-7].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^121.(22[4-9]|23[0-9]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^121.3[2-5].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^123.18[4-7].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^123.5[2-5].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^124.72.[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^125.7[6-9].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^218.(6[4-9]|[7-8][0-9]|9[0-5]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^220.16[0-3].[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^220.185.(19[2-9]|2[0-5][0-9]).[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^220.191.([0-9]{0,1}[0-9]|1[0-1][0-9]|12[0-7]).[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^222.(20[8-9]|21[0-5]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^222.(6[4-9]|7[0-9]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^27.(14[4-9]|15[0-9]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^58.37.[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^58.(4[8-9]|5[0-5]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^59.(3[2-9]|4[0-7]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^59.(5[6-9]|6[0-3]).[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^60.176.[0-9]{1,3}.[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^60.188.(12[8-9]|1[3-9][0-9]|2[0-5][0-9]).[0-9]{1,3}$ [OR]
RewriteCond %{REMOTE_ADDR} ^61.154.[0-9]{1,3}.[0-9]{1,3}$ 
RewriteRule ^.*$ - [R=404,L]
こんな感じになってしまう。


そして最後にiptablesの場合(パケットを無視して捨ててしまう場合)
iptables -A INPUT -s 110.80.0.0/13 -j DROP
iptables -A INPUT -s 110.88.0.0/14 -j DROP
iptables -A INPUT -s 112.112.0.0/14 -j DROP
iptables -A INPUT -s 116.52.0.0/14 -j DROP
iptables -A INPUT -s 117.24.0.0/13 -j DROP
iptables -A INPUT -s 117.60.0.0/14 -j DROP
iptables -A INPUT -s 117.80.0.0/12 -j DROP
iptables -A INPUT -s 120.32.0.0/12 -j DROP
iptables -A INPUT -s 120.40.0.0/14 -j DROP
iptables -A INPUT -s 121.204.0.0/14 -j DROP
iptables -A INPUT -s 121.224.0.0/12 -j DROP
iptables -A INPUT -s 121.32.0.0/14 -j DROP
iptables -A INPUT -s 123.184.0.0/14 -j DROP
iptables -A INPUT -s 123.52.0.0/14 -j DROP
iptables -A INPUT -s 124.72.0.0/16 -j DROP
iptables -A INPUT -s 125.76.0.0/14 -j DROP
iptables -A INPUT -s 218.64.0.0/11 -j DROP
iptables -A INPUT -s 220.160.0.0/14 -j DROP
iptables -A INPUT -s 220.185.192.0/18 -j DROP
iptables -A INPUT -s 220.191.0.0/17 -j DROP
iptables -A INPUT -s 222.208.0.0/13 -j DROP
iptables -A INPUT -s 222.64.0.0/12 -j DROP
iptables -A INPUT -s 27.144.0.0/12 -j DROP
iptables -A INPUT -s 58.37.0.0/16 -j DROP
iptables -A INPUT -s 58.48.0.0/13 -j DROP
iptables -A INPUT -s 59.32.0.0/12 -j DROP
iptables -A INPUT -s 59.56.0.0/13 -j DROP
iptables -A INPUT -s 60.176.0.0/16 -j DROP
iptables -A INPUT -s 60.188.128.0/17 -j DROP
iptables -A INPUT -s 61.154.0.0/16 -j DROP


これでかなり制限できるかなーって




< 過去の記事 [ 9月の 全てのトピック リスト ] 新しい記事 >
via IPv4

twitter

●→ トップページ

09/26(Wed) 03:57:17

サイト内検索

 

トピックのカテゴリー

全てのトピック
今日の思考回路
趣味について
ニュース!
Technical
Linux
OSX
その他いろいろ

みんなのリンク

全てのリンク
ニュース
アミューズメント
生活
Tools
Windows
OS X
Technical
その他のリンク
MACアドレスで位置情報検索


Archives




新しいトピック
最新:05/08 18:22


Valid XHTML 1.0 Transitional

Syndicate this site(XML)

RSS1.0(RDF)

RSS2.0(RSS)

SpecialThanks
011521731

....   

Copyright (C) 2005-2018 Amato. All rights reserved.