
WIP - 개편된 Alfred [2.0]
Alfred는 다양한 정찰, 익스플로잇 및 사후 익스플로잇 작업을 지원하도록 설계된 Python 기반 프레임워크입니다. 매우 모듈식으로 설계되어 사용자가 플러그인을 쉽게 추가하여 기능을 확장할 수 있습니다. 이 프레임워크는 독립적인 플러그인 실행, 플러그인 인수 처리, 실행 결과 추적을 지원합니다.
en_core_web_sm - 토큰화 및 문장 분할용all-MiniLM-L6-v2 - 의미론적 구문 분석, 입력에서 기본 의도와 의미를 추출하는 데 사용. git clone https://github.com/YourUsername/alfred.git
cd alfred
pip install -r requirements.txt
특정 플러그인을 실행하려면:
ζ python3 alfred.py
/home/kali/.local/lib/python3.11/site-packages/fuzzywuzzy/fuzz.py:11: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
warnings.warn('Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning')
=== Alfred: Autonomous Pentest Assistant ===
[*] Loaded plugin: AquatonePlugin
2025-04-16 21:45:16,094 - INFO - Loaded plugin: AquatonePlugin
[*] Loaded plugin: EchoMessage
2025-04-16 21:45:16,096 - INFO - Loaded plugin: EchoMessage
[*] Loaded plugin: PingSweep
2025-04-16 21:45:16,099 - INFO - Loaded plugin: PingSweep
[*] Loaded plugin: PortScan
2025-04-16 21:45:16,102 - INFO - Loaded plugin: PortScan
2025-04-16 21:45:16,102 - INFO - Loading NLP models...
2025-04-16 21:45:16,827 - INFO - Use pytorch device_name: cpu
2025-04-16 21:45:16,828 - INFO - Load pretrained SentenceTransformer: all-MiniLM-L6-v2
2025-04-16 21:45:20,976 - INFO - Building action index...
Batches: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 2/2 [00:00<00:00, 7.82it/s]
Alfred > run nmap version scan on 10.0.2.15 and give me info
2025-04-16 21:45:41,540 - INFO - Processing instruction: run nmap version scan on 10.0.2.15 and give me info
2025-04-16 21:45:41,550 - INFO - Segmented into 2 parts: ['run nmap version scan on 10.0.2.15', 'give me info']
Batches: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 42.53it/s]
Batches: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 28.10it/s]
2025-04-16 21:45:41,634 - INFO - Processing action 1: run_nmap_scan
[*] Running plugin: PortScan with args {'target': '10.0.2.15', 'scan_type': 'version', 'options': ' -sV'}
2025-04-16 21:45:41,634 - INFO - Running plugin: PortScan with args {'target': '10.0.2.15', 'scan_type': 'version', 'options': ' -sV'}
[*] Starting port scan on 10.0.2.15 for ports 22,80,443...
2025-04-16 21:45:41,634 - INFO - Starting port scan on 10.0.2.15 for ports 22,80,443...
[*] Scan completed successfully.
2025-04-16 21:45:48,274 - INFO - Scan completed successfully.
[+] [10.0.2.15] 1 ports identified and stored.
2025-04-16 21:45:48,275 - SUCCESS - [10.0.2.15] 1 ports identified and stored.
{'host': '10.0.2.15', 'status': 'up', 'hostnames': '10.0.2.15', 'addresses': {'ipv4': '10.0.2.15'}, 'tcp_ports': {80: {'state': 'open', 'name': 'http', 'product': 'SimpleHTTPServer', 'version': '0.6', 'extrainfo': 'Python 3.11.6', 'cpe': 'cpe:/a:python:simplehttpserver:0.6', 'scripts': {'http-title': 'Directory listing for /', 'http-server-header': 'SimpleHTTP/0.6 Python/3.11.6'}}}}
[+] Plugin 'PortScan' executed successfully.
2025-04-16 21:45:48,275 - SUCCESS - Plugin 'PortScan' executed successfully.
[+] Plugin 'PortScan' executed in 6.64 seconds.
2025-04-16 21:45:48,275 - SUCCESS - Plugin 'PortScan' executed in 6.64 seconds.
2025-04-16 21:45:48,275 - ERROR - Error executing plugin PortScan: 'NoneType' object has no attribute 'get'
2025-04-16 21:45:48,275 - INFO - Processing action 2: explain
I encountered an error: 'NoneType' object has no attribute 'get'. I encountered an error: unknown error.
--------------------------------------------------
사용 가능한 플러그인
EchoMessage: 메시지를 다시 에코하는 간단한 플러그인입니다. 정상 작동 확인용입니다.PortScan: 대상에 대해 기본 포트 스캔을 수행하는 플러그인입니다.