Browsing articles from "10月, 2012"
10月 26, 2012

DNSアタックとiptablesフィルタ

最近DNSに対してのアタックが見られる。
トランジット外側からDNSクエリを網内に要求。
その要求を網内端末にて応答、キャッシュサーバが応答して負荷上昇。
要求してくる内容は
ripe.net ANY のクエリ
60byte程度の要求が400byteの応答データに増加する。
DDoS攻撃で有名なクエリはisc.orgで、
こいつは60byte程度の要求を1500byte程度の応答データに増幅させる。

対応策は
1.トランジット側でおかしい要求を出すIPをフィルタする
2.サーバ側で特定の要求を拒否する

1.でフィルタしてしまえば網内端末に要求が飛ぶこともなく
事象を収束させることができるが、
IPを変えられてしまうとその都度フィルタの架け替えを実施する必要がある。

2.の場合サーバ側でDNSクエリを判別してフィルタさせることで特定のクエリに応答させなくすることが可能。
iptables -A INPUT -p udp -m string –hex-string “|03697363036f72670000ff|” –algo bm –to 65535 -j DROP

上記ルールは「isc.org ANY」に対応。hex-stringの後に記載した16進の羅列が「isc.org ANY」に対応する。
この文字列はwireshark等のパケット解析ツールを使ってパケットの中身を見ることで自在に変更可能。

10月 7, 2012

uptimeカウンタ

仕事場の出来事メモ

サーバが突然リブートしだした。
タイトルのとおりuptimeカウンタのオーバーフロー、俗に言う497日問題によるもの。

linuxカーネル2.4まではuptimeカウンタにもちいるtime.cのjiffies変数が32bit長であるため
2の32乗=4,294,967,296まで表示が可能。
uptimeカウンタは10msで1upするため42,949,672.96秒の表示ができる。
これを3600秒で割れば11930.46時間。
続いて24時間で割れば497.10日

linuxカーネル2.6ではこのjiffies変数が64bit長であるため問題は解消される。
計算してみると2の64乗=18,446,744,073,709,551,616
18,446,744,073,709,551,616/100/3600/24/365=5,849,424,173.55
58億年。地球の年齢に匹敵する。

これはCPUのアーキテクチャが64bit版だろうが32bit版だろうが関係ない。

2.4系カーネルの場合は1年に1回メンテナンスリブートしなければいけない。
そんな古いのを使わずにさっさとリプレイスというのもあるけれども。

10月 7, 2012

サーバ増強中

長らく記載がありませんでした。

先日サーバを増強しました。HDDを2台追加し3台構成で運用中です。
耐障害性を向上させるための増強になります。

ただ本体は1台だったり自宅サーバでUPSなしだったりするので
「ほんのちょっとだけ」耐障害性UPといったところでしょうか。

JVN [Japan Vulnerability Notes]

Categoly

Posted dates

2012年10月
« 3月   1月 »
 123456
78910111213
14151617181920
21222324252627
28293031  

NEC Direct(NECダイレクト)

NEC Direct(NECダイレクト)