enemy
Know Your Enemy
The Tools and Methodologies of the Script Kiddie
Last Modified: 21 July, 2000
Translated by SHIBUYA Yoshihiro (Self-Defence Force)
Original document is here
指揮官は敵から自分自身で守れと言った.真っ先に敵は誰なのかを知るべきである.この軍隊の教義はネットワークセキュリティの世界にもそのまま当てはまる.ちょうど軍隊のように,守ろうとするリソースがある.これらのリソースを守るのに,あなたは誰があなたにとって脅威なのか,そして敵はどのように攻撃をしてくるのかを知る必要がある.シリーズの最初のこの記事では,ツールと最もありふれた脅威であるScript Kiddieの原理について議論する.もし,あなたもしくはあなたの組織がインターネットにつながっていれば,この脅威はあなたにも適用される.
Know Your Enemyシリーズはツール,戦術,そしてクラッカー社会の動機を教えるために捧げられる. Know Your Enemy II : これらの脅威をいかに排除するか,敵がどのようなツールを使い,どのような脆弱性を探しているかの特定に焦点を当てる.Know Your Enemy 3 : 敵が管理者権限を奪取したら何が起こるか,特にどのようにトラックをカバーし,次に何を行うかに焦点を当てる. Know Your Enemy Forensics : それらの攻撃をどのように分析するかをカバーする. Know Your Enemy Motives : 敵のコミュニケーションをキャプチャすることによって,クラッカー集団の動機と真理を導き出す. Know Your Enemy Worms at War : ウインドウシステムの脆弱性をワームがどのように自動攻撃するかをカバーする.
Who is the Script Kiddie
Script Kiddieは,どこが攻撃しやすいのかを探す者を指す.彼らは特別な情報を持っているわけではなく,また,特別の企業を狙っているわけではない.彼らの目標はできるだけ簡単な方法で管理者権限を奪取することにある.彼らは少ない回数だけ攻撃を行い,全インターネットの中から搾取できるところを探す.遅かれ早かれ彼らは脆弱なところを発見する.
一部は,独自のツールを開発したり,精巧なバックドアを仕掛ける玄人もいる.その他は何もアイデアが無く,プロンプトからgoとタイプするだけである.彼らの技術レベルに関係なく,みな共通の戦略を持ち,ランダムに脆弱箇所をあさり,搾取する.
The Threat
ターゲットをランダムに選び、スクリプトを動かすのは危険な脅威と言える。遅かれ早かれあなたのシステム及びネットワークは探り当てられ、隠しおおせなくなるでしょう。たった二日でスキャンされ、誰も気づかなかったことに驚いていた管理者を知っている。それらのシステムはスクリプトによりネットワークを掃くようにスキャンされたのである。
もしそれが個人的な限られたスキャンであっても、あなたの記憶に残るでしょう。何百万というインターネット上のシステムのなかで誰もあなたを探したりはしないだろうが、そういう問題で はない。これらツールのほとんどは誰でも使えるように広く配布されている。ものすごい早さでこれらツールを得る人口が増えている。突然数の法則が我々に敵対する。多くのインターネットユーザがこれらのツールを使うことでこれらは疑問でなくなり、実際にクラックされているであろう。
これは、曖昧なセキュリティが失敗するという素晴しい例である。あなたは、あなたのシステムが誰も知らなければセキュリティが保たれていると思っているでしょう。そのシステムが重要でないとしても、なぜ彼らは狙ってくるのか。スクリプトによってプロテクトされていないシステムを探し、見つかればクラックしやすいのである。
The Methodology
スクリプトキディの実行方法は単純である。インターネット上でとくに脆弱な部分を探し、見つければ侵入する。彼らが使うツールのほとんどが自動で、ちょっとしたインタラクションを必要とする。あなたがツールを起動すると、数日後に結果が送られてくる。2つの侵入手口が異なるように、2つのツールも異なる。しかしながら、ほとんどのツールは同じ戦略である。まず、スキャンできたIPのデータベースを作る。その後で、そのIPの脆弱性を探るというものである。
例えば、Linuxのimaped\_exploit.cのようなものを使うとする。最初に、スキャンできたIPのデータベースを作る。データベースができたら、そのなかのどのシステムでLinuxが動いているのか知りたくなる。最近はnmapのようなもので異常パケットを送り、その返答で簡単にシステムが分かる。そのようにして、そのシステムではLinuxが動いていると判明する。そのようにして脆弱なシステムが分かっていく。
あなたはこのスキャン行為が極端にトラフィックを混雑させ、バレてしまうと思うであろう。しかし、多くの人はいちいちシステムをモニタしていないし、スキャンされている最中でも気づかない。また、スクリプトキディは静かに単独システムを探す。一度彼らが侵入してしまうと、攻撃のパッドを当ててしまう。彼らは図々しくも対した迎撃を受けずにインターネット中をスキャンする。もし彼らのスキャンが発見されれば、システム管理者及び善意のハッカーに責任がかかってくる。
また、それらのスキャン結果はしばしば他のユーザに公開され、後日同様なことをされる。例えば、Linuxシステムのどのポートが開いているかというデータベースを作成したりする。彼らはimapによって見つけた脆弱性を使い、侵入するためにデータベースを構築する。しかし、今から1か月後には他のポートでも同じ侵入がなされる。新しいデータベースを作る(最も時間がかかる)変わりに、よその成功したデータベースと脆弱点で妥協する。その代わりとして、スクリプトキディは互いにデータを買うかシェアする。 Know Your Enemy : Motives で例示してある。スクリプトキディはスキャンすることなく侵入することができるのである。最近システムがスキャンされた形跡がないからといって、セキュアであるとは限らないのである。
ハイレベルなクラッカーがトロイの木馬やバックドアを仕掛ければ仕掛けるほど、スクリプトキディに侵入されてしまう。バックドアは、クラッカーの好きなときに簡単かつ気づかれずにシステムにアクセスできる。トロイの木馬は見つからずに侵入ツールを仕掛けることができる。彼らはログや、システムプロセス、ファイル構造に痕跡を残さない。彼らは積極的にインターネットをスキャンする安全で居心地のよい場を作るのである(要は踏み台)。さらなる情報はKnow Your Enemy IIIを参照のこと。
これらの攻撃は一日の決まった時間にあるわけではない。多くの管理者は攻撃が来るであろうと信じて、夜にログ等をチェックする。スクリプトキディはいつでも攻撃を仕掛けてくる。24時間スキャンされれば、いつ侵入されるか分からない。また、これらの攻撃は世界中から行われる。インターネットに地理性がないように、侵入にも時間概念がない。クラッカーの居場所が夜中でも、あなたにとっては昼の1時であることもある。
この脆弱システムへのスキャン方法は様々な目的で使用される。最近、DDoSという、新たなサービス拒否攻撃が報告されている。これらの攻撃はたとえ世界に攻撃すべきシステムがなくても、単独のユーザが何百ものシステムを操作する。これらの土台となるシステムは遠隔でターゲットに対しサービス拒否攻撃を実行するよう操作される。複雑なシステムが踏み台になるにつれ、極端に攻撃が読めなくなる。多くのシステムを乗っ取ると、スクリプトキディの戦術は買い取られる。脆弱なシステムはランダムにDDoSのための踏み台とされる。多くのシステムが乗っ取られると、強力なサービス拒否攻撃となる。その一例として「stacheldraht」がある。さらにDDoS攻撃の情報が欲しければ、Paul FergusonのDenialinfoのページを参照するとよい。
The Tools
ツールの使用法は極端に単純だ。ほとんどはオプション無しの単独目的に使われる。最初はIPデータベースの構築に使われる。これらのツールはランダムに見境なくインターネットをスキャンする。例えば、1つのツールは単純にa,bまたはcのオプションをつける。そしてどの規模のネットワークをスキャンするかを決める。ツールはランダムにスキャンするIPを選ぶ。もう1つのツールはドメイン名を使う。ツールはIPデータベースにドメイン名、サブドメインを記録する。スキャンによって200万の.com.やedu等のIPデータベースを作成する。一度網羅すると、バージョン、OS、オープンしているサービス等、脆弱性を探るためにツールにスキャンされる。一度脆弱性が見つかれば、クラッカーは攻撃する。これらのツールがどのように使われるかは、Know Your Enemy :Forensics を参照のこと。
How to Protect Against This Threat
自分自身で身を守るには段階がある。最初に、スクリプトキディは簡単に攻撃できるところを探す。あなたのシステムに脆弱性がないと確信できるように施さなければならない。www.cert.org及びwww.ciac.orgに攻撃の情報が記載されている。また、listserv bugtraq(securityfocus.com)はすぐれた情報源の一つである。もう一つの守護方法は必要なサービスだけを起動することである。もし必要なサービスがなければ電源を切っておく。サービスが必要なら最新バージョンに置き換える。例は、Armoring Solaris, Armoring Linux or Armoring NT.をチェックせよ。
あなたがツールを覚えるにつれて、DNSサーバがしばしば攻撃用システムのデータベースに使われる。ネームサーバで範囲を制限することができる。ログがオーソライズされていない情報も提供してくれる。www.isc.org/bind.htmlで最新のBINDにアップグレードすることを勧める。もう1つの選択枝はBINDの代りにdjbdnsを使用することだ。最後に、調査されていないか自分のシステムを確かめる。一度確認すれば、ネットワーク上の脅威と行動を把握することができる。
Conclusion
スクリプトキディはすべてのシステムにとって脅威である。彼らは場所や価値によらず、見つからないようにすべてのシステムをスキャンする。遅かれ早かれ、あなたのシステムは発見されてしまう。彼らの動機や手口を知ることによって、あなたのシステムをよりよくこの脅威から守ることができる。