| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
- beebox
- kibana
- Openstack
- SQL Injection
- 포렌식
- InsecureBank
- Volatility
- 안드로이드
- Docker
- foremost
- imageinfo
- XSS
- ctf
- ESXi
- dreamhack
- base64
- diva
- Suninatas
- frida
- CTF-d
- lord of sql injection
- vulnhub
- igoat
- FTK Imager
- 2018
- elasticsearch
- filescan
- 인시큐어뱅크
- otter
- Strings
- Today
- Total
Information Security
자동차 속도계 뒤에서 벌어지는 이야기: CAN 통신 해킹 완전 분석 Part 2 본문
cangen 명령어를 보 Linux CAN 환경에서 사용하는 테스트용 명령어로, 가상의 CAN 프레임을 랜덤 또는 지정된 패턴으로 생성하여 CAN 인터페이스로 전송하는 도구입니다.

CAN 프레임 구조는 아래와 같다.

가상 CAN 인터페이스(vcan0)로 랜덤 CAN 프레임을 계속 생성해서 전송합니다.

vcan0 인터페이스로 들어오는 CAN 프레임을 캡처해서 파일로 로그 저장하면 아래와 같이 랜덤 값이 찍히는 것을 알 수 있습니다.

candump 명령어를 실행한 후 방향키로 속도를 올려 로그에 저장하게 합니다.

vcan0 인터페이스에서 수신된 CAN 트래픽 로그를 확인합니다.

cansniffer 명령어를 사용하면 vcan0 인터페이스에서 CAN 트래픽을 실시간으로 분석하면서 “변하는 데이터만 강조해서” 보여주는 것을 알 수 있습니다.

cansniffer를 실행한 후 -000000 입력합니다.

+40C를 입력하면 ID 40C 값만 출력하여 변하는 데이터라는 것을 알 수 있습니다.

wc 명령어로 해당 CAN 프레임이 76,689개 저장되어 있어 split 명령어로 25,000줄씩 파일을 나누었습니다.

CAN ID 19B에서 00 00 0B 00 00 00 면 운전석 뒤쪽 문이 열리는 것을 알 수 있습니다.

CAN ID 19B에서 00 00 0F 00 00 00 면 문이 닫는 것을 알 수 있습니다.

CAN ID 244에서 00 00 00 00 2F AA 면 MPH 속도가 상승하는 것을 알 수 있습니다.

CAN ID 188에서 01 00 00 00면 방향지시등 왼쪽이 동작하는 것을 알 수 있습니다.

CAN ID 188에서 02 00 00 00면 방향지시등 오른쪽이 동작하는 것을 알 수 있습니다.

'IoT 보안 > 자동차 해킹' 카테고리의 다른 글
| 자동차 속도계 뒤에서 벌어지는 이야기: CAN 통신 해킹 완전 분석 Part 1 (0) | 2026.03.02 |
|---|