🦹 보안이 뭔디?

일상의 QR코드가 무기가 되는 순간 : 북한 김수키의 악성코드 공격 분석

타잔007 2025. 12. 19. 17:39

택배 배송 조회는 이제 우리 일상의 일부가 되었다. 스마트폰으로 QR코드를 스캔하면 실시간으로 내 물건이 어디쯤 오고 있는지 확인할 수 있다. 하지만 이러한 편리함 뒤에는 새로운 위협이 숨어 있다. 북한 국가 연계 해킹 조직 김수키가 바로 이 일상적인 행위를 무기화했다.

 

엔키화이트햇 보안 연구진이 최근 발견한 공격 캠페인은 우리가 얼마나 쉽게 속을 수 있는지를 보여준다.

스미싱 문자 메시지 하나로 시작된 공격은 정교하게 구성된 가짜 배송 조회 사이트로 이어지고, 그곳에 배치된 QR코드는 사용자의 스마트폰에 악성 앱을 심는 관문이 된다. 문제는 이 과정이 너무나 자연스럽다는 것이다. 배송 조회를 위해 QR코드를 스캔하는 행위에 누가 의심을 품겠는가.

진화하는 공격 메커니즘

이번 공격에 사용된 악성코드는 DOCSWAP의 최신 변종으로, 이전 버전보다 훨씬 정교해졌다. 가장 주목할 만한 변화는 네이티브 복호화 기능의 도입이다. 'libnative-lib.so'라는 네이티브 라이브러리를 통해 내부에 숨겨진 악성 APK를 복호화하는 방식은 기존의 자바 기반 XOR 복호화보다 분석과 탐지를 훨씬 어렵게 만든다.

 

복호화 과정은 3단계로 구성된다. 각 바이트 값의 비트를 반전시키고, 5비트 왼쪽 회전을 적용한 후, 4바이트 키를 사용해 XOR 연산을 수행한다. 이러한 다층 암호화는 자동화된 보안 솔루션의 정적 분석을 우회하기 위한 전형적인 기법이다. 공격자들은 단순히 악성코드를 숨기는 것을 넘어, 그것을 발견하는 과정 자체를 복잡하게 만들고 있다.

 

악성 앱은 CJ대한통운, 옥션과 같은 국내 주요 서비스는 물론 VPN 앱, 암호화폐 에어드롭 인증 시스템까지 사칭한다. 이러한 다양한 위장은 공격 대상의 범위를 넓히는 동시에 각 타겟에 맞춤화된 접근을 가능하게 한다. 사용자 입장에서는 자신이 평소 사용하는 서비스의 보안 앱이라고 믿고 설치하게 되는 것이다.

사회공학의 정교함

이번 공격에서 가장 인상적인 부분은 기술적 복잡성이 아니라 사회공학적 설계의 치밀함이다.

공격자들은 접속 기기에 따라 서로 다른 콘텐츠를 제공한다. PC에서 피싱 링크에 접속하면 '보안상의 이유로 PC에서는 이 페이지를 볼 수 없습니다'라는 메시지와 함께 QR코드가 표시된다. 이는 완벽하게 자연스러운 시나리오다. 많은 모바일 전용 서비스들이 실제로 이런 방식으로 동작하기 때문이다.

 

안드로이드 기기에서 직접 링크를 열면 가짜 보안 점검 화면이 나타나며, 인증을 완료하려면 보안 앱을 설치하라는 안내가 제공된다. 연구진이 확인한 초기 피싱 메시지에는 하드코딩된 배송 번호 '742938128549'가 포함되어 있었다. 앱 설치 후 이 번호를 입력하면 인증 과정이 완료되고, 실제 배송 조회 사이트가 웹뷰로 표시된다. 사용자는 정상적으로 배송 정보를 확인했다고 생각하지만, 그 순간 백그라운드에서는 악성 서비스가 조용히 작동을 시작한다.

 

Base64로 인코딩된 URL과 서버측 로직의 결합은 보안 솔루션의 탐지를 더욱 어렵게 만든다. URL 자체만으로는 악성 여부를 판단할 수 없고, 실제 접속 기기와 맥락을 분석해야만 전체 공격 구조를 파악할 수 있다. 이는 자동화된 URL 필터링이나 샌드박스 분석을 우회하기 위한 전략이다.

포괄적인 감시 능력

일단 설치되면 이 악성코드는 스마트폰을 완전히 장악한다. 57개 명령을 지원하는 원격제어 기능은 사실상 스마트폰에서 할 수 있는 모든 것을 포함한다. 오디오와 비디오 녹음, 파일 관리, 위치 추적, 통화 기록 수집, 연락처 탈취, SMS 가로채기, 원격 명령 실행, 그리고 실시간 키로깅까지. 이는 단순한 정보 수집을 넘어선 완전한 감시 도구다.

 

특히 주목할 부분은 키로거의 구현 방식이다. 안드로이드 접근성 서비스를 악용하여 앱 아이콘, 패키지명, 이벤트 텍스트, 타임스탬프를 수집한다. 접근성 서비스는 본래 장애인을 위한 보조 기능이지만, 강력한 권한으로 인해 악성코드의 주요 공격 벡터가 되어왔다. 수집된 데이터는 압축과 Base64 인코딩을 거쳐 전송되며, 이 과정에서 네트워크 모니터링으로도 쉽게 내용을 파악할 수 없다.

 

C2 서버와의 통신은 길이 헤더, 널 바이트, Gzip 압축 페이로드를 포함하는 구조화된 프로토콜을 사용한다. 명령 파싱 로직은 '10249'를 구분자로 활용하는데, 이러한 고유한 구분자는 네트워크 트래픽 분석에서 시그니처로 활용될 수 있다. 하지만 압축과 암호화를 통해 이러한 패턴을 숨기려는 노력도 함께 관찰된다.

북한 연계 정황

이번 캠페인이 북한 김수키 조직과 연결된다는 증거는 여러 층위에서 발견된다.

가장 직접적인 증거는 C2 서버 루트 디렉터리에서 발견된 'Million OK !!!!' 문자열이다.

이 독특한 문자열은 이전 김수키 작전들에서도 동일하게 관찰된 것으로, 인프라 공유의 명확한 흔적이다. 국가 후원 해킹 그룹들은 종종 자신들의 도구와 인프라를 재사용하는데, 이는 개발 효율성과 운영 연속성을 위한 선택이지만 동시에 귀속 분석의 단서가 된다.

 

HTML 코드와 오류 메시지 전반에 걸쳐 나타나는 한국어 주석 역시 중요한 단서다.

공격자들이 한국어를 모국어로 사용하며, 한국의 서비스 환경에 깊이 친숙하다는 것을 보여준다. CJ대한통운이나 옥션 같은 특정 한국 서비스를 타겟으로 한 위장도 이러한 맥락에서 이해할 수 있다. 이는 단순히 번역된 공격이 아니라, 한국 사회와 기술 환경에 대한 깊은 이해를 바탕으로 설계된 맞춤형 공격이다.

더 큰 그림

이번 공격은 김수키 조직의 전략적 진화를 보여준다. 전통적으로 PC 환경에서 주로 활동해온 이들이 모바일 플랫폼으로 영역을 확장하고 있다. 이는 단순한 기술적 다각화가 아니다. 스마트폰은 현대인의 디지털 생활이 집약된 장치다. 통화 기록, 문자 메시지, 위치 정보, 금융 거래, 소셜 네트워크 활동 등 개인의 거의 모든 디지털 흔적이 스마트폰에 담겨 있다. 김수키가 모바일을 타겟으로 삼는다는 것은 정보 수집의 효율성을 극대화하려는 전략적 선택이다.

 

QR코드의 무기화는 이러한 모바일 중심 전략의 자연스러운 결과다. QR코드는 오프라인과 온라인, 물리적 공간과 디지털 공간을 연결하는 인터페이스다. 식당 메뉴판에서, 행사장 포스터에서, 제품 패키지에서, 그리고 배송 알림 문자에서 우리는 매일 수십 개의 QR코드를 마주한다. 이렇게 일상화된 인터페이스를 공격 벡터로 활용한다는 것은 사회공학의 관점에서 매우 효과적인 접근이다. 사람들은 QR코드를 스캔하는 행위 자체를 위험하다고 인식하지 않는다.

 

더 우려스러운 점은 이러한 공격 기법의 확산 가능성이다. 김수키가 사용한 QR코드 기반 악성코드 유포 방식은 기술적으로 특별히 복잡하지 않다. 오히려 그 효과는 기술적 복잡성보다는 사회공학적 설계의 치밀함에서 나온다. 이는 다른 위협 행위자들도 쉽게 모방할 수 있다는 의미다. 우리는 QR코드를 통한 악성코드 유포가 더 보편화되는 미래를 준비해야 한다.

방어의 딜레마

이러한 공격에 대한 방어는 기술적으로나 사회적으로 복잡한 과제다.

기술적 관점에서 보면, 안드로이드의 개방성과 유연성이 동시에 취약점이 된다. 접근성 서비스 같은 강력한 권한을 사용자가 직접 앱에 부여할 수 있다는 점은 악성코드에게는 완벽한 진입점이다. 구글은 플레이 프로텍트를 통해 악성 앱을 차단하려 하지만, 사용자가 제3자 출처에서 직접 APK를 설치하는 것까지 막을 수는 없다.

 

사회공학 공격의 본질적 문제는 기술적 방어만으로는 해결할 수 없다는 것이다.

아무리 강력한 보안 솔루션이 있어도 사용자가 자발적으로 악성 앱을 설치하고 권한을 부여하면 소용이 없다. 이는 보안 의식과 교육의 문제로 귀결된다. 하지만 '의심하라'는 메시지는 디지털 생활의 편리함과 충돌한다. 모든 QR코드를 의심하고, 모든 앱 설치를 경계하며, 모든 문자 메시지를 검증하는 것은 현실적으로 불가능하다.

 

기업과 기관 입장에서는 이러한 위협에 대한 대응이 더욱 복잡하다.

BYOD(Bring Your Own Device) 환경이 일반화되면서 개인 스마트폰이 업무 환경에 깊이 통합되었다. 직원의 개인 기기가 감염되면 기업 네트워크 전체가 위험에 노출될 수 있다. 하지만 기업이 직원의 개인 기기를 완전히 통제하는 것은 프라이버시 침해 문제를 야기한다. MDM(Mobile Device Management) 솔루션은 어느 정도 가시성을 제공하지만, 정교한 악성코드는 이러한 모니터링도 우회할 수 있다.

결론: 경계와 편리함 사이에서

김수키의 QR코드 악성코드 공격은 현대 사이버 위협의 본질을 잘 보여준다. 기술은 점점 더 정교해지지만, 공격의 성공은 여전히 인간의 심리와 행동에 달려 있다. 우리는 편리함을 추구하면서도 경계심을 잃지 않아야 하는 딜레마에 직면해 있다. 배송 조회를 위해 QR코드를 스캔하는 것은 너무나 자연스러운 행위지만, 바로 그 자연스러움이 공격자들의 무기가 된다.

 

이 사건이 던지는 질문은 간단하지만 답하기 어렵다.

우리는 어느 정도까지 의심해야 하는가? 매일 마주하는 수십 개의 QR코드 중 어떤 것을 경계해야 하는가? 기술은 우리에게 편리함을 주지만, 그 편리함에는 항상 위험이 따라온다. 중요한 것은 이러한 위험을 인식하고, 최소한의 경계심을 유지하며, 의심스러운 상황에서는 한 번 더 생각하는 습관이다.

 

김수키는 계속 진화할 것이다. QR코드 다음에는 또 다른 일상적 인터페이스가 무기화될 것이다. 우리가 할 수 있는 것은 이러한 위협의 존재를 인식하고, 기본적인 보안 원칙을 지키며, 의심스러운 요청에 대해서는 확인하는 습관을 들이는 것이다. 완벽한 방어는 없지만, 기본을 지키는 것만으로도 많은 공격을 막을 수 있다.

 

택배 QR코드를 스캔하기 전에, 한 번쯤은 문자 메시지의 발신자를 확인하고, URL이 정상적인지 살펴보는 것. 그것이 우리가 할 수 있는 최소한의 방어다.