Pantera

更新履歴

  • 2006/12/07 初版

概要

  • Spike Proxy をベースとしたWebアプリケーション分析ツール
  • HTTPトラフィックを記録して、様々な分析が可能

Pantera管理画面, コンソール

バージョン

  • Pantera 0.1.2

インストール環境

  • CentOS 4.4 (X+Gnome+開発環境)

前提条件

参考URL

インストール手順

Python 2.4.4 インストール

  • Pantera は Python 2.4 で動作するため、Python 2.4.4 をソースからインストールする。
  • CentOSでは、Python 2.3 が既にインストールされているため、/usr/local/python24 以下にインストールする。
# cd /usr/local/src/
# wget http://www.python.org/ftp/python/2.4.4/Python-2.4.4.tgz
# tar xvzf Python-2.4.4.tgz
# cd Python-2.4.4
# ./configure --prefix=/usr/local/python24
# make
# make install
# ln -s /usr/local/python24 /usr/local/python

pyOpenSSL 0.6 インストール

  • Python上で OpenSSL を使用するため、pyOpenSSL をインストールする。(https対応)
# cd /usr/local/src/
# wget http://downloads.sourceforge.net/pyopenssl/pyOpenSSL-0.6.tar.gz
# tar xvzf pyOpenSSL-0.6.tar.gz
# cd pyOpenSSL-0.6
# /usr/local/python/bin/python setup.py build
# /usr/local/python/bin/python setup.py install

MySQL 5.0.27 インストール

  • データ格納用にデータベースを使用するため、MySQL 5 をインストールする。
  • インストール手順については、以下ページを参照。

MySQL for Python 1.2.1_p2 インストール

  • Pythonから MySQL に接続出来るように、MySQL for Python をインストールする。
# cd /usr/local/src/
# wget http://downloads.sourceforge.net/mysql-python/MySQL-python-1.2.1_p2.tar.gz
# tar xvzf MySQL-python-1.2.1_p2.tar.gz
# cd MySQL-python-1.2.1_p2
# vi site.cfg

以下のように編集

  7 [options]
  8 embedded = False
  9 threadsafe = False
 10 static = True

# /usr/local/python/bin/python setup.py build
# /usr/local/python/bin/python setup.py install

Pantera 0.1.2 インストール

  • Pantera をインストールする。(アーカイブの展開のみ)
  • 本手順ではインストールディレクトリを /pentest/web/Pantera としているので適宜読み替えること。
# cd /usr/local/src/
# wget http://jaist.dl.sourceforge.net/sourceforge/owasp/Pantera_Release_0.1.2.zip
# unzip Pantera_Release_0.1.2.zip
# mkdir /pentest
# mkdir /pentest/web
# cp -r Pantera_Release_0.1.2 /pentest/web/Pantera
  • 以下のファイルに不正な文字列(コメント行)が存在するため、pantera.py 実行時にワーニングメッセージが表示される。
【ワーニングメッセージ】

# /usr/local/python/bin/python pantera.py 
ntlm/des.py:20: DeprecationWarning: Non-ASCII character '\xd7' in file ntlm/des_c.py on line 22, 
but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
  import des_c, ntlmutils
ntlm/ntlm_procs.py:21: DeprecationWarning: Non-ASCII character '\xef' in file ntlm/md4.py on line 91, 
but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
  import des, md4, ntlmutils
>>> Running Pantera - Web Assessment Studio (WAS) V 0.1.2
>>> Roses Labs Innovations (RL+I)
>>> http://www.roseslabs.com
  • ワーニングメッセージが表示されないように、スクリプトを修正する。

/pentest/web/Pantera/ntlm/des_c.py on line 22

以下行を削除

22    # ×òî áû ýòî çíà÷èëî?

/pentest/web/Pantera/ntlm/md4.py on line 91

以下行を削除

91    # ïðîâåðÿåì íå ïåðåïîëíèëàñü ëè ïåðâàÿ äëèíà
92    # äëèíà èçìåðÿåòñÿ â áèòàõ, ïîýòîìó óìíîæàåì íà 8
  • Panteraで使用する画像ファイル名が一部間違っているので修正する。(Web GUI上で一部画像が表示されないため)
# cd /pentest/web/Pantera/img
# mv arrowdown.GIF arrowdown.gif
# mv arrowleft.GIF arrowleft.gif
# mv arrowright.GIF arrowright.gif
# mv back_icon.PNG back_icon.png
# mv next_icon.PNG next_icon.png

FormBuild インストール

  • HTMLフォーム生成モジュール FormBuild をインストールする。
  • インストールには Pantera に付属している Easy Install の ez_setup.py スクリプトを使用する。
# cd /pentest/web/Pantera/
# /usr/local/python/bin/python ez_setup.py FormBuild

Pantera用データベースの作成

  • データ格納用データベースを作成する。
  • データベース接続ユーザを作成する。※環境に応じて適宜変更すること!!
    • ユーザ名: panteradb
    • パスワード: panteradb
# mysqladmin -u root -p create panteradb
# Enter password: 
# mysql -u root -p panteradb < /pentest/web/Pantera/doc/pantera_sql_create_script.txt
# Enter password: 
# 
# mysql -u root -p panteradb
Enter password: 
Welcome to the MySQL monitor.  Commands END with ; OR \g.
Your MySQL connection id IS 9 to server version: 5.0.27-LOG
 
Type 'help;' OR '\h' for HELP. Type '\c' to clear the buffer.
 
mysql> GRANT ALL PRIVILEGES ON panteradb.* TO panteradb@'localhost' IDENTIFIED BY 'panteradb';
Query OK, 0 rows affected (0.01 sec)
 
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
 
mysql> exit
Bye

Panteraの設定

  • Panteraの動作設定を行う。
# vi /pentest/web/Pantera/panteracfg.xml

/pentest/web/Pantera/panteracfg.xml

以下については最低限変更すること

   3  <port>8080</port>           ※待ち受けポート
  48  <db_login>panteradb</db_login>    ※ユーザ名
  49  <db_password>panteradb</db_password> ※パスワード
  50  <db_host>localhost</db_host>     ※データベースが稼働しているホストの指定
  51  <db_name>panteradb</db_name>     ※データベース名

実行方法

  • 実行方法
# cd /pentest/web/Pantera/
# /usr/local/python/bin/python pantera.py
>>> Running OWASP Pantera - Web Assessment Studio (WAS) V 0.1.2
>>> Roses Labs Innovations (RL+I)
>>> http://www.roseslabs.com


[Thu Dec  7 18:59:00 2006] : >>> Pantera UI V 0.3.2 Started

利用方法

  • ブラウザのプロキシ設定を Pantera を実行しているサーバに設定する。
    • 例) <Panteraサーバアドレス>:8080

プロキシ設定画面

  • 以下URLにアクセスすると、Pantera の管理画面が表示される

Pantera管理画面

  • メニュー [File] から [Project Management] を選択して、新規プロジェクトを作成する。

Project Management

  • [Project Name] を入力して [Submit] をクリックする。

プロジェクト名の入力

  • 以上でプロジェクトが作成される。

プロジェクト作成完了

  • メニュー [File] から [Project Management] を選択して、分析するドメイン名を登録する。

ドメイン名の登録メニュー

  • [Add Domain] をクリックする。

ドメイン追加

  • ドメイン名を入力して [クエリー送信] をクリックする。

ドメイン名の入力

  • 以上でドメイン名の登録が完了。[OK] をクリックする。

OKをクリック

ドメイン名の登録完了

  • ブラウザで新しいウインドウを開いて、分析したいWebサイト(登録したドメイン名)にアクセスする。
  • メニューから閲覧したい項目を選択して、分析を行う。
    • 例) [Tool] → [History]
      • Tool -> History
    • 例) [Tool] → [Statistics]
      • Tool -> Statistics
 
pentest/webappl/scanner/pantera.txt · 最終更新: 2007/10/16 12:02
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki NINJA TOOLS