ラベル BackTrack の投稿を表示しています。 すべての投稿を表示
ラベル BackTrack の投稿を表示しています。 すべての投稿を表示

2013年5月3日金曜日

autopsy の使い方

autopsy はディスクなどを調査するときに使用するフリーのフォレンジックツール。
ちなみに、Autopsy は日本語では「検死」となる。
ツールについてもう少し詳しく言えば autopsy は web インターフェースを提供するツールで、実際のディスク調査は The Sleuth Kit というツールが行う。

sleuthkit.org


日本語ヘルプ
http://www.monyo.com/technical/unix/TASK/autopsy-help-ja/

Back Track には The Sleuth Kit と autopsy がインストールされているのでそのまま使用できる。Windows で調べる場合は FTK imager あたり。

BT で使うにはまずメニューまたはコマンドラインで autopsy を立ち上げる。メニューなら Forensic あたりを探せば出てくるはず。実行すると下記のようなターミナルが立ち上がる。

============================================================================

                       Autopsy Forensic Browser 
                  http://www.sleuthkit.org/autopsy/
                             ver 2.24 

============================================================================
Evidence Locker: /tmp
Start Time: Thu May  2 23:31:24 2013
Remote Host: localhost
Local Port: 9999

Open an HTML browser on the remote host and paste this URL in it:

    http://localhost:9999/autopsy

Keep this process running and use  to exit

次に Web ブラウザで http://localhost:9999/autopsy へアクセスする。
ブラウザでアクセスすると下記のような画面が表示される。



解析を始める場合にはイメージファイルを準備して NEW CASE を選択する。



Case Name と Description を記入して NEW CASE を選択。これは単純に名前とコメントなので実際のインシデント解析でなければ適当で問題なし。



次の画面は必要なディレクトリを作成したことをお知らせしているだけ。次にホストを追加するので ADD HOST を選択する。



次の画面はホストの情報を調整する画面。時刻を合わせるなどの必要があれば入力する。通常は入力しなくても大丈夫。そのまま、ADD HOSTを選択。


ADD IMAGE を選択。



ADD IMAGE FILE を選択。


1. でイメージファイルの場所を選択、2. ではその Type を選択。 今回は USB デバイスのイメージだったので Partition を選択。3.はインポート方法なので、Copy を選択する。


MD5 を計算するかをどうかを選択して、File System Type を選択。今回はNTFS。


問題なければOKを押すと下記のように解析作業環境が整う。


あとは、 ANALYZE を押すだけ。


 この状態で解析を行うことができる。
FILE ANALYSIS で削除されたファイルの内容や属性情報を確認することができる。












2013年5月1日水曜日

skipfish の使い方

skipfish は Google が開発した Web スキャナ。
開発情報やダウンロード等はここからできる。

Back Track には標準でインストールされている。豊富なパターンがありスキャンにはある程度時間がかかる。Web 検査する場合、まずは skipfish で検査する対象をスキャンした後に手動で実施するのが効率的。

ログインが必要ないサイトへのスキャン

BT5R3 だと /pentest/web/skipfish に実行ファイルがある。ログインなしのWebだと下記のように実行する。

./skipfish -W wordlist -o output_dir start_url

それぞれのオプションは次のとおり。

  • -W: 使用する辞書を指定、同じディレクトリに dictionaries というディレクトリがあり、そこにデフォルトの辞書が置かれているので辞書ファイルがなければそれを指定する、minimal.wl でも Web の構造によってはかなりスキャンに時間がかかるので注意が必要、辞書を使わない場合は null を指定する方法もある。
  • -o: スキャン結果を保存するディレクトリを指定、HTML 形式でかなりの数のファイルが作成されるので、新規でディレクトリを作成したほうがよい。
  • start_url: スキャンを開始するURL
自動学習や辞書など使わずに短時間で指定ページのみスキャンしたい場合は -W で null を指定し、 -LY をつけて実行する。
また、デフォルトの状態では最大同時セッション数が40となっている。リモートから実施する場合などは調整をしたほうがネットワーク負荷が減ってよい。

ログインが必要なサイトのスキャン

ログインが必要な場合のオプションの指定方法は skipfish の wiki が詳しい。

Cookieでセッション管理している場合にはブラウザでログインし、Cookie情報を取得する必要がある。
取得したCookie情報は -C オプションで指定する。

./skipfish -N -C [cookie-name]=[value] -X /login -X /logout -o output-dir https://start_url

-N は新しいクッキーを受け付けないようにするオプション。通常は必要ないがクッキーを変更されたくない場合に使用。
-Xは検査除外設定。login や logout ページを検査するとログアウト処理されてしまい、その後の検査ができなくなるためセッション管理しているサイトの検査では必須。

ポップアップのauthの場合は -A オプションでユーザとパスワードを指定する。

User-Agent のチェックもしている場合は、User-Agent をクッキー情報を取得するブラウザと合わせる必要がある。その場合、-b オプションを使用する。ただし、標準で準備されている User-Agent は IE、Firefox、iphone となるため、Cookie 情報を使用する場合はブラウザを合わせる必要がある。

なお、Auth::setAdvancedSecurity オプションなどが有効になっていると正常に検査できないなど、認証関連では思うように動作しない場合がある。

2013年1月30日水曜日

base64 での変換

Base64 はメールなどでよく使用されるエンコード方式。Java やマルウェアの難読化などでも使用される。
特殊文字やマルチバイト文字が使用できない環境でデータをやり取りするために使用されていた。
変換対象のデータは A-Z/a-z/0-9 と、記号2つ (+ /) 、パディングのための記号として = で変換される。
そのためデータが増えるため圧縮技術にはならず、かつ変換パターンも決まっているため暗号技術でもない。

Back Track での使い方は下記のとおり。

エンコードするとき
base64 [file] > [output file]
デコードするとき
base64 -d [file] > [output file]
ファイルの特徴としては、more コマンドなどで開いたときに可読可能であり、アルファベットおよび = が使われていたら base64 でエンコードされている可能性が高い。file コマンドで調べても ASCII text と表示される。

2013年1月16日水曜日

john the ripper の使い方

Backtrack に収録されているパスワードクラックツール john the ripper の使い方。
/etc/shadow ファイルが必要なので root 権限が必要になる。
実際に使う場面としては root 権限はあるが他のユーザのパスワードを取得したい時などになる。

Linux 系のシステムではユーザとパスワードは以下の二つのファイルで管理されている。

/etc/passwd
/etc/shadow

passwd がユーザ属性が記述してあり、shadow がハッシュ化されたパスワードが格納されている。
john the ripper ではこの二つのファイルからパスワードを解析する。

ここでは、Backtrack のファイルを解析する。
まず最初に passwd ファイルと shadow ファイルを手元にコピーして john the ripper が解析できる形式に変換する。

root@bt:~# cp /etc/passwd ./passwd
root@bt:~# cp /etc/shadow ./shadow
変換するコマンドは unshadow で、pass ファイルと shadow ファイルを読み込ませて出力ファイルを設定する。
root@bt:~# /pentest/passwords/john/unshadow
Usage: unshadow PASSWORD-FILE SHADOW-FILE
root@bt:~# /pentest/passwords/john/unshadow passwd shadow > pass_shadow
root@bt:~# ls
Desktop  pass_shadow  passwd  shadow

ファイルができたら解析する。

root@bt:~# /pentest/passwords/john/john pass_shadow 
Warning: detected hash type "sha512crypt", but the string is also recognized as "crypt"
Use the "--format=crypt" option to force loading these as that type instead
Loaded 1 password hash (sha512crypt [32/32])
toor             (root)
guesses: 1  time: 0:00:00:00 DONE (Wed Jan 16 21:07:35 2013)  c/s: 23.33  trying: toor
Use the "--show" option to display all of the cracked passwords reliably
root@bt:~# 


これで解析できた。

ただし、実際の環境でこのコマンドを実行すると複数の解析モードが複数のユーザに対して延々実行されるのでかなりの時間がかかる。
実際に試す場合は下記のオプションを使い分ける。

john --single file_name : シングルモード、ユーザ名に含まれる情報から推測する、お手軽
john --wordlist=word_list file_name : 辞書解析、実質的に使えるのはこのモードまで
john --incremental file_name : ブルートフォースアタック、あまり使わないと思う


あとは、ユーザ名を付け加えるぐらいで十分。
john --users=user_name

解析が終わって結果を見る場合は --show コマンドで元のファイルを表示させる
./john --show pass_shadow

2013年1月8日火曜日

Back Track での sshd の有効化

Back Track をインストールして初めて sshd を起動し、リモートからログインしようと思ってできなかった。
調べてみると単純にサーバの公開鍵がなかっただけ。
なので、下記のコマンドを実行して鍵を生成後に sshd を起動すればよい。

sshd-generate

Back Track のデフォルトの状態では root ログインできるし、iptables もないので、上記コマンドだけ実行すれば問題ないはず。

あとは、下記のようにコマンドラインで起動するかメニューから起動するだけ。

/etc/init.d/ssh start