ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Flash Memory Dump 환경설정#1
    IoT/기술정리 2018. 10. 14. 04:19

    임베디드 장비에서 펌웨어를 추출하는 방법은 대표적으로 3가지가 있다.

    1. UART

    2. JTAG

    3. Flash Memory

    현재 분석중인 IP Camera에는 디버깅포트(UART,JTAG)는 없고, Flash Memory가 존재한다.


    만약 Flash Memory와 연결이 된다면, 펌웨어 추출 / 수정 / 삭제가 가능하다.

    따라서, 펌웨어 무결성 검사때문에 펌웨어패치를 못한다면 Flash Memory를 통해서 Direct-patch가 가능하다.


    말은 간단하지만, 실제로 환경설정만 몇시간의 삽질이 필요하고

    환경설정이 다 됐다 하더라도, 바로 Flash Memory에 연결되는 이상적인 결과가 나오는 건 아니였다.


    Flash Memory Dump 과정을 #1/#2로 나눠서 기록할 예정이며

    본문(#1)에서는 준비물에 대해서 다룰 것 이다.


    [ 준비물 목록 ]

    1. Flash Memory Datasheet

    2. 후커(IC Grabber)

    3. F/F 점퍼 케이블

    4. 라즈베리파이

    5. 무선랜 어댑터 or 랜선

    6. 모니터(화면송출기기)


    #10-24 내용추가
    - 준비물 중 라즈베리파이말고 Flash Memory Pin만 있는 어댑터가 따로 있다고 하네요.
    만약 라즈베리파이가 있다면 라즈베리파이를 사용하면 되고
     없다면 어댑터만 따로 구매하시는게 비용면에서 좋을 것 같습니다.
    겸사겸사 라즈베리파이 하나 장만하셔도 되구요!



    1. Flash Memory Datasheet

    - 찾아본 결과, 대부분 Pin이름만 다르고, 쓰임새는 다 똑같은 것 같았다.

    그래도 정확한 Pin연결을 위해 Datasheet는 꼭 필요하다.

    Datasheet는 Chip위에 써져있는 모델명을 구글에 검색해서 구하는게 일반적이다.


    Flash Memory는 양쪽으로 Pin이 4개씩 총 8개의 Pin이 있다.

    저 동그라미 친 칩이 Flash Memory고 모델명은 'AH1712 25Q128CSIG E74926'이다.

    보다시피 Pin이 8개인 칩들이 몇개 더 있는데, 모델명을 일일히 검색해서 구분해야 한다.


    [!]검색TIP

    - 모델명을 전부 검색하면 검색결과가 안나오는 경우가 있다.

    이럴때는 띄어쓰기를 기준으로 잘라서 검색해보는 것이 좋다.

    Ex) AH1712 / 25Q128CSIG / E74926


    위 칩같은 경우는 25Q128CSIG가 메인 모델명이 였고, AH1712 / E74926은 모델버전 같은 개념이였다.





    2. 후커 

    정식명칭은 IC Grabber이다.

    - 모양은 왼쪽처럼 생겼으며, 오른쪽 처럼 잡아당기면 Pin을 잡을 수 있는 핀셋이 나온다.

    해당 사진이 제일 기본적인 후커고, 점퍼케이블과 일체형인것도 있고, 크기가 작은 후커도 있다.


    후커는 ebay나 Amazon에서 구매가 가능하며, TIP을 주자면 크기가 작은 후커를 사는 것을 추천한다.

    Pin들의 간격이 서로 좁아서, 후커를 물리는 것도 일이기 때문이다.


    일반 후커보다 주둥이 부분이 더 작은 후커가 있다.

    원래는 오실로스코프를 사면 제공되는 후커인데, 개별 구매가 가능하다.

    [Ebay LINK]




    3. F/F 점퍼 케이블

    - 부를 때는 '암암 점퍼'라고 말한다.

    - 위 사진처럼 양쪽 모두 들어가있는 점퍼 선을 F(Female)/F(Female) 또는 암암 점퍼 케이블이라고 한다.


    - 위 사진처럼 바깥으로 튀어나와 있는 부분은 M(Man) / 수 라고 말한다.




    4. 라즈베리파이

    - 위 사진이 RaspberryPi(라즈베리파이)이다.

    일반PC에는 Flash Memory와 통신할 수 있는 Pin이 없기 때문에

    라즈베리파이의 GPIO Pin을 이용해서 연결을 해야한다.


    '라즈비안'이라는 전용OS를 올려야하기 때문에, SD카드까지 있어야한다.

    용량은 최소 4GB를 권장한다.


    라즈비안OS 설치법은 어렵지 않으니, 설치법을 보면서 따라하면 된다.

    OS설치 참고 : https://writingdeveloper.tistory.com/2




    5. 무선랜 어댑터 또는 랜선

    - Flash Memory Dump를 위한 패키지들을 apt로 다운받아야 하기 때문에 인터넷이 필요하다.


    - 위 사진처럼 USB형식으로 무선랜을 잡을 수 있는 어댑터를 무선랜 어댑터라고 한다.

    가격은 13,000원~14,000원 선이다.

    라즈베리파이에서 Wifi를 사용하려면 무선랜 어댑터가 필요하며, 유선랜을 사용하려면 랜선케이블이 필요하다.

    또한, 라즈베리파이 내에서 설정파일을 수정해줘야 한다.

    인터넷 설정 참고 블로그




    6. 모니터

    - 라즈베리파이를 GUI환경에서 사용하기 위해서 모니터가 필요하다.

    요즘은 TV랑도 연결이 되기 때문에, 자신한테 편한 화면 송출 기기를 사용하면 될 것 같다.


    여기까지 준비가 됐다면, Flash Memory Dump를 위한 준비물은 다 갖춘 상태이다.

    다음 글은 필요한 패키지들과 라즈베리파이 환경설정을 다룰 예정이다.

    댓글

Designed by Tistory.