
Legionは、オープンソースで使いやすく、非常に拡張性が高く、半自動化されたネットワーク侵入テストツールです。情報システムの発見、偵察、悪用を支援します。
Legionリポジトリは https://github.com/hackman238/legion に移行しています。今後のリリースやアップデートなどはすべてそこから行われます。大きな改善が予定されています!この組織の下にあるこのリポジトリは今後メンテナンスされません。

Legionは、SECFORCEのSpartaのフォークであり、オープンソースで使いやすく、非常に拡張性が高く、半自動化されたネットワークペネトレーションテストフレームワークです。情報システムの発見、偵察、および悪用を支援します。
以下のコマンドでNMAP 7.93をインストールします:
sudo apt install snapd -y
sudo systemctl enable --now snapd.apparmor
sudo systemctl start snapd
sudo snap install nmap
sudo mv /usr/bin/nmap /usr/bin/nmap-7.92
sudo ln -s /snap/bin/nmap /usr/bin/nmap
次に、バージョンが7.93であることを確認します:
nmap -v
apparmorプロファイルを更新します:
vi /var/lib/snapd/apparmor/profiles/snap.nmap.nmap
300行目に移動し、新しい行を追加して次の行を挿入します:
owner @{HOME}/.local/share/legion/tmp/** rw,
/etc/ssl/kali.cnf r,
再起動
runItスクリプト(docker/runIt.sh)がサポートするもの:
任意のLinuxディストリビューションでDockerイメージを実行することは可能ですが、ディストリビューションによってDockerアプリがXサーバーに接続できるようにするための手順が異なります。これらの手順を解決し、runItのPRを作成することは誰でも歓迎します。
現時点では、従来のインストールを使用したUbuntu 20.04での正しい動作のみ保証できます。ParrotOS、Kaliなどでも動作するはずですが、Legionが各ディストリビューションのリポジトリにパッケージ化されて配置されるまでは、プラットフォームのアップデートによる依存関係の変更や破損に関しては不安定な状態です。ネイティブパッケージは存在し、Kaliではデフォルトで含まれています。
2つのインストール方法があります:
従来のインストールよりもDockerメソッドを使用することを推奨します。これは、クリーンでデフォルト以外の環境と異なる環境で発生する依存関係の要件や複雑さのためです。
注:LegionのDockerバージョンは、rootとして実行する場合やroot Xの下では動作しない可能性が高いです。
Dockerメソッドは様々な環境をサポートしています。自分の環境に合ったものを選んでください。
DockerとX11がインストールおよび設定されていることを前提とします(非rootユーザーとしてDockerコマンドを実行することも含みます)。
非rootユーザーとして実行するためのすべての手順に従うことが重要です。どれか1つでもスキップすると、DockerがXサーバーと通信する際に問題が発生します。
Dockerを設定する詳細な手順はこちら、非rootユーザーでのコンテナ実行の有効化とDockerグループへのSSH権限の付与はこちらを参照してください。
ターミナル内で:
git clone https://github.com/GoVanguard/legion.git
cd legion/docker
chmod +x runIt.sh
./runIt.sh
DockerとX11がインストールおよび設定されていることを前提とします。
X.X.X.XをリモートでX11を実行しているIPアドレスに置き換えてください。
ターミナル内で:
git clone https://github.com/GoVanguard/legion.git
cd legion/docker
chmod +x runIt.sh
./runIt.sh X.X.X.X
前提条件:
詳細なDockerの手順はこちらを参照してください。
X.X.X.XをXmingが登録したIPアドレスに置き換えてください。Xmingをシステムトレイで右クリック → ログの表示 → "XdmcpRegisterConnection: newAddress"の横のIPを確認します。
ターミナル内で:
git clone https://github.com/GoVanguard/legion.git
cd legion/docker
sudo chmod +x runIt.sh
sudo ./runIt.sh X.X.X.X
なぜ?これは避けてください。:)
まだrunIt.shスクリプトには含まれていません。socatを使用して設定可能です。
こちらの手順を参照してください。
通常必要なDockerコンポーネントをインストールし、Dockerの環境を設定するには、ターミナルで以下を実行します:
sudo apt-get update
sudo apt-get install -y docker.io python3-pip -y
sudo groupadd docker
pip install --user docker-compose
非rootユーザーがDockerコマンドを実行できるようにするには、ターミナルで以下を実行します:
sudo usermod -aG docker $USER
sudo chmod 666 /var/run/docker.sock
sudo xhost +local:docker
ポート予約の理由から順序が重要です。WSL、Hyper-V、またはDocker Desktopがインストールされている場合は、先にこれらの機能をアンインストールしてください。
netsh int ipv4 add excludedportrange protocol=tcp startport=2375 numberofports=1
dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All
dism.exe /Online /Enable-Feature /FeatureName:Microsoft-Windows-Subsystem-Linux
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install -y docker-ce python-pip -y
sudo apt autoremove
sudo usermod -aG docker $USER
pip install --user docker-compose
echo "export DOCKER_HOST=tcp://localhost:2375" >> ~/.bashrc && source ~/.bashrc
可能な場合はDockerイメージを使用してください!さまざまなプラットフォームとその独自の癖をサポートするのは非常に困難になっています。
Ubuntu、Kali、またはParrot Linuxを使用しており、Python 3.6がインストールされていることを前提とします。
ターミナル内で:
git clone https://github.com/GoVanguard/legion.git
cd legion
sudo chmod +x startLegion.sh
sudo ./startLegion.sh
すべてのテストケースを実行するには、ルートディレクトリで以下を実行します:
python -m unittest
選択されたポートと関連するターミナルアクションの設定は、legion.confファイルを編集することで簡単に変更できます。
[StagedNmapSettings]は、どのポートが順番にスキャンされるか、および呼び出されるNSEスクリプトを定義します。
[SchedulerSettings]は、ポートスキャンの結果に基づいて自動的に発生するアクションを定義します。
sudoedit /root/.local/share/legion/legion.conf
LegionはGNU General Public License v3.0の下でライセンスされています。詳細についてはLICENSEをご覧ください。
smbenum.shで使用されるms08-067_checkスクリプトはBernardo Damele A.G.によるものです。docker images