
Jok3r v3 BETA 2 - ネットワークとWebペンテスト自動化フレームワーク
.. raw:: html
.. image:: ./pictures/logo.png
.. raw:: html
.. image:: https://img.shields.io/badge/python-3.6-blue.svg :target: https://www.python.org/downloads/release/python-366/ :alt: Python 3.6
.. image:: https://readthedocs.org/projects/jok3r/badge/?version=latest :target: https://jok3r.readthedocs.io/en/latest/ :alt: ドキュメント ReadTheDocs
.. image:: https://img.shields.io/microbadger/image-size/koutto/jok3r.svg :target: https://hub.docker.com/r/koutto/jok3r/ :alt: Docker サイズ
.. image:: https://img.shields.io/docker/cloud/build/koutto/jok3r.svg :alt: Docker ビルドステータス
.. raw:: html
警告: 本プロジェクトはまだバージョン3ベータ版です。現在活発に開発中であり、バグが存在する可能性があります。
多くのテストが進行中です: https://github.com/koutto/jok3r/blob/master/tests/TESTS.rst を参照してください。 アイデア、バグ報告、コントリビューションを歓迎します!
.. contents:: :local: :depth: 1
Jok3r はPython3のCLIアプリケーションであり、ネットワークインフラストラクチャとWebブラックボックスセキュリティテストにおけるペネトレーションテスターの支援を目的としています。
目標は、ネットワーク/Webペンテストにおいて、できるだけ多くのセキュリティテストを自動化し、低い実りの脆弱性を迅速に特定することで、できるだけ多くの時間を節約し、より興味深く巧妙な部分に時間を費やせるようにすることです!
これは、一般的なネットワークサービスを対象とした多くのハッキング用オープンソースツール/スクリプト(様々なソースから)が存在し、フィンガープリンティングからエクスプロイテーションまで様々なタスクを実行できるという観察に基づいています。そのため、Jok3r のアイデアは、それらのオープンソースツールをスマートな方法で組み合わせ、より関連性の高い結果を得ることです。
.. image:: pictures/video-01.png :target: https://www.youtube.com/watch?v=FlbeBj5FPtI
.. image:: pictures/video-02.png :target: https://www.youtube.com/watch?v=z4cf_8EQ59Q
.. image:: ./pictures/visio/architecture/jok3r-architecture.png :alt: Jok3r アーキテクチャ
.. image:: ./pictures/visio/flowchart/jok3r-flow-chart.svg :width: 700px :alt: Jok3r フローチャート
重要: Jok3rを使用する推奨方法は、Dockerイメージをプルすることです。そうすれば、依存関係の問題やツールボックスの様々なハッキングツールのインストールについて心配する必要がありません。 すべてDocker Hubで利用可能なDockerコンテナからテストされています!
.. image:: https://raw.githubusercontent.com/koutto/jok3r/master/pictures/docker-logo.png
DockerイメージはDocker Hubで利用可能で、更新のたびに自動的に再ビルドされます: https://hub.docker.com/r/koutto/jok3r/。これは元々公式のKali Linux Dockerイメージ(kalilinux/kali-linux-docker)をベースにしています。
.. image:: https://images.microbadger.com/badges/image/koutto/jok3r.svg :target: https://microbadger.com/images/koutto/jok3r :alt: Docker イメージサイズ
Jok3r Dockerイメージをプル:
.. code-block:: console
sudo docker pull koutto/jok3r
新しいDockerコンテナを実行:
.. code-block:: console
sudo docker run -i -t --name jok3r-container -w /root/jok3r -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --shm-size 2g --net=host koutto/jok3r
注:
-e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix はDockerコンテナからGUIアプリケーション(例:レポートを読むためのWebブラウザの起動)を開始できるようにするために必要です。ホストで xhost +local:root を実行する必要があります。
--shm-size 2g は共有メモリのサイズを増やすために使用され、Dockerコンテナからレポートを読む際のWebブラウザのクラッシュを防ぐために必要です。
--net=host はホストのインターフェースを共有するために必要です。リバース接続(例:RCEテスト時のコンテナへのPing、リバースシェルの取得)に必要です。
停止したコンテナを再実行する場合:
.. code-block:: console
sudo docker start -i jok3r-container
コンテナ内で複数のシェルを開く場合:
.. code-block:: console
sudo docker exec -it jok3r-container bash
更新するには、Docker Hubから最新のDockerイメージをプルし、その新しいイメージから新しいコンテナを実行するだけです:
.. code-block:: console
sudo docker pull koutto/jok3r
sudo docker run -i -t --name jok3r-container-updated -w /root/jok3r -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --shm-size 2g --net=host koutto/jok3r
注: もちろん、古いコンテナからローカルデータベース local.db(保存されたミッション、ターゲットなど)を取得するには、コマンド sudo docker cp を使用できます。
.. code-block:: console
python3 jok3r.py toolbox --show-all
.. code-block:: console
python3 jok3r.py toolbox --install-all --auto
.. code-block:: console
python3 jok3r.py toolbox --update-all
.. code-block:: console
python3 jok3r.py toolbox --update-all --auto
.. code-block:: console
python3 jok3r.py info --services
.. code-block:: console
python3 jok3r.py info --checks <service>
.. code-block:: console
python3 jok3r.py info --attack-profiles <service>
.. code-block:: console
python3 jok3r.py info --products
ローカルデータベースに新しいミッションを作成:
.. code-block:: console
python3 jok3r.py db
jok3rdb[default]> mission -a mayhem
[+] Mission "mayhem" successfully added
[*] Selected mission is now mayhem
jok3rdb[mayhem]>
単一ターゲット:
.. code-block:: console
python3 jok3r.py attack -t https://www.example.com/ --add2db mayhem
.. code-block:: console
python3 jok3r.py attack -t 192.168.1.42:1433 -s mssql --add2db mayhem --fast
.. code-block:: console
python3 jok3r.py attack -t 192.168.1.142:21 -s ftp --cat-only recon,vulnscan --add2db mayhem
複数ターゲット:
.. code-block:: console
python3 jok3r.py attack -m mayhem --profile red-team --fast
.. code-block:: console
python3 jok3r.py attack -m mayhem --fast
.. code-block:: console