CRYPTOREX: Large-scale Analysis of Cryptographic Misuse in IoT Devices

정보

Keywords

  • 암호화 오용
  • IoT Firmware
  • Unified-IR

배경

  • 암호화 함수는 잘 정의되었고 신중하게 구현이 되어 있지만, 미숙한 개발자에 의해 실수를 야기하기 쉬움
  • 게다가 자원이 한정된 IoT 환경에서는 성능을 위해 보안을 희생하기도 함

목표

  • CryptoREX(다양한 아키텍처의 IoT 장치에서 암호화 오용을 식별하는 프레임워크)를 설계하고 구현함

방법론

  • CryptoREX
    1. 펌웨어 획득(다운로드) 및 전처리(실행파일 추출)
    2. 바이너리 실행파일을 VEX IR로 바꿈
    3. ICFG(Inter-procedural Control Flow Graph) 생성
    4. 암호 함수 별 파일 구분 없는 호출 그래프를 만듦
    5. Backward taint 분석 수행함
  • 암호화 API 목록은 실행 중에 계속 갱신되며, 자동으로 함수의 인자도 추적함

결과

  • 521개의 펌웨어에서 165개의 사전 정의된 암호화 API로 총 679개의 암호화 오용을 찾음
  • 한개의 펌웨어 당 1120초의 소요시간이 걸림
  • 암호화 오용은 민감한 정보 유출, 인증 우회, 비밀번호 brute-force 등을 가능하게 함

결론

  • 오늘날의 많은 IoT 개발에서 부족한 구현과 취약한 보호를 강조함

+ Recent posts