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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Hardware Hacking Cheatsheet — 하드웨어 해킹 치트시트 | Kitploit
도구/GitLabGitLab/myasnik/hardware-hacking-cheatsheet
Embedded Systems SecurityIoT SecurityHardware SecurityLearning & EducationCurated ResourcesFirmware Analysis
GitLabmyasnik/hardware-hacking-cheatsheet

Hardware Hacking Cheatsheet

하드웨어 해킹 치트시트

저장소 보기
2215년 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Hardware Hacking 치트시트

[[TOC]]

면책 조항

  • 저는 이런 것들을 배우려고 하는 초보자라서 100% 정확하지 않을 수도 있습니다
  • 영어가 서툴러서 죄송합니다

참고 사항

  • 가장 쉬운 경로 우선 방법론을 따르세요
  • 때로는 납땜을 해야 할 수도 있습니다; 여기에 빠르고 간단한 방법이 있습니다
    • PCB 비아에 와이어를 직접 납땜해야 할 수도 있습니다 (동영상)
      1. 커터를 사용하여 솔더 마스크 아래의 반짝이는 부분이 보일 때까지 PCB 표면을 긁습니다
      2. 유리 섬유 펜슬로 표면을 한 번 더 긁습니다
      3. IPA와 면봉으로 표면을 청소합니다
      4. 플럭스를 조금 바릅니다
      5. 와이어에 틴을 입히고 납땜합니다
    • 참고 사항
      • 납땜 인두 팁에 항상 틴을 입히세요
      • 온도: 250-350 C
      • PCB를 손으로 만지지 마세요

정보 수집 및 첫 상호 작용

  1. 기기 뒷면의 라벨을 보고 다음을 찾습니다
    • 모델명
    • 일련 번호
    • 기기를 브랜딩한 회사 (제조사가 아닐 수도 있음)
  2. 방금 수집한 정보를 사용하여 인터넷에서 검색합니다
    • 정보가 포함된 최고의 웹사이트
      • TechInfoDepot
      • OpenWRT
    • 다음을 검색하면 보통 많은 정보로 이어집니다
      • FCC ID (참조 웹사이트)
      • SOC 이름
      • 플래시 칩 이름 및 용량
      • RAM 칩 이름 및 용량
      • 기타 가능한 정보 소스
  3. 기기를 엽니다
    • 기기를 여는 방법에 대한 튜토리얼을 검색합니다
    • 일부 기기는 열지 못하게 접착되어 있을 수 있으니 조심히 다루세요
    • 때로는 회로의 일부를 덮는 방열판이 있는데, 가능하면 제거하세요
  4. 부품 식별
    • 회로 명칭을 더 읽기 쉽게 만들려면
      • 면봉 + 알코올을 사용하고, 알코올이 마르면 회로에 분필을 덮은 다음 청소하세요; 이제 회로 명칭을 읽을 수 있습니다
      • 돋보기를 사용하세요
    • 이러한 부품에 대한 정보와 데이터시트를 인터넷에서 검색하세요; 아무것도 찾지 못하면 중국 검색 엔진을 시도해 보세요
      • Baidu
      • Sogou
      • Haosou
    • 중요: VCC와 GND가 잘 노출된 부품을 찾는 것은 매우 유용합니다
  5. UART 인터페이스 찾기: 대략 TTY와 비슷함
    • 인터넷에서 검색
    • PCB에서 GND, IN 또는 RX, OUT 또는 TX 및 VCC를 검색
    • PCB에서 3/4 핀을 검색
      1. GND 기준점 찾기
        • 이전에 찾은 부품 사용
        • 보통 금속 판은 GND에 연결됨
      2. VCC 기준점 찾기
        • 이전에 찾은 부품 사용
        • 커패시터를 검색하세요, 보통 VCC에 한 점이 있습니다
      3. 아래 표를 채우면서 UART 후보 핀을 테스트합니다 (글머리 기호는 각각 표의 열입니다)
        1. UART 핀의 GND에 대한 저항 테스트 (멀티미터를 저항 측정으로, 보통 200k)
        2. UART 핀의 VCC에 대한 저항 테스트 (멀티미터를 저항 측정으로, 보통 200kOhm)
        3. 기기에 전원을 켜고 GND에 대한 UART 핀 전압 테스트 (멀티미터를 전압 측정으로, 보통 20V)
        4. 기기에 전원을 켜고 부팅 중에 의심되는 TX UART 핀의 GND에 대한 전압 테스트 (멀티미터를 전압 측정으로, 보통 20V); 전압이 진동하면 이 핀은 아마 TX입니다 (데이터를 보내고 있기 때문)
        5. 기기에 전원을 켜고 부팅 중에 의심되는 RX UART 핀의 GND에 대한 전압 테스트 (멀티미터를 전압 측정으로, 보통 20V); 전압이 0에 고정되어 있으면 이 핀은 아마 RX입니다 (데이터 수신을 기다리고 있기 때문)
        • 표

          PINGND 저항VCC 저항V참고
          1
          2
          3
          4
          • 예시

            PINGND 저항VCC 저항V참고
            130kOhm0Ohm3.3VVCC
            24.7kOhm34kOhm3.3V부팅 시 1.6-3.3V - TX
            3INFOhm (멀티미터 1)INFOhm (멀티미터 1)3.3V부팅 시 0V - RX
            40Ohm30kOhm0VGND
    • Jtagulator 사용
      1. 컴퓨터에 연결합니다 (baud rate: 115200)
      2. 중요: H는 도움말 출력 기능입니다, 어디서나 사용하세요
      3. 보드 GND를 Jtagulator GND에 연결하고, 보드 핀 1,2,3을 Jtagulator 채널 1,2,3에 연결합니다
      4. V: 작동 전압 설정
      5. U: UART 식별 메뉴 진입
      6. U: 식별 시작
      7. Text string to output: 기본값
      8. Starting channel: 보드의 핀 1을 연결한 채널
      9. Ending channel: 보드의 핀 3을 연결한 채널
      10. Ignore non-printable characters: Yes
      11. 완료!
    • TODO: - BurtleinaBoard + Busside 사용
  6. UART로 연결: 직렬 어댑터 (UART -> USB)를 사용하여 컴퓨터를 통해 보드에 연결합니다
    • 선택한 직렬 어댑터: FT232H + Focaccia Board
    1. 적절한 전압 (3.3V 또는 5V)을 선택하세요, 그렇지 않으면 보드나 직렬 어댑터가 손상됩니다
    2. 보드 RX를 어댑터 TX에 연결하고 보드 TX를 어댑터 RX에 연결합니다
      • 참고: 보통 VCC 핀을 연결할 필요는 없습니다
    3. 어댑터를 컴퓨터에 연결합니다
      1. sudo lsusb로 어댑터를 찾습니다
      2. ls -lart /dev로 모든 디바이스 파일을 찾습니다; 우리 것은 마지막 몇 개 중 하나여야 하며, 보통 ttyUSB0입니다
      3. 이 디바이스에 접근하려면 dialout 그룹에 속해야 합니다 (또는 root여야 함), 그룹을 확인하려면 groups $USER
      4. screen /dev/ttyUSB0 $BAUDRATE로 TTY에 연결합니다
        • $BAUDRATE는 여기에서 찾은 것 중 하나일 수 있습니다
        • 가장 일반적인 $BAUDRATE
          • 115200
          • 9600
          • 57600
          • 38400
          • 19200
        • 중요: $BAUDRATE를 잘못 설정하면 알아볼 수 없는 문자나 아무것도 보이지 않을 수 있습니다
        • ctrl + a -> k -> y: screen 닫기
    • RX 핀이 작동하지 않는 것 같으면 (입력하고 Enter를 눌러도 아무 일도 일어나지 않으면) "return" 값이 잘못되었을 수 있습니다: \r\n 또는 \n?
      • 이 문제를 해결하려면 파이썬의 직렬 통신 라이브러리인 pyserial을 사용하세요, 예시:
        #!/usr/bin/env python3
        
        import serial
        
        ser = serial.Serial('/dev/ttyUSB0', 115200, tmieout = 0.1)
        ser.write(b"HELLO\r\n")
        ser.write(b"HELLO\n")
        
      • 문제가 지속되면 로직 분석기를 사용하세요 (여기 저렴한 제품)
  7. JTAG 인터페이스 찾기
    • JTAG이란 무엇인가: JTAG 인터페이스는 제조업체가 칩의 핀 간 물리적 연결을 테스트할 수 있는 방법을 제공합니다. 전기 엔지니어가 JTAG을 사용하여 칩을 "디버그"한다고 말할 때, 그들은 전통적인 소프트웨어 디버깅과는 매우 다른 것을 말하는 것입니다. 그들은 칩 A의 핀 A가 칩 B의 핀 B에 물리적으로 연결되어 있고 모든 핀이 올바르게 작동하는지 확인하는 것을 말합니다. JTAG은 장치에 직접 하드웨어 액세스를 제공하므로 보안 연구에도 훌륭한 도구입니다.
    • JTAG 속성
      • 제어 가능성(Controllability): 내부 비트를 0 또는 1로 설정
      • 관찰 가능성(Observability): 내부 비트의 값 확인
      • ...그래서 EEPROM 읽기/쓰기
      • 인-서킷 디버깅: 회로에서 코드 디버깅 (예: OpenOCD 및 GDB 사용)
    • 인터넷에서 검색
    • PCB에서 TCK, TDI, TDO, TMS 및 TRST (선택 사항) 검색
      • TCK (Test Clock): 컨트롤러의 속도를 결정하는 드러머 또는 메트로놈. 이 핀의 전압은 리드미컬하고 꾸준한 박자로 위아래로 맥동합니다. 클록의 각 "박자"마다 컨트롤러는 단일 동작을 수행합니다.
      • TMS (Test Mode Select): 모드 선택 핀의 전압은 JTAG이 수행하는 동작을 제어합니다. 이 핀의 전압을 조작하여 JTAG에게 원하는 작업을 지시합니다.
      • TDI (Test Data-In): 칩으로 데이터를 공급하는 핀. JTAG 표준은 이 핀을 통한 통신 프로토콜을 정의하지 않습니다. 이는 제조업체에게 달려 있습니다. JTAG이 보기에는 이 핀은 단순히 1과 0이 칩 안으로 들어가는 경로일 뿐입니다. 칩이 그 값들로 무엇을 하는지는 JTAG과 무관합니다.
      • TDO (Test Data-Out): 칩에서 나오는 데이터용 핀. 데이터 입력 핀과 마찬가지로 통신 프로토콜은 JTAG에 의해 정의되지 않습니다.
      • TRST (Test Reset, 선택 사항): 이 신호는 JTAG을 알려진 양호한 상태로 리셋하는 데 사용됩니다.
    • PCB에서 5/6 핀 행 또는 10, 12, 14, 20 핀의 이중 행을 검색
      1. GND 기준점 찾기
        • 이전에 찾은 부품 사용
        • 보통 금속 판은 GND에 연결됨
      2. VCC 기준점 찾기
        • 이전에 찾은 부품 사용
        • 커패시터를 검색하세요, 보통 VCC에 한 점이 있습니다
      3. 아래 표를 채우면서 JTAG 후보 핀을 테스트합니다 (글머리 기호는 각각 표의 열입니다)
        1. JTAG 핀의 GND에 대한 저항 테스트 (멀티미터를 저항 측정으로, 보통 200k)
        2. JTAG 핀의 VCC에 대한 저항 테스트 (멀티미터를 저항 측정으로, 보통 200kOhm)
        3. 기기에 전원을 켜고 GND에 대한 JTAG 핀 전압 테스트 (멀티미터를 전압 측정으로, 보통 20V)
        • 표
도구 다운로드