AI Pentester Assistant
🛡️ Zhilly AI Pentester Assistant
AI 기반, 휴대용 사이버 보안 및 사이버 상호작용 도구
AI 기반, 휴대용 사이버 보안 및 사이버 상호작용 도구
🇬🇧 English • 🇹🇷 Türkçe • ⚡ Web Flasher
🇬🇧 English / 영어 버전
📖 프로젝트 소개
이 프로젝트는 Xiaozhi-esp32 (小智) 인프라를 기반으로 LilyGO T-Embed CC1101 하드웨어에 최적화된 고급 **AI 펜테스터 어시스턴트(AI Pentester Assistant)**입니다. 자연어 AI 상호작용과 실제 하드웨어 테스트 도구를 결합하여 사이버 보안 연구와 일상적인 기술 작업에 다재다능한 동반자가 되어 줍니다.
🚀 주요 기능
🤖 AI 및 상호작용
- 자연스러운 대화: 웨이크 워드 **"Nihao Miaoban"**으로 어시스턴트에게 말을 걸어 보세요. 어시스턴트는 듣고, 배우고, 자연어로 응답합니다.
- 이모트 디스플레이: ST7789 디스플레이의 고품질 눈 애니메이션이 감정적 피드백과 상태 표시(듣는 중, 생각하는 중, 말하는 중)를 제공합니다.
📰 스마트 뉴스 (News API)
- 음성 명령으로 전 세계 또는 지역의 최신 헤드라인을 가져옵니다.
- 예시: "최신 기술 뉴스를 알려줘" 또는 "터키 뉴스는 뭐야?"
- NewsAPI를 사용하는
news.get_top_headlines 도구를 통해 통합됩니다.
📡 RF 및 IR 펜테스트 도구
Sub-GHz 및 적외선(Infrared) 스펙트럼에 대한 완전한 제어:
- RF 재머(Jammer): 특정 Sub-GHz 주파수에서 신호 재밍을 시작/중지합니다.
- RF 리플레이(테스트): SD 카드에 저장된
.sub 파일을 재전송합니다.
- IR 재머: 적외선 제어 장치를 교란하고 평가합니다.
- TV-B-Gone: 주변 TV를 끄기 위한 범용 리모컨 오프 코드.
- IR 리플레이(테스트): 적외선 신호를 기록하고 재전송합니다.
- RAW 캡처: 마이크로초 정밀도로 Sub-GHz 신호를 캡처합니다.
- SD 카드 저장: 캡처한 신호를 나중에 사용할 수 있도록 SD 카드에 저장합니다.
⌨️ Bad USB 및 HID (AI 기반 음성 명령 전용)
- 키보드 에뮬레이션: 컴퓨터에 연결하면 어시스턴트가 표준 USB 키보드로 동작할 수 있습니다.
- 음성 중심 지원: SD 카드에 저장된 자동 키 입력 스크립트(DuckyScript)를 AI 음성 명령으로만 실행합니다. 수동 인터페이스는 제공되지 않으므로 완전한 핸즈프리 펜테스팅 환경을 보장합니다.
- 음성 명령: "BadUSB 스크립트 'hello_world.txt' 실행" 또는 "다음을 입력해: '나는 당신의 AI 어시스턴트입니다'".
- HID 도구:
usb.bad_usb_run, usb.bad_usb_type, usb.bad_usb_stop 도구를 통해 완전히 통합됩니다.
⌚ LilyGO T-Watch S3 전용 기능
T-Watch S3를 위해 특별히 제작된 Zhilly는 컴퓨터 연결 없이도 다음 도구를 사용할 수 있습니다:
- 고속 ARP 스캐너: 직접적인 Layer-2 ARP 테이블 검사를 통해 서브넷을 스캔하여 숨겨진 네트워크 장치(IoT, 보안 카메라)를 물리적 MAC 주소와 함께 즉시 드러냅니다.
- 포트 스캐너: 대상 IP의 취약/관리 상위 21개 포트에 대해 빠른 동시
select() TCP 검사를 수행합니다.
- 음성 명령: "192.168.1.10의 포트를 스캔해"
- DNS 리졸버: 웹사이트 도메인을 시계 화면에 물리적 IPv4 주소로 직접 변환합니다.
- IR 해킹: TV-B-Gone 종료 코드(NA/EU)를 전송하거나 시계에서 직접 표적형 적외선 패러사이트(parrasite) 재밍을 시작합니다.
- 음성 명령: "TV를 꺼줘" 또는 "IR 재머 시작"
- OTA 업그레이드 및 전원: URL로 시계 펌웨어를 업데이트하거나 음성 채팅만으로 소프트웨어 재부팅을 수행합니다.
🌍 지원되는 키보드 레이아웃
음성 명령으로 키보드 언어를 설정할 수 있습니다(예: "키보드 레이아웃을 터키어로 설정").
기본 레이아웃: en_US — 레이아웃은 각 세션이 끝난 후 미국 영어로 재설정됩니다.
🌈 LED 스트립 및 시각 효과
8x WS2812 RGB LED 링을 제어합니다:
- 동적 제어: 색상, 밝기(0-8), Blink 또는 Scroll 같은 애니메이션을 설정합니다.
- 음성 명령: "LED를 파란색으로 만들고 밝기를 최대로 설정해"
🔋 시스템 및 전원
- 배터리 상태: 배터리 잔량이나 충전 상태를 물어보세요.
- 딥 슬립: 전원(PWR) 버튼을 길게 눌러 최대한의 배터리 절약을 위한 딥 슬립 모드에 진입합니다.
- 밝기 제어: 음성으로 화면 및 LED 밝기를 조정합니다.
🛠️ 설치 및 플래싱
**Zhilly Web Flasher**를 통해 Google Chrome / MS Edge 브라우저에서 직접 플래싱하거나, 아래의 EspTool.py를 사용하여 펌웨어 바이너리를 수동으로 기록하세요:
# Flash the ready-made firmware using EspTool.py:
esptool.py -p /dev/ttyACM0 -b 460800 write_flash 0x0 flash_binaries/xiaozhi.bin 0x0800000 flash_binaries/expression_assets.bin
중요: 이 프롬프트를 기기의 역할 소개(Role Introduction)에 입력하세요
당신은 LilyGO T-Embed CC1101 장치(ESP32-S3)에서 실행되는 AI 기반 사이버 보안 어시스턴트 Zhilly입니다. 당신은 전적으로 음성 명령으로 제어되는 휴대용 펜테스팅 멀티툴입니다.
하드웨어 기능:
RF 재밍을 수행할 수 있습니다
- BadUSB: DuckyScript를 통한 USB HID 키보드 에뮬레이션. 연결된 대상 컴퓨터에서 키 입력을 타이핑하고, 터미널을 열고, 명령을 실행하고, 페이로드를 실행할 수 있습니다.
- WS2812 RGB LED 링: 시각적 피드백, 알림 및 효과를 위한 8개의 개별 주소 지정 RGB LED.
- CC1101 Sub-GHz 라디오: 300-928MHz 주파수에서 무선 신호(차고 문, 리모컨, 키 포브)를 캡처, 분석 및 재생합니다.
- PN532 NFC 모듈: NFC/RFID 카드(Mifare, NTAG 등)를 읽고, 쓰고, 에뮬레이션합니다.
- IR 블래스터: TV/AC 리모컨 복제를 위한 적외선 신호를 송수신합니다.
- 로터리 엔코더 및 OLED 디스플레이: 물리적 탐색 및 실시간 상태 표시.
당신의 MCP 도구는 직접적인 하드웨어 제어를 허용합니다. 사용자가 펜테스트 작업을 요청하면:
- BadUSB의 경우: 먼저 self.badusb.enable을 호출하여 HID 모드를 활성화한 다음, DuckyScript 페이로드로 self.badusb.execute를 호출하고, 완료되면 self.badusb.disable을 호출하십시오. 영어 Q(en-US) 레이아웃을 사용하십시오. 안정성을 위해 단계 사이에 항상 DELAY를 추가하십시오.
- LED의 경우: self.led_strip.set_all_color, set_brightness, blink, scroll, turn_off를 사용하여 시각적 피드백을 제공하십시오.
- SubGHz/NFC/IR의 경우: 사용 가능한 해당 도구를 사용하십시오.
동작 규칙:
- 사용자가 해킹, 타이핑, 앱 열기 또는 명령 실행을 요청하면: BadUSB 도구를 사용하십시오. 실행 가능한 작업에 텍스트만으로 답변하지 마십시오.
- 사용자가 LED 색상이나 효과에 대해 물으면: LED 도구를 직접 사용하십시오.
- 일반적인 보안 질문의 경우: 전문 지식을 바탕으로 대화 형식으로 답변하십시오.
- 파괴적인 작업을 실행하기 전에 항상 확인을 받으십시오.
- 작은 스피커로 말하므로 음성 응답은 간결하게 하십시오.
- 터키어와 영어를 유창하게 구사합니다.
당신은 단순한 어시스턴트가 아닙니다 — 당신은 핸즈프리, 음성 활성화 사이버 무기입니다. 그에 따라 행동하십시오.
🇹🇷 Türkçe / 터키어 버전
📖 프로젝트 소개
이 프로젝트는 오픈 소스 Xiaozhi-esp32 (小智) 인프라를 사용하고 LilyGO T-Embed CC1101 하드웨어에 최적화된 고급 Zhilly AI 펜테스터 어시스턴트입니다. 자연어 상호작용과 실제 하드웨어 테스트 도구를 결합하여 사이버 보안 연구에서 지능형 동반자가 되어 줍니다.
🚀 주요 기능
🤖 AI 및 상호작용
- 자연스러운 대화: **"Nihao Miaoban"**이라고 말해 장치를 깨우고 자연어로 대화하세요. 장치가 당신을 이해하고, 배우고, 응답합니다.
- 이모트 화면: ST7789 화면의 생생한 눈 애니메이션으로 사회적, 감정적 피드백(듣기, 생각하기, 말하기 상태)을 제공합니다.
📰 스마트 뉴스 (News API)
- 음성 명령으로 전 세계 또는 터키의 최신 뉴스 헤드라인을 확인하세요.
- 예시: "최신 기술 뉴스를 알려줘" 또는 "터키의 최신 헤드라인은 뭐야?"
- NewsAPI를 통해 작동하는
news.get_top_headlines 도구와 통합되어 있습니다.
📡 RF 및 IR 펜테스트 도구
Sub-GHz 및 적외선 주파수에 대한 완전한 제어:
- RF 재머: 특정 주파수에서 신호 재머를 시작하거나 중지합니다.
- RF 리플레이(테스트): SD 카드의
.sub 파일을 재전송합니다.
- IR 재머: 적외선 제어 장치를 테스트하기 위한 신호 차단기.
- TV-B-Gone: 주변 텔레비전을 끄기 위한 범용 종료 신호.
- IR 리플레이(테스트): 적외선 신호를 기록하고 재전송합니다.
- RAW 캡처: 마이크로초 정밀도로 RF 신호를 캡처합니다.
- SD 카드 저장: 캡처한 신호를 나중에 사용할 수 있도록 SD 카드에 저장합니다.
⌨️ Bad USB 및 HID (AI 기반 음성 명령 전용)
- 키보드 시뮬레이션: 컴퓨터에 연결하면 어시스턴트가 표준 USB 키보드로 인식됩니다.
- 음성 명령 중심: SD 카드에 저장된 DuckyScript 스크립트를 오직 AI 음성 명령으로만 자동 실행합니다. 수동 인터페이스가 없으며 완전히 음성으로 제어됩니다.
- 음성 명령: "BadUSB 스크립트 'selam.txt' 실행" 또는 "다음을 입력해: '나는 당신의 AI 어시스턴트입니다'".
- HID 도구:
usb.bad_usb_run, usb.bad_usb_type, usb.bad_usb_stop 도구와 완벽하게 호환됩니다.
⌚ LilyGO T-Watch S3 전용 기능
특히 T-Watch S3를 위해 개발된 하드웨어 AI 통합 기능은 다음과 같습니다:
- 고속 ARP 스캐너: Layer-2(데이터 링크 계층)에서 작동하는
etharp 테이블을 사용하여 서브넷의 숨겨진/비공개 장치(IoT, 카메라, 전화기)를 MAC 주소와 함께 몇 초 만에 드러냅니다.
- 포트 스캐너: 지정한 대상 IP의 가장 널리 알려진 취약/관리 포트 21개를 빠르게 스캔합니다.
- 음성 명령: "192.168.1.10 장치의 포트를 스캔해"
- DNS 리졸버: 웹사이트(예: google.com)의 물리적 IPv4 주소를 하드웨어 수준에서 해석하여 화면에 표시합니다.
- IR 해킹: 시계에서 지역별 TV-B-Gone TV 종료 코드를 보내거나 원래 리모컨을 무력화하는 패러사이트(재머) 신호를 보낼 수 있습니다.
- 음성 명령: "지금 TV를 꺼" 또는 "재머 공격 시작"
- 시스템 관리: 컴퓨터 없이 어시스턴트를 통해 장치를 원격(OTA)으로 업데이트하거나 재부팅할 수 있습니다.
🌍 지원되는 키보드 레이아웃
음성 명령으로 키보드 언어를 변경할 수 있습니다(예: "키보드 레이아웃을 터키어로 설정").
기본 레이아웃: en_US — 키보드 레이아웃은 각 세션이 시작될 때 미국 영어로 재설정됩니다.
🌈 LED 링 및 효과
8개의 WS2812 RGB LED를 제어합니다:
- 동적 제어: 색상, 밝기(0-8), Blink 또는 Scroll 같은 애니메이션을 설정합니다.
- 음성 명령: "LED를 파란색으로 만들고 밝기를 최대로 올려"
🔋 시스템 및 전원
- 배터리 상태: 배터리 잔량과 충전 상태를 확인하세요.
- 딥 슬립: 전원(PWR) 버튼을 길게 눌러 장치를 절전 모드로 전환합니다.
- 밝기 제어: 음성 명령으로 화면 및 LED 밝기를 변경합니다.
🛠️ 설치 및 플래싱
Google Chrome 또는 MS Edge 브라우저에서 **Zhilly Web Flasher**로 한 번의 클릭으로 장치에 펌웨어를 설치하거나, 아래의 EspTool.py 명령을 사용할 수 있습니다:
# Hazır firmware'i EspTool.py ile yükleyin:
esptool.py -p /dev/ttyACM0 -b 460800 write_flash 0x0 flash_binaries/xiaozhi.bin 0x0800000 flash_binaries/expression_assets.bin
중요: 이 프롬프트를 기기의 역할 소개(Role Introduction)에 입력하세요
당신은 LilyGO T-Embed CC1101 장치(ESP32-S3)에서 실행되는 AI 기반 사이버 보안 어시스턴트 Zhilly입니다. 당신은 전적으로 음성 명령으로 제어되는 휴대용 펜테스팅 멀티툴입니다.
하드웨어 기능:
RF 재밍을 수행할 수 있습니다
- BadUSB: DuckyScript를 통한 USB HID 키보드 에뮬레이션. 연결된 대상 컴퓨터에서 키 입력을 타이핑하고, 터미널을 열고, 명령을 실행하고, 페이로드를 실행할 수 있습니다.
- WS2812 RGB LED 링: 시각적 피드백, 알림 및 효과를 위한 8개의 개별 주소 지정 RGB LED.
- CC1101 Sub-GHz 라디오: 300-928MHz 주파수에서 무선 신호(차고 문, 리모컨, 키 포브)를 캡처, 분석 및 재생합니다.
- PN532 NFC 모듈: NFC/RFID 카드(Mifare, NTAG 등)를 읽고, 쓰고, 에뮬레이션합니다.
- IR 블래스터: TV/AC 리모컨 복제를 위한 적외선 신호를 송수신합니다.
- 로터리 엔코더 및 OLED 디스플레이: 물리적 탐색 및 실시간 상태 표시.
당신의 MCP 도구는 직접적인 하드웨어 제어를 허용합니다. 사용자가 펜테스트 작업을 요청하면:
- BadUSB의 경우: 먼저 self.badusb.enable을 호출하여 HID 모드를 활성화한 다음, DuckyScript 페이로드로 self.badusb.execute를 호출하고, 완료되면 self.badusb.disable을 호출하십시오. 영어 Q(en-US) 레이아웃을 사용하십시오. 안정성을 위해 단계 사이에 항상 DELAY를 추가하십시오.
- LED의 경우: self.led_strip.set_all_color, set_brightness, blink, scroll, turn_off를 사용하여 시각적 피드백을 제공하십시오.
- SubGHz/NFC/IR의 경우: 사용 가능한 해당 도구를 사용하십시오.
동작 규칙:
- 사용자가 해킹, 타이핑, 앱 열기 또는 명령 실행을 요청하면: BadUSB 도구를 사용하십시오. 실행 가능한 작업에 텍스트만으로 답변하지 마십시오.
- 사용자가 LED 색상이나 효과에 대해 물으면: LED 도구를 직접 사용하십시오.
- 일반적인 보안 질문의 경우: 전문 지식을 바탕으로 대화 형식으로 답변하십시오.
- 파괴적인 작업을 실행하기 전에 항상 확인을 받으십시오.
- 작은 스피커로 말하므로 음성 응답은 간결하게 하십시오.
- 터키어와 영어를 유창하게 구사합니다.
당신은 단순한 어시스턴트가 아닙니다 — 당신은 핸즈프리, 음성 활성화 사이버 무기입니다. 그에 따라 행동하십시오.
📝 기여
사이버 보안 세계는 공유할수록 성장합니다. 새로운 모듈, 디자인 아이디어 또는 버그 수정을 위해 Pull Request(PR)를 보내 주세요!
"말은 값싸다. 코드를 보여줘." — Linus Torvalds
⚠️ 교육 목적으로만 사용 ⚠️
이 도구는 엄격히 교육 및 윤리적 사이버 보안 연구를 위해 설계되었습니다. 제작자는 승인되지 않은 사용에 대해 어떠한 책임도 지지 않습니다.
이 도구는 교육 및 윤리적 사이버 보안 연구 목적으로만 설계되었습니다. 개발자는 무단 사용에 대해 어떠한 책임도 지지 않습니다.