Show HN: Nightcrawler – A local AI pentesting agent running on a smartphone
개요
Nightcrawler는 클라우드 연결 없이 스마트폰에서 완전히 작동하는 자율 침투 테스트 에이전트입니다. 네트워크에 설치하면 호스트를 발견하고, 서비스를 매핑하며, 취약점을 찾아내고, 침투 테스트 보고서를 생성합니다.
주요 내용
- 작동 방식: WiFi 보안이 약한 경우 USB WiFi 어댑터를 사용하여 WPA2 네트워크를 자율적으로 해킹합니다. 이후 은밀한 스캔을 통해 네트워크 장치를 탐색(Reconnaissance)하고, 발견된 서비스(웹 서버, 파일 공유, SSH, DNS 등)를 탐색(Enumeration)합니다. 알려진 취약점과 기본 자격 증명을 테스트(Exploitation)하며, 발견 사항과 복구 조언을 포함한 구조화된 보고서를 생성합니다.
- AI 기반 의사 결정: 스마트폰 GPU에서 로컬로 실행되는 1.2B 매개변수의 소형 AI 모델(LFM2.5-1.2B-Instruct-Heretic)을 사용하여 다음 단계를 결정합니다. 인터넷 연결이나 클라우드 API가 필요하지 않습니다.
- 은밀함 및 지속성: 전통적인 취약점 스캐너와 달리, 네트워크 전체를 한 번에 스캔하는 대신 여러 시간에 걸쳐 호스트를 순환하며 작은 작업을 하나씩 수행하여 탐지를 어렵게 만듭니다.
- 주요 구성 요소:
- Agent Loop (main.py): AI 모델과 상호 작용하여 다음 행동을 결정하는 메인 루프입니다.
- Scope Proxy: 모든 명령이 실행되기 전에 범위 내에 있는지 확인하고 범위를 벗어나는 동작을 차단하는 안전 계층입니다.
- Kali MCP Server: nmap, curl, smbclient와 같은 실제 명령을 실행하는 서버입니다.
- Web Dashboard: 에이전트 모니터링 및 제어를 위한 웹 인터페이스입니다.
- 주요 기능: 완전 자율 작동, 100% 로컬 추론, 범위 제한 준수, 은밀함 우선, 27개의 공격 플레이북, 24,956개의 CVE 데이터베이스, 실시간 모니터링을 위한 웹 대시보드, USB 어댑터를 이용한 WPA2 해킹 모드, 수동 모드, 학습 캡처, 보고서 생성 기능 등을 제공합니다.
- 하드웨어 요구 사항: Kali NetHunter가 설치된 Android 스마트폰(OnePlus 8, Snapdragon 865 테스트), Magisk를 통한 루트 액세스, 12GB 이상의 RAM, 선택적으로 USB WiFi 어댑터가 필요합니다.
- GPU 성능: Adreno 650 GPU에서 OpenCL을 통해 추론이 이루어지며, LFM2.5-1.2B-Instruct-Heretic 모델의 경우 115 tok/s의 프롬프트 속도와 13 tok/s의 생성 속도를 보입니다. 배터리 전력 사용 시 GPU 스로틀링을 방지하기 위한 GPU 거버너 데몬이 포함되어 있습니다.
- 테스트 결과: 72시간 이상의 자율 작동 결과, 네트워크당 30개 이상의 호스트 발견, 2,000개 이상의 자율 실행 명령, 10개 이상의 취약점 발견, 6개 이상의 플레이북 실행 등의 성과를 보였습니다.
시사점
Nightcrawler는 클라우드 의존성 없이 스마트폰만으로 자율적인 침투 테스트를 수행할 수 있는 새로운 가능성을 제시하며, 보안 전문가들이 실제 공격 전에 취약점을 효율적으로 발견하고 보고서를 생성하는 데 활용될 수 있습니다.
원문을 불러오는 중...
댓글
GitHub Discussions