하드웨어 보안
제품으로 출하하는 기기에서 JTAG 등의 디버그 포트를 비활성화하거나 인증이 필요하도록 하는 이유로 올바른 것은?
- A디버그 포트가 있으면 전력이 늘어 배터리가 금방 닳기 때문
- B디버그 포트는 출하하면 자동으로 망가지기 때문
- C디버그 포트로는 메모리나 레지스터의 읽기/쓰기, 프로그램 정지가 가능하므로, 그대로 두면 펌웨어나 키를 도난당하거나 변조될 수 있기 때문
정답과 해설 보기
정답: C. 디버그 포트로는 메모리나 레지스터의 읽기/쓰기, 프로그램 정지가 가능하므로, 그대로 두면 펌웨어나 키를 도난당하거나 변조될 수 있기 때문
JTAG나 SWD 같은 디버그 포트는 개발 중에 칩 안을 자유롭게 조사할 수 있는 강력한 도구입니다. 제품에 그대로 남아 있으면 공격자가 기판의 단자에 장치를 연결하여 펌웨어를 읽어 내거나, 보안 부트를 건너뛰거나, 키를 꺼낼 수 있습니다. 출하 시 eFuse로 비활성화하거나, 암호 인증을 통과한 경우에만 사용할 수 있게 하는 등의 대책을 취합니다.
- A. 주된 이유는 전력이 아닙니다.
- B. 자동으로 망가지는 것이 아닙니다.
- C. 올바릅니다. 개발에 편리한 기능은 공격에도 편리합니다.