Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
keysweeper — KeySweeper는 작동하는 USB 벽면 충전기로 위장한 은밀한 Arduino 기반 장치로, 주변에 있는 모든 Microsoft 무선 키보드의 키 입력을 무선으로 수동적으로 스니핑하고, 복호화하며, 기록하고 (GSM을 통해) 보고합니다. | Kitploit
도구/GitHubGitHub/samyk/keysweeper
Embedded Systems SecurityPacket Sniffing & AnalysisData ExfiltrationInformation GatheringWireless SecurityHardware HackingRed Teaming
GitHubsamyk/keysweeper

keysweeper

KeySweeper는 작동하는 USB 벽면 충전기로 위장한 은밀한 Arduino 기반 장치로, 주변에 있는 모든 Microsoft 무선 키보드의 키 입력을 무선으로 수동적으로 스니핑하고, 복호화하며, 기록하고 (GSM을 통해) 보고합니다.

저장소 보기
1.1k246229년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
웹사이트

KEYSWEEPER // SIGINT // SAMY.PL // 전체 공개 // 응용 해킹

KeySweeper

**KeySweeper**는 정상적으로 작동하는 USB 벽면 충전기로 위장한 은밀한 Arduino 기반 장치로, 주변에 있는 모든 Microsoft 무선 키보드의 키 입력을 무선으로 수동 스니핑하고, 복호화하고, 기록한 다음 (GSM을 통해) 보고합니다.

모든 키 입력은 온라인과 로컬에 기록됩니다. 트리거 단어, 사용자 이름 또는 URL이 입력되면 SMS 알림이 전송되어 비밀번호가 노출됩니다. 전원에서 분리해도 KeySweeper는 내부 배터리로 계속 작동하며, 다시 전원이 공급되면 자동으로 충전됩니다. 웹 기반 도구를 통해 키 입력을 실시간으로 모니터링할 수 있습니다.

라이브 데모 및 전체 세부 정보는 영상에서 확인할 수 있습니다: KeySweeper


KeySweeper

KeySweeper 실시간 모니터링 도구

연락처: @SamyKamkar // [email protected] // http://samy.pl

출시일: 2015년 1월 12일

소스 코드 / 회로도: https://github.com/samyk/keysweeper

단가: 작동 방식에 따라 $10 - 80

상태: 작동 가능, 오픈 소스, 오픈 하드웨어, 기밀 해제됨.


(U) 기능

KeySweeper 내부

**KeySweeper**는 정상적으로 작동하는 USB 벽면 충전기로 위장한 은밀한 Arduino 기반 장치로, 영역 내에 있는 모든 Microsoft 무선 키보드(독점 2.4GHz RF 프로토콜 사용)의 모든 키 입력을 무선으로 수동 스니핑하고, 복호화하고, 기록하고, 보고합니다.

키 입력은 선택 사항인 GSM 칩을 통해 인터넷으로 KeySweeper 운영자에게 전송되거나, 플래시 칩에 저장되어 보조 KeySweeper 장치가 대상 KeySweeper의 무선 범위 내에 들어오면 무선으로 전달될 수 있습니다. 웹 기반 도구를 통해 키 입력을 실시간으로 모니터링할 수 있습니다.

KeySweeper는 "www.bank.com"과 같은 특정 키 입력이 입력되면 SMS 알림을 보낼 수 있습니다. KeySweeper를 AC 전원에서 분리하면 꺼지는 것처럼 보이지만, 내부 배터리를 사용해 은밀하게 계속 작동하며 AC 전원에 다시 연결하면 자동으로 충전됩니다.

KeySweeper는 goodfet.nrf 프로젝트에 대한 Travis Goodspeed의 작업과 KeyKeriki v2.0 프로젝트의 Thorsten Schröder와 Max Moser의 작업을 확장합니다.

KeySweeper로부터 온 SMS


(U) 하드웨어

Microsoft 무선 키보드 800

Arduino / Teensy 마이크로컨트롤러

$3 - 30: Arduino 또는 Teensy 마이크로컨트롤러를 사용할 수 있습니다. 제 구성에서는 매우 얇은 프로필 덕분에 3.3v Arduino Pro Mini를 사용합니다.

nRF24L01+ 2.4GHz RF 칩

$1: 저는 2.4GHz에서 GFSK를 사용해 통신하는 $1 nRF24L01+ RF 칩을 사용합니다. 자세한 내용은 아래에서 확인할 수 있으며, 이 칩은 eBay에서 최저 $1에 구매할 수 있습니다. 이 칩은 독점 프로토콜로만 통신할 수 있으며 스니핑용이 아니지만, 아래에서 이 칩을 영리한 방식으로 사용해 무차별 스니핑을 할 수 있음을 알게 될 것입니다.

AC USB 충전기

$6: 저는 AC 전력을 5v DC로 변환하는 저렴한 AC USB 충전기(정류기)를 사용합니다. 제가 링크한 제품은 우연히도 나사가 있어 열기 쉽습니다(열어보는 과정에서 다른 몇 개는 망가뜨렸습니다). GSM 버전의 KeySweeper를 사용하는 경우 실제로는 USB 충전기 두 개를 사용합니다. 작은 충전기(iPhone 충전기와 유사)의 내부 부품과 더 큰 USB 충전기의 외부 케이스를 사용합니다.

SPI Serial Flash 칩

선택 ($2): 키 입력을 저장하는 데 선택 사항인 SPI Serial Flash 칩을 사용할 수 있습니다. 아래의 FONA GSM 보드를 사용하는 경우 키 입력을 인터넷을 통해 실시간으로 저장할 수 있으므로 필요하지 않지만, 더 저렴한 옵션을 원한다면 KeySweeper 내부의 이 칩에 키 입력을 저장한 후, 보조 장치를 사용해 장치의 2.4GHz 무선 범위 내에 들어가 키 입력을 빼낼 수 있습니다.

대부분의 마이크로컨트롤러는 데이터를 저장할 메모리나 EEPROM이 매우 제한적이므로, 이러한 키 입력을 저장할 플래시 칩을 갖는 것이 유리합니다.

Adafruit FONA

선택 ($45): Adafruit는 FONA라는 보드를 만들었습니다. 이 보드를 사용하면 2G SIM 카드로 SMS를 주고받고, 전화를 걸고, 장치에서 직접 인터넷을 사용할 수 있습니다.

이를 사용하면 키 입력이 즉시 백엔드 서버로 전송되어 적절한 데이터 수집이 이루어지므로 플래시 칩이 필요 없습니다. 또한 대상 키보드에서 특정 키워드가 입력되면 지정된 번호로 SMS 메시지를 보내 작전 요원에게 이를 알릴 수 있습니다.

SIM 카드

선택 ($3, FONA 사용 시에만): FONA는 mini-SIM 카드(micro-SIM 아님)를 요구합니다. 저는 T-Mobile 선불 SIM 카드를 사용합니다. T-Mobile은 2G를 지원하므로 사용을 권장합니다. 대부분의 다른 통신사는 2G 네트워크를 이미 폐지했거나 폐지하는 중이며, FONA는 인터넷에서 2G만 지원합니다. 올바른 크기의 SIM 카드를 구매하세요. 자세한 내용은 FONA SIM 요구 사항은 여기를 참조하세요.

3.7V 리튬이온(LiOn 또는 LiPo) 배터리

선택 ($5 이상, FONA 사용 시에만): FONA는 온보드 LiPo/LiOn 배터리 충전을 제공하며, KeySweeper가 AC 전원에 연결되어 있는 동안 배터리는 충전된 상태로 유지되지만 어쨌든 필요합니다. 또한 KeySweeper는 AC 전원에서 분리되면 배터리 전원으로 은밀하게 계속 작동하고, AC 전원에 다시 연결하면 충전을 시작합니다.

전원이 분리된 KeySweeper


(U) 소프트웨어

KeySweeper

KeySweeper의 소스 코드 전체는 제 github에서 얻을 수 있습니다: https://github.com/samyk/keysweeper

KeySweeper는 여러 부분으로 구성됩니다. 기본 코드는 마이크로컨트롤러에 설치되고, jQuery와 PHP를 사용하는 웹 기반 백엔드는 모든 키 입력을 기록하고 대상 키보드를 실시간 모니터링할 수 있는 웹 인터페이스를 제공합니다.

KeySweeper는 또한 maniacbug의 RF24 라이브러리에서 다음 파일이 필요합니다:

  • RF24.h
  • nRF24L01.h
  • RF24_config.h

파일을 keysweeper_mcu_src 디렉터리에 복사하기만 하면 됩니다. 또한 RF24.h 파일의 #include 문을 #include <RF24_config.h>에서 #include "RF24_config.h"로 변경해야 합니다.

Adafruit FONA 라이브러리

제가 만든 Adafruit FONA 라이브러리 버전을 사용해야 합니다. FONA에 새 문자 메시지가 있을 때 알려주는 추가 옵션을 포함했기 때문입니다. 원래 라이브러리에서는 예상보다 더 많은 문자 메시지가 있는지 지속적으로 폴링해야 하지만, 제 버전에서는 fona.setSMSInterrupt(1) 옵션을 활성화할 수 있습니다. 이 옵션은 새 SMS 메시지가 도착하면 RI(링 인터럽트) 핀이 잠시 LOW로 당겨지게 합니다.

jQuery Terminal

웹 페이지를 통해 키보드를 실시간으로 모니터링할 수 있는 백엔드 도구를 만들었습니다. jQuery Terminal 플러그인이 더 멋지게 보이게 해줍니다.

jQuery UI Virtual Keyboard

jQuery UI Virtual Keyboard는 사용자가 실제로 키를 누를 때 가상 키보드의 키가 눌리는 것을 보여주며 KeySweeper 실시간 스파이 인터페이스 도구를 계속 멋지게 만듭니다.

KeySweeper 실시간 모니터링 도구


(U) 키보드 무선 프로토콜 확인

Microsoft 무선 키보드를 입수하여 소유하게 되면, 뒷면을 확인하여 FCC ID를 조사할 수 있습니다. 제 키보드의 FCC ID(미국에서 무선 주파수를 사용하는 모든 장치에 필요한)는 C3K1455이며, FCC 웹사이트에서 쉽게 검색할 수 있습니다.

http://samy.pl/keysweeper/fcc.jpg

즉시 우리는 FCC 보고서에 따라 키보드가 2403 - 2480MHz에서 통신한다는 것을 발견합니다.

이제 이것이 2.4GHz 장치라는 것을 알았으므로, wi-fi, bluetooth, zigbee 등과 같은 일반적인 2.4GHz 프로토콜을 사용하거나 독점 프로토콜을 사용한다고 가정합니다. 장치에 자체 USB 동글(자체 FCC ID, C3K1461)이 포함되어 있었기 때문에 독점 2.4GHz 신호일 가능성이 매우 높습니다.

독점 2.4GHz일 가능성이 높으므로 이제 어떤 2.4GHz 스니핑 방법을 사용해야 합니다. 이것은 802.11이 아니므로(SkyJack에서 사용한 것과 같은) WiFi 스니퍼는 도움이 되지 않으며, RTL-SDR 자체는 RF 다운 컨버터를 추가로 사용하지 않는 한 약 2.2GHz에서 한계가 있으므로 도움이 되지 않습니다(Digital Ding Dong Ditch에서 RTL-SDR을 사용했습니다). 그래서 저는 강력하고 저렴한 소프트웨어 정의 라디오인 HackRF를 즉시 사용하고 싶지만, 가격 대비 매우 강력하지만 더 저렴한 하드웨어로 해결할 수 있을 수도 있습니다.

이전 경험을 바탕으로, 이 키보드가 Nordic nRF24L01+, TI CC2500 또는 Cypress CYRF6936과 같은 것을 사용한다고 추측하지만, 더 조사하지 않고는 확신할 수 없습니다.

도구 다운로드