🇰🇷 한글 설명
Android 클라이언트가 AppHub 서버에 등록될 때 MQTT 브로커를 통해 메시지를 교환하고 HMI 장치 명령을 수신합니다. 이 과정에서 사용되는 암호화 프로토콜이 하드코딩된 DES 대칭 키를 사용하며, 이는 리버싱을 통해 탈취가 가능합니다. 공격자가 동일 서브넷 내에서 악성 MQTT 브로커를 제어할 경우, HMI 장치에 임의의 명령을 실행할 수 있습니다.
💡 쉬운 설명
장치를 원격 제어할 때 사용하는 암호 키가 고정되어 있어 해커가 이를 알아내기 쉽습니다. 해커가 같은 네트워크에 있다면 가짜 명령을 보내 장치를 마음대로 조종할 수 있습니다.
🇺🇸 원문 (English)
The Android Client application, when enrolled to the AppHub server, connects to an MQTT
broker to exchange messages and receive commands to execute on the HMI device.
The protocol builds on top of MQTT to implement the remote management of the device is encrypted with a hard-coded DES symmetric key, that can be retrieved reversing both the Android Client application and the server-side web application.
This issue allows an attacker able to control a malicious MQTT broker on the same subnet
network of the device, to craft malicious messages and send them to the HMI device, executing arbitrary commands on the device itself.
📍 영향받는 시스템
AppHub 서버에 등록된 Android Client 애플리케이션 및 연결된 HMI 장치
⚔️ 공격 벡터
동일 서브넷 내 악성 MQTT 브로커를 통한 탈취된 DES 키 기반의 임의 명령 주입
🛡️ 대응 방법
하드코딩된 DES 키를 제거하고 동적 키 교환 방식(예: TLS/SSL)으로 암호화 프로토콜을 업데이트하십시오.
🔧 검증 코드
명령어 실행 결과로 고정된 형태의 암호화 키 패턴이 발견되면 취약한 상태로 간주합니다.
strings /path/to/android_client_app | grep -E '[a-fA-F0-9]{8,}'
📊 CVSS Vector String
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
💻 영향받는 소프트웨어
Microsoft Exchange Server