Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
lights-out — ThinkPad X230의 웹캠 LED 제어 도구 | Kitploit
도구/GitHubGitHub/xairy/lights-out
Embedded Systems SecurityExploitationReverse EngineeringHardware HackingRed TeamingFirmware Analysis
GitHubxairy/lights-out

lights-out

ThinkPad X230의 웹캠 LED 제어 도구

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Lights Out

이 저장소에는 ThinkPad X230 웹캠 LED를 노트북에 물리적으로 접근하지 않고 소프트웨어로 제어할 수 있게 해주는 도구들이 포함되어 있습니다. 이 도구들은 맬웨어가 LED 표시 없이 웹캠을 통해 비디오를 녹화할 수 있다는 것을 실증적으로 보여주기 위해 제작되었습니다.

이 방식은 USB를 통해 웹캠 펌웨어를 재플래시하여(X230 웹캠은 내부적으로 USB로 연결되어 있습니다) LED를 임의로 제어할 수 있는 기능을 추가하는 방식으로 작동합니다. 이 접근 방식은 USB를 통해 웹캠을 연결하고 펌웨어 재플래시를 허용하는 것이 노트북 제조사 전반에서 흔한 설계 패턴이기 때문에 다른 많은 노트북에도 영향을 미칠 가능성이 높습니다.

제가 POC 2024에서 발표한 "Lights Out: Covertly turning off the ThinkPad webcam LED indicator" 강연(pdf)에서 자세한 내용을 확인하세요: X230 웹캠 펌웨어를 재플래시하는 방법 발견, 펌웨어 리버스 엔지니어링, LED 제어용 임플란트 추가, 그리고 이 접근 방식이 다른 노트북에 적용 가능한지에 대한 메모.

참고: 웹캠 펌웨어를 재플래시하면 웹캠이 벽돌이 될 수 있으므로 이러한 도구를 사용할 때 주의하십시오.

Overview

ThinkPad X230(및 같은 시대의 다른 몇몇 노트북)에 사용된 웹캠은 Ricoh R5U8710 USB 카메라 컨트롤러를 기반으로 합니다. 이 컨트롤러는 펌웨어의 일부인 SROM 부분을 웹캠 보드에 있는 SPI 플래시 칩에 저장합니다. 또한 이 컨트롤러는 USB를 통해 SPI 칩의 내용을 재플래시하는 것을 허용합니다.

X230 웹캠 보드의 LED는 R5U8710 컨트롤러의 GPIO B1 핀에 연결되어 있습니다. GPIO B 포트는 R5U8710 내부의 8051 기반 CPU의 XDATA 메모리 공간에서 주소 0x80에 매핑됩니다. 따라서 해당 주소의 값을 변경하면 LED 상태가 바뀝니다. 이것은 웹캠이 현재 비디오를 스트리밍 중인지 여부와 관계없이 동작합니다.

이 저장소에 포함된 도구들은 USB로 제어되는 이른바 "유니버설 임플란트(universal implant)"가 포함된 맞춤형 펌웨어를 웹캠 보드의 SPI 칩에 플래시할 수 있게 해줍니다. 이 임플란트는 임의의 주소(XDATA 메모리 공간 내)에 제어된 데이터를 쓰고, 임의의 주소(CODE 메모리 공간 내, 오프셋 0xb000부터는 XDATA와 별칭됨)를 호출할 수 있게 해줍니다.

유니버설 임플란트는 다음 용도로 사용할 수 있습니다:

  • 카메라 컨트롤러 메모리 내에 2단계 임플란트를 동적으로 업로드하고 실행(원래는 리버스 엔지니어링 목적으로 사용됨);

  • 웹캠 LED를 직접 제어.

자세한 내용은 발표 슬라이드를 참조하세요.

Tools

  • srom.py — USB를 통해 Ricoh R5U8710 기반 웹캠의 펌웨어 SROM 부분을 읽고 씁니다.

    참고: 웹캠은 부팅 중에만 SROM 펌웨어를 로드합니다. 따라서 업데이트된 펌웨어가 로드되도록 하려면 노트북을 전원 차단(재부팅이 아닌 완전 종료)해야 합니다;

  • patch_srom.py — FRU 63Y0248 웹캠(원래 X230 웹캠이 아닌)의 SROM 이미지에 유니버설 임플란트를 추가하도록 패치합니다.

    참고: 이 도구는 원래 X230 웹캠 SROM 이미지와 함께 작동하려면 수정이 필요합니다. 하지만 FRU 63Y0248 SROM 이미지(선택적으로 임플란트가 추가된)는 원래 X230 웹캠에도 플래시할 수 있습니다;

  • fetch.py — 유니버설 임플란트를 통해 동적으로 업로드되는 2단계 임플란트를 사용하여 USB를 통해 IRAM, XDATA 또는 CODE 메모리 공간의 내용을 가져옵니다;

  • led.py — 유니버설 임플란트를 통해 XDATA의 주소 0x80 값을 덮어써서 웹캠 LED를 켜거나 끕니다.

Memory dumps

  • srom/x230.bin — 원래 X230 웹캠 모듈의 SROM 내용(FRU 불명, 보드에 19N1L1NVRA0H 표시);

  • srom/63Y0248.bin — FRU 63Y0248 웹캠 모듈의 SROM 내용;

  • code/63Y0248.bin — FRU 63Y0248 웹캠 모듈에서 유출된 CODE 메모리 공간의 내용.

    참고: Boot ROM은 오프셋 0xb000 아래에 있으며, 원래 X230 웹캠 모듈의 Boot ROM과 동일합니다.

도구 다운로드