안드로이드(Android) 기기에서 가상 사설망(VPN)을 사용하더라도 악성 앱이 VPN 터널을 우회하여 사용자의 실제 IP 주소를 노출시킬 수 있는 심각한 취약점이 발견되었습니다. 이 문제는 'VPN 없는 모든 연결 차단(Block all connections without VPN)' 설정을 켜더라도 발생하며, 악성 앱이 특별한 권한 없이도 기기의 실제 IP 주소를 인터넷에 노출시켜 추적이나 감시에 이용될 가능성이 있습니다. 이는 사용자가 VPN을 통해 보호받고 있다고 생각하는 상황에서 예상치 못한 보안 위협에 직면할 수 있음을 의미합니다.
이번 취약점은 안드로이드의 UDP 연결 유지(keep-alive) 기능이 와이파이(Wi-Fi) 또는 셀룰러 칩으로 오프로딩되는 방식을 악용합니다. 본래 이 기능은 네트워크 주소 변환(NAT) 통과를 돕기 위한 것이지만, 악성 앱은 이를 이용해 포트 4500을 통해 인터넷의 임의 서버로 UDP 패킷을 전송할 수 있습니다. 이 과정에서 네트워크 하드웨어가 패킷을 직접 보내므로, 모든 트래픽이 VPN을 경유해야 한다는 안드로이드의 검사를 우회하게 됩니다. 이 취약점은 VPN 서비스 제공업체인 멀바드(Mullvad)에 의해 공개되었으며, 연구원들은 구글(Google)에 해당 취약점을 신고했지만, 구글은 이를 보안 버그로 분류하지 않고 조치 없이 종결한 것으로 알려졌습니다. 다만, 보안 및 개인정보 보호에 중점을 둔 안드로이드 포크인 그래핀OS(GrapheneOS)는 이 문제를 인지하고 수정 작업을 진행 중입니다.
이 취약점은 안드로이드 사용자들의 개인정보 보호에 대한 신뢰를 흔들 수 있는 중요한 문제입니다. 구글이 이를 보안 버그로 인정하지 않아 즉각적인 시스템 수정이 어렵다는 점은 사용자들에게 불안감을 안겨줍니다. 비록 구글이 내부적으로는 문제를 추적하고 향후 릴리스에서 수정할 가능성이 있지만, 현재로서는 최신 안드로이드 버전 사용자들도 이 위험에 노출될 수 있습니다. 사용자들은 신뢰할 수 있는 앱만 설치하고, 가능하다면 그래핀OS와 같이 보안에 특화된 안드로이드 포크를 사용하는 것이 권장됩니다. 또한, 모든 트래픽을 VPN으로 강제하는 공유기를 사용하는 등의 추가적인 보안 조치를 고려해볼 필요가 있습니다.