640 likes | 844 Views
SECU INSIDE 2012. Hardware Hacking with LED Board. 신정훈 ( singi ) @sjh21a WiseGuyz@hackerschool. 소프트웨어 해킹 하다가 말아 먹고 , 이대로는 서울역에 자리 잡을 거 같아서 하드웨어 해킹을 시작 했다가 완전 말아 먹은 … 여러분들은 말아먹지 말길 바라면서 … 어려웠던 부분들을 공유하고자 합니다 . 박수 짝짝. Who am i ?. Contents. About L.E.D Board.
E N D
SECU INSIDE 2012 Hardware Hacking with LED Board 신정훈(singi) @sjh21a WiseGuyz@hackerschool
소프트웨어 해킹 하다가 말아 먹고, 이대로는 서울역에 자리 잡을 거 같아서 하드웨어 해킹을 시작 했다가 완전 말아 먹은… 여러분들은 말아먹지 말길 바라면서… 어려웠던 부분들을 공유하고자 합니다. 박수 짝짝 Who am i?
Contents About L.E.D Board How to Hack in L.E.D Board? Need for hardware hacking Jump to Hardware World!!! Just for Fun Scenarios
About L.E.D Board 1 L.E.D Board 구성요소와구조 그리고, 제품들
L.E.D • 발광 다이오드(Light Emitting Diode) Module • 글자 하나 표현 범위 Component Led board Controller • 전광판에 데이터 전송(MCU)
Remocon • 원격 제어 장치(적외선 통신 이용) PC • 직렬통신, TCP/IP 네트워크를 이용한 방식 Control Method Led board CDMA • SMS형식으로 제어하는 방식
IR수신기 전원 SDRAM (EM6381) MCU (S3C44B0X) JTAG 6pin NAND FLASH (K9F1G08U0D) UART 3pin Led board Vcc 5v, GND NOR FLASH MEMORY (M29W160ET) DataOut포트
How to Hack in LED Board? 2 Hacking IDEA 어떻게 하드웨어 해킹에 접근할까?
외부의 전광판의 메시지를 원하는 대로 조작하는 것 Hacking idea
LED Board Attack Hacking idea Remocon Replication Firmware Dumping Reading Board debug Message Firmware Update
UARTPin을 이용하여, firmware에서 출력되는 디버깅용 메시지를 확인 이를 통해, target에 대한 정보를 획득 할 수 있음. 또한, UART를 이용해 입력을 하여 전광판 문구를 변경 할 수 있는지도 확인. Debug Message Read Debug Message read
Oops! Int 3 UART?? Universal Asynchronous Receiver/Transmitter 직렬 통신의 표준으로써, Target 과 Host PC간의 통신을 담당. 간단한 디버깅 용도로 사용됨. USART라고도 부름.
Get firmware With JTAG JTAG 장비를 이용하여 Target의 Flash Memory에 저장 되어 있는Firmware 덤프. Hack the Firmware
Hack firmware With JTAG JTAG장비를 이용하여Target의 MCU를 디버깅 하면서, Flash Memory에 직접 작성한 프로그램을 업로드. Hack the Firmware
Oops! Int 3 JTAG?? Joint Test Access(Action) Group 또는 Boundary Scan이라고 함. MCU 모든 동작을 실시간으로 디버깅 할 수 있음. 하드웨어 디버깅의 표준(Standard).
HACK THE REMOCON 실제 사용되는 리모콘을 복제하여, 전광판의 내용을 가까운 위치에서 변경하도록 함. Hack the remocon
MORE ADVANCED 제조사 마다 리모콘에 사용되는 Code가 다르기 때문에, 외부의 다른 전광판들을 제어하기 위해 Brute Force 기법으로 구현. Hack the remocon
Need for Hardware Hacking 3 필요 장비들 하드웨어 해킹에 필요한 장비 그리고, 설명
Need to 3 kinds hacking Reading Message with UART Hack the Firmware with JTAG Remocon replication withArduino Other necessary items Very Important Issue!!! How much is it?
UART Device USB-232TTL
JTAG HJTAG Standard
JTAG HJTAG Standard
Arduino Arduino UNO R3
Others CL-1L5
Others KSM-603LM
Others Bread Board
Others Pin Header
Others Jumper Cable
How much??? UART : 29,000 WON H-JTAG : 198,000 WON Arduino Uno 3 : 35,500 WON LED Board : 190,000 WON + OTHERS : ???,???WON + VAT : 10% T_T Total Price : … next page
Jump to Hardware World!! 4 해 킹 시 작 하드웨어 해킹 및 시연
Idea Review HACKING IDEA REVIEW 3. 펌웨어 변경 4. Remocon 복제 1. Firmware 메시지 읽기 2. 펌웨어 추출
reason it is hard 1. 공개된 DATASHEET가 없는 경우가 대다수. (상업용 제품이기 때문에) 2. PCB 뒷면을 볼 수가 없음. (하드웨어 회로를 쉽게 볼 수 없게 하기 위해) 3. 잘못 연결하면 장비가 진짜 타 버릴 수 있음. (Vcc와 GND!!!!!!!!)
Reading message by uart TX RX Vcc
Reading message by uart UART 통신으로 메시지 읽기
*** JTAG *** 해당 보드의 정확한 DataSheet가 없을 경우, 연결 자제. 절대 Vcc와 GND를 바꿔서 연결하지 마세요. 제대로 탑니다. 퓨슝~ 그래도 희망은 있습니다! We are hackers!
JTAG Scanner • http://deadhacker.com/2010/02/03/jtag-enumeration/
JTAG Scanner JTAG Scanner 시연
Remocon protocol 적외선 리모콘의 경우, NEC 포맷을 주로 사용. Sony, 삼성, LG등 많은 적외선 리모콘 포맷이 존재. 진폭 변조 방식으로 0과 1을 구분. 적외선 통신은 빛에 대한 간섭을 많이 받음. 잡음의 처리는 수신/발신 부분에서 같은 캐리어 주파수를 사용하여 해결.
Oops! Int 3 [Leader Code][Custom Code][Data Code] 주기의 넓고, 좁음으로 0과 1을 파악. (진폭 변조) Leader Code : 신호의 시작을 알림. Custom Code : 16bit 또는 8bit x 2로 구성 Data code : 8 bit x 2로 구성. Data code 뒤에 1비트의 Stop bit로 신호의 끝 알림. NEC Format
Oops! Int 3 [custom code]를 통해, 적외선 통신을 사용하는 다양한 기기들이 서로 구분. [data code]는 실제 동작을 나타내는 명령. Ex> 0x71 = 전원 버튼, 0x81 = 1번 버튼 custom code와 data code가 대상에서 사용되는 값과 정확히 일치해야 제어 가능. More than NEC Format
Reading remocon code! Remocon코드 읽기 시연