不正アクセスをシュミレーションするツールです。セキュリティテストやデモ、SIEM/SOCのトレーニング用に設計されたものもあります。
1. Atomic Red Team (MITRE ATT&CKに基づく)
# インストール
git clone https://github.com/redcanaryco/atomic-red-team.git
cd atomic-red-team
# Windowsイベントログを生成(一部Linuxでも動作)
./atomic-red-team/execution/frameworks/scripts/Invoke-AtomicTest.ps1
2. Log-Monster (SIEMテスト用)
# インストール
git clone https://github.com/neu5ron/log-monster.git
cd log-monster
# 不正アクセスログ生成
python log-monster.py \
--output /var/log/attacks.log \
--attacks \"sql_injection,xss,bruteforce\" \
--count 1000
3. VECTR (セキュリティ評価プラットフォーム)
# Dockerで実行
docker run -d -p 8080:8080 --name vectr securityriskadvisor/vectr
# WebUIから不正アクセスシナリオを実行
4. OSSECテストルール
# OSSECのテストモードを使用
ossec-control enable test-rule
# テスト攻撃を生成
echo \"Dec 31 23:59:59 server1 sshd[1234]: Failed password for root from 192.168.1.100\" | /var/ossec/bin/ossec-logtest
5. Metasploitフレームワーク (実際の攻撃シミュレーション)
# Metasploitをインストール
sudo apt install metasploit-framework -y
# テスト用スクリプトでログを生成
msfconsole -q -x \"
use auxiliary/scanner/ssh/ssh_login
set RHOSTS 127.0.0.1
set USERNAME root
set PASS_FILE /usr/share/wordlists/rockyou.txt
set STOP_ON_SUCCESS false
run
exit
\"
6. Splunk Attack Range (企業向け)
# インストール
git clone https://github.com/splunk/attack_range.git
cd attack_range
# 設定ファイルを編集後
python3 attack_range.py -a simulate -st T1003.001 -t 300
7. Caldera (MITRE ATT&CK自動化)
# Dockerで実行
docker run -d -p 8888:8888 mitre/caldera:latest
# APIを使用して攻撃を実行し、ログを生成
curl -X POST http://localhost:8888/api/v2/operations \
-H \"Content-Type: application/json\" \
-d \'{\"name\":\"test_attack\",\"adversary_id\":\"test\"}\'
8. SIEM用テストデータジェネレーター
JSON形式の不正アクセスログ生成
#!/usr/bin/env python3
# generate_siem_logs.py
import json
import random
from datetime import datetime, timedelta
import time
def generate_attack_event():
attack_types = [
{
\"name\": \"SQL Injection\",
\"severity\": \"high\",
\"technique\": \"T1190\",
\"indicators\": [\"\' OR \'1\'=\'1\", \"UNION SELECT\", \"--\", \"/*\"],
\"source\": \"web\"
},
{
\"name\": \"Brute Force SSH\",
\"severity\": \"medium\",
\"technique\": \"T1110\",
\"indicators\": [\"Failed password\", \"Invalid user\", \"Connection closed\"],
\"source\": \"network\"
},
{
\"name\": \"Phishing Attempt\",
\"severity\": \"high\",
\"technique\": \"T1566\",
\"indicators\": [\"suspicious attachment\", \"malicious link\", \"spoofed sender\"],
\"source\": \"email\"
},
{
\"name\": \"Data Exfiltration\",
\"severity\": \"critical\",
\"technique\": \"T1048\",
\"indicators\": [\"large outbound transfer\", \"unusual port\", \"encrypted traffic\"],
\"source\": \"network\"
}
]
attack = random.choice(attack_types)
timestamp = datetime.now().isoformat() + \"Z\"
event = {
\"timestamp\": timestamp,
\"event_type\": \"security_alert\",
\"attack_type\": attack[\"name\"],
\"severity\": attack[\"severity\"],
\"mitre_technique\": attack[\"technique\"],
\"source_ip\": f\"{random.randint(1,255)}.{random.randint(1,255)}.{random.randint(1,255)}.{random.randint(1,255)}\",
\"destination_ip\": \"192.168.1.100\",
\"user\": random.choice([\"admin\", \"user1\", \"service_account\", None]),
\"description\": f\"Detected {attack[\'name\']} attempt from external IP\",
\"indicators\": random.sample(attack[\"indicators\"], random.randint(1, len(attack[\"indicators\"]))),
\"recommended_action\": random.choice([\"block_ip\", \"reset_password\", \"investigate\", \"quarantine\"]),
\"confidence\": random.randint(70, 95)
}
return event
# ログを生成
with open(\'/var/log/siem/alerts.json\', \'a\') as f:
for i in range(100):
event = generate_attack_event()
f.write(json.dumps(event) + \'\n\')
time.sleep(random.uniform(0.1, 2.0))
9. Wazuhテストツール (HIDS/NIDS)
# Wazuhマネージャーでテストアラート生成
/var/ossec/bin/ossec-control restart
# テストルールのトリガー
echo \"Dec 31 23:59:59 server sudo: pam_unix(sudo:auth): authentication failure; logname= uid=0 euid=0 tty=/dev/pts/0 ruser= rhost= user=root\" >> /var/log/secure
注意点
- 倫理的配慮: これらのツールはテスト環境でのみ使用
- 法的制約: 許可なく他人のシステムに対して使用しない
- 分離環境: 本番環境と隔離したネットワークで実行
- 目的限定: 教育、テスト、研究目的のみ
- ログ管理: 生成したログの適切な管理と破棄
おすすめツール
- 教育/デモ用: 自作スクリプト – 完全にコントロール可能
- 企業トレーニング: Atomic Red Team – MITRE ATT&CK準拠
- SIEMテスト: Log-Monster – 多様なフォーマット対応
- 実戦的テスト: Metasploit – 実際の攻撃ツール


コメント