どんな小さな穴も見逃さない Penetration ペネトレーション(貫通 ) コンピューターやネットワークのセキュリ ティ上の 弱点( 脆 弱 性 ) を攻 撃 するのが Penetration。 対 象となる脆 弱 性や攻 撃 方 法 が モ ジュール 化 さ れ た Metasploit Framework をはじめ、脆弱性のデータベー スなど幅広い視点から紹介しよう。 文 =zou 団 脆弱性調査自動化のフロントエンド Fast Track 脆弱性調査 http://www.thepentest.com/ Fast Track は、後述する SET(Social Engineer ing Toolkit)も作成している、David Kennedy 氏 る脆弱性調査 (Metasploit)を自動で行ってくれる。 また、アップデートについては、Metasploit、 による Python ベースの脆弱性調査の自動化ツー SET、SQLMap、Kismet などに対応しており、ファ ルである。 「Autopwn Automation」 「Microsoft イルダウンロードからコンパイルまで自動実行し SQL Injection」 「Mass Client-Side Attack」 「SQL てくれる。すべてのアップデートを 1 つの操作で Pwnage」など、簡単な操作で自動的に脆弱性 実行することができるため、脆弱性調査の自動化 の調査や対応ソフトウェアのアップデートなどが だけではなく、アップデート機能も非常に強力で 可能だ。 ある。 実行方法は、Web インターフェイス、コマンド BackTrack4 ではすぐに利用できる環境が整っ ライン、対話式コマンドラインから選択でき、利 ており、試してみてほしい(p156 でも Fast Track 用しやすいものを選択しよう。脆弱性調査の自動 を解説している)。 化については、 「Autopwn Automation」であれ ダウンロードか らコンパイルま で自動で行って く れ る、Fast Trackの アップ デート機能 ば、ターゲットの IP アドレスとペイロード(Bind or Reverse)を選択するだけで、ターゲットのポー トスキャン(Nmap)からオープンポートに対応す msf > sessions -l Active sessions =============== Id -1 Type ---shell Information Connection ----------- ---------192.168.0.200:20590 -> 192.168.0.1:44714 ssions -i <id> to jump into a shell", then you were unsuccessful. Simply type se [*] exec: echo "If it states No sessions, then you were unsuccessful. Simply type sessions -i <id> to jump into a shell" If it states No sessions, then you were unsuccessful. Simply type sessions -i <id> to jump into a shell sessions -l コマンドで現在接続しているセッションが確認できる 70 電子メールや偽 Web サイトでユーザーを騙す !? Social-Engineer Toolkit ソーシャルエンジニアリング http://www.social-engineer.org/ ソーシャル・エンジニアリングとは、 「人間の心 ・悪意のある PDF ファイルを電子メールで送信し 理・行動の隙を突くことで、情報を不正に取得す て、不用意にファイルを開いたユーザーに… る手段の総称」である。コンピューターを利用し ・ターゲットとなる人間を、罠を仕込んだ偽サイ たソーシャル・エンジニアリングでは、ユーザー トに誘導して… を偽 Web サイトに誘導して、アカウント情報や ・CD や DVD の自動実行機能を悪用して… クレジットカード会員番号などの個人情報を入力 といった行為を簡単に行うことが可能となる。も させ入手する「フィッシング」が有名である。ま ちろん悪用は厳禁だ。自己防衛のための知識向 た、メール差出人を信頼されるような身分に詐称 上や、利用者教育の一環としてのみ利用するよう し、ユーザーに悪意のあるファイルを開かせて不 にほしい。 正に情報を取得するといった手段もある。 SET は、 バックエ ンド に「Metasploit Frame 電子メール・Web サイト・外部メディアを利用 work」を使用しているので、通常は別途 準備・ したソーシャル・エンジニアリングを簡単に行う 設定する必要があるが、BackTrack では何も考え ための支援ツールが「Social Engineer Toolkit」 ずに使用することが可能となっている。使い方は非 (以下 SET)である。国内の雑誌や書籍・ブログ 常に簡単で、行いたい攻撃を対話式のメニューから などではあまり話題に取り上げられていないマイ 選択していくだけである。ツールの詳細について ナーなツールだが、非常に面白い機能を持って は、公式サイトにデモ動画とチュートリアル※ 1 が いる。 あるので、そちらを見ていただきたい。 攻撃用 PDF から Web サイトアタックまで! 1 Select from the menu on what you would like to do: 1. 2. 3. 4. 5. 6. 7. Automatic E-Mail Attacks(UPDATED) Website Java Applet Attack(UPDATED) Update Metasploit Update SET Create a Payload and Listener Help Exit the Toolkit Enter your choice: 3 SET 起動画面。 初回実行時は、 「3. Update Metasploit」 「 、4. Update SET」を実行して、ツールのアップデートをしよう。 そうしないと、SET で新しく追加されている機能が使用で きない 2 [!] Website Attack Vectors [!] 1. 2. 3. 4. Web Templates Site Cloner Custom Import Return to main menu Enter number(1-4): 2 Select the file format exploit you want. The default is the PDF embedded EXE. ********** PAYLOADS ********** 1. Adobe Collab.collectEmailInfo Buffer Overflow 2. Adobe Collab.getIcon Buffer Overflow 3. Adobe JBIG2Decode Memory Corruption Exploit 4. Adobe PDF Embedded EXE Social Engineering 5. Adobe util.printf()Buffer Overflow 6. Custom EXE to VBA(sent via RAR)(RAR required) 7. Adobe U3D CLODProgressiveMeshDeclaration Array Overrun Enter what type of attack you would like to utilize. The Java Applet attack will spoof a Java Certificate and deliver a metasploit based payload. The Metasploit browser exploit method will Web サイトでの攻撃方法として、 「Java アプレットを 利用する方法」 、 「Web ブラウザーの脆弱性を悪用する方 法」 、 「偽のログインフォームに入力されたユーザー名・ パスワードを奪取する方法」が用意されている 電子メールに添付する攻撃用 PDF の作成画面。いろい ろな脆弱性に対応している 71 いろいろな機能を搭載したペネトレーション用ツールキットだが… Inguma 脆弱性調査・侵入テスト http://inguma.sourceforge.net/ 「Inguma」は Python で書かれた脆弱性調査・ 情報を入力後、機能ごと(情報収集、Exploit の実行、 侵入テストを行うためのツールキットである。最新 ブルートフォース攻撃など)に提供されているモ バージョンは「0.1.1」であるが、BackTrack4 Final ジュールを実行する。自動的にターゲットを調査 には「0.0.9.1」が収録されている。ターミナル上で コマンド操作を行う「inguma」と、PyQt ベース してくれる「autoscan」モードも用意されている ので、面倒な人はこの機能を使うというのも手だ。 の GUI 画面で操作を行う「ingumagui」が用意さ Python で作られたネットワークツール 「Scapy ※ 2」 れている。しかし、 「ingumagui」については、筆 者の環境では正常に動作しなかった(モジュール を使用しているモジュールがあるので、コマンドモー ド画面から直接使用することも可能となっている。 実行時に「segmentation fault」で終了してしま う)。2010 年 5 月にリリースされた「BackTrack 4 ただ、2008 年 12 月からツールのバージョンアッ プは行われておらず、公式サイトも更新されていな R1 Dev」でも同様の事象が発生するため、この問 題はまだ修正されていないようである。 い。筆者の個人的な感想としては、いまいち使い 勝手が悪く、同様もしくはそれ以上のことが行える 「inguma」 を 実 行 する と、 「Metasploit Frame work」の「msfconsole」のようなコマンドモード画 面になる。 使用方法は、 ターゲットとなるサーバー ツールが多々存在するため、今後積極的に使用す る機会は少ないと考えられる。 多彩な攻撃手法を持つ脆弱性発見ツール 1 ヘルプ画面。 「show」コマンドで各カテゴリのモジュール が表示される。Exploit も用意されているが、数は少なめと inguma> help |-------------------------------------------------- | | load kb | Load the knowledge base | | save kb | Save the knowledge base | | clear kb | Clear the knowledge base's data | | report | Generate a report | |------------------------------------------------- | | show discover | Show discover modules | | show gather | Show gather modules | | show rce | Show RCE modules | | show fuzzers | Show fuzzing modules | | show exploits | Show available exploits | | show brute | Show brute force modules | | show options | Show options | | payload | Show the supported OS types and payloads | | info <exploit> | Show additional information about an exploit | inguma> target = "192.168.1.100" inguma> port = 80 inguma> identify Port 80 : Apache/2.2.15(Unix)PHP/5.3.2 inguma> tcpscan Scanning port 17004(417/417) Open ports ---------Port 80/www is open Port 22/ssh is open inguma> 72 3 なっている inguma> help(scapy.sniff) Help on function sniff in module scapy: 2 sniff(count=0, store=1, offline=None, prn=None, lfilter=None, L2socket=None, timeout=None, *arg, **karg) Sniff packets sniff([count=0,] [prn=None,] [store=1,] [offline=None,] [lfilter=None,] + L2ListenSocket args)-> list of packets count: number of packets to capture. 0 means infinity store: wether to store sniffed packets or discard them prn: function to apply to each packet. If something is returned, it is displayed. Ex: ex: prn = lambda x: x.summary() lfilter: python function applied to each packet to determine if further action may be done 強力なネットワークツール「Scapy」もコマンドモード 画面上から実行することが可能である 必要となるターゲットサーバーの情報を入力後、使用したい モジュールを実行する 脆弱性調査ツールのスタンダード Metasploit Framework 2&3 脆弱性調査 http://www.metasploit.com/ 紹介するまでもないと思われるほどメジャーな 脆弱性調査ツールが、Metasploit Framework で ある。多くのプラットフォーム(Windows、Linux、 BSD など) に対応している。執筆時点では「v3.4.0」 もリリースされており、今後ますます成長が楽し みなツールである(p144 に関連記事あり)。 BackTrack4 では、 GUI メニューから「v2.8-dev」 「v3.3.4-dev」の 2 つのバージョンが起動できる。 2 つのバージョンの Exploit を比較してみたとこ ろ、 「edirectory̲imonitor2」「solaris̲snmpxd mid」 な ど マイ ナ ー と 思 わ れ る 14 個 ほ ど の Exploit が、v3 系 で は サ ポートさ れて い な い。 Perl で作成されていた v2.8 以前の Exploit につ いて配慮したものと考えられるが、通常は v3 系 を利用することで十分である。 v2.8 の「edirectory̲imonitor2」情報と、v3.3 の「edire ctory」の検索結果 過去の Exploit コードをローカルディスク上で管理 ExploitDB データベース --------------------------- 「Offensive Security」が運営している「Exploit 手法など)にカテゴライズされて保存されている。 Database ※ 3」で公開されているコードを、ロー ファイルの一覧が「files.csv」として作成されるの カル ディスク上で 管 理 するた め のツールで あ で、このファイルを活用して必要となるコードを る。 使 い 方 は 簡 単 で、 メニ ュー か ら「Update 検索しよう。 Exploitdb」を選択するだけで、 自動的にコードのアップデート 処理が行われる。 なお、アップデートにはバー ジョン 管 理 シ ス テム「Subver sion」が 使 用されているので、 社内ネットワークなどの外部へ の接続が制限されている環境で は注意が必要となる。 Exploit デ ー タ ベ ー ス は「/ pentest/exploits/exploitdb/」 配下に、プラットフォームごと (OS、アプリケーション、攻撃 id;file;description;date;author;platform;type;port 1;platforms/windows/remote/1.c;"MS Windows WebDAV(ntdll.dll)Remote Exploit";2003-0323;kralor;windows;remote;80 2;platforms/windows/remote/2.c;"MS Windows WebDAV Remote PoC Exploit";2003-0324;RoMaNSoFt;windows;remote;80 3;platforms/linux/local/3.c;"Linux Kernel 2.2.x - 2.4.x ptrace/kmod Local Root Exploit";2003-0330;"Wojciech Purczynski";linux;local; 4;platforms/solaris/local/4.c;"Sun SUNWlldap Library Hostname Buffer Overflow Exploit";2003-0401;andi;solaris;local; 5;platforms/windows/remote/5.c;"MS Windows RPC Locator Service Remote Exploit";2003-04-03;"Marcin 保存された「files.csv」の内容。2010 年に公開された Exploit コードについては、 まだダウンロードできないようだ 73
© Copyright 2024 Paperzz