Computer >> 컴퓨터 >  >> 스마트폰 >> 스마트폰

iOS 앱 1,000개에 심각한 SSL 취약점 발견 — 내 앱이 위험한지 확인하는 방법

안드로이드와 iOS 앱을 감사하는 코드 분석 플랫폼인 SourceDNA가 최근 발표한 보고서에 따르면, 1,000개 이상의 iOS 앱이 사용자의 금융 정보를 탈취당할 수 있는 심각한 보안 취약점을 안고 있는 것으로 밝혀졌습니다.

이 버그는 앱이 SSL 인증서를 올바르게 검증하지 못하게 만들어, 다양한 중간자(man-in-the-middle) 공격에 앱을 노출시킵니다. iOS 자체의 보안에는 영향을 주지 않지만, 취약한 앱을 통해 전송되는 사용자 데이터는 그대로 유출될 수 있습니다.

SSL 검증을 무너뜨리는 단순한 버그

문제의 버그는 AFNetworking 패키지에 있습니다. AFNetworking은 App Store에 등록된 수천 개의 앱에서 사용되는 인기 오픈소스 네트워킹 라이브러리입니다. 이 버그는 단순한 논리 오류로, SSL 검증이 실제로 수행되지 않게 하고 모든 인증서 검사를 '유효'로 반환합니다.

HeartBleed나 ShellShock 같은 대규모 보안 사태는 아니지만, 버그가 포함된 앱을 사용한다면 충분히 문제가 될 수 있습니다. 다행히 이 버그는 약 6주 동안만 존재했습니다. 버전 2.5.1에서 추가되었고 2.5.2에서 수정되었으니까요. 그럼 여기서 이야기는 끝이라고 생각하기 쉽습니다.

하지만 불행히도 그렇지 않습니다.

아쉽게도 많은 개발자들이 버그 수정 사항을 앱에 적극적으로 반영하지 않으며, 패치가 이미 배포된 지 오래임에도 여전히 취약한 버전의 AFNetworking을 사용하는 앱이 상당수 남아 있습니다. SourceDNA는 AFNetworking 패키지를 포함한 20,000개의 앱을 분석한 결과, 그중 약 1,000개가 아직도 취약한 SSL 검증 코드를 사용하고 있다고 결론지었습니다.

SourceDNA는 수천 개의 앱 바이너리 파일을 분석할 수 있는 자체 분석 도구를 활용해 이러한 확인 작업을 수행했습니다. 이들의 기술은 앱이 어떤 라이브러리로 컴파일되었는지뿐만 아니라 해당 라이브러리의 정확한 버전까지 식별할 수 있습니다. 알려진 버그나 취약점의 영향을 받을 수 있는 앱을 걸러내는 데 놀라울 정도로 유용한 기능입니다. 발표된 보고서에 따르면,

"SourceDNA는 차등 지문(differential fingerprint)을 생성하여 취약한 코드를 찾아냈습니다. 이는 대상 버전에만 존재하거나 부재하며, 그 이전 또는 이후 버전에는 나타나지 않는 고유한 특징들의 집합입니다. 이 서명 세트를 통해 저희의 분석 엔진은 각 앱에서 어떤 버전의 AFNetworking이 사용되었는지 정확히 판별할 수 있었습니다."

영향을 받는 앱 중 상당수는 사용자 신용카드 정보를 저장하고 전송합니다. Alibaba.com 모바일 앱, KYBankAgent 3.0, Revo Restaurant Point of Sale 등이 대표적인 사례입니다. 수백만 명의 사용자가 자신의 iOS 기기에 취약한 앱을 설치하고 있는 상황으로, 극히 짧은 기간 존재했던 버그 치고는 놀라운 수준의 노출 규모입니다.

"전체의 5%, 즉 약 1,000개의 앱에 결함이 있었습니다. 그렇다면 이 앱들은 과연 중요할까요? 순위 데이터와 비교해 본 결과, Yahoo!, Microsoft, Uber, Citrix 같은 빅플레이어들이 포함되어 있었습니다. 단 6주 동안만 보안 결함을 지녔던 오픈소스 라이브러리가 수백만 명의 사용자를 공격에 노출시켰다는 사실에 저희 역시 놀랐습니다."

AFNetworking 버그의 영향 평가

이 취약점은 과연 얼마나 위험할까요? 이 버그로 인해 공격자는 앱이 신뢰할 수 있는 서버와 안전한 연결로 통신하고 있다고 믿도록 속일 수 있습니다. 취약한 앱을 사용 중이라면, 같은 WiFi 네트워크에 접속한 누구든 중간자 공격을 시도해 앱에서 주고받는 정보, 즉 신용카드 정보 같은 민감한 데이터를 가로챌 수 있습니다. 이렇게 탈취된 정보는 신원 도용과 각종 금융 사기에 악용될 수 있으며, 잠재적으로는 인기 앱을 표적으로 삼는 자동화된 공격까지 가능합니다.

소식이 알려진 이후 Microsoft와 Yahoo를 비롯한 여러 기업이 서둘러 업데이트와 수정 패치를 배포했습니다. 하지만 대부분의 앱은 여전히 패치되지 않은 상태로 남아 있습니다. 자신이 사용하는 앱이 영향을 받는지 확인하려면 SourceDNA 검색 도구를 이용하면 됩니다. 만약 사용 중인 앱 중 하나가 여전히 취약하다는 사실을 발견했다면, 가장 안전한 조치는 당장 해당 앱을 삭제하고 개발자에게 최대한 빨리 패치를 배포해 달라고 요청하는 것입니다.

SourceDNA는 매우 영리한 도구이며, 이번 사례는 그 기술이 실질적으로 유용하다는 것을 잘 보여줍니다. 컴퓨터 보안은 어려운 분야이고, 개발자의 협조 여부와 관계없이 패치되지 않은 버그를 찾아내는 과정을 자동화할 수 있는 도구는 사용자 보안에 큰 진전입니다. 이런 검증 체계가 없었다면 이 광범위한 버그는 아마도 상당히 오랫동안 방치되었을 것입니다. 이러한 분석은 대중의 감시를 가능하게 하여 개발자들에게 더 큰 책임감을 부여하며, SourceDNA가 앞으로도 아직 발견되지 않은 미해결 문제들을 추가로 찾아낼 가능성이 높아 보입니다.

당신의 iOS 기기는 AFNetworking 버그의 영향을 받고 있나요? 이번 사례처럼 새롭게 등장한 앱 분석 도구에 대해 어떻게 생각하시나요? 댓글로 의견을 들려주세요!

이미지 출처: "US Navy Cyberwarfare", "iPhone front", "iPhone camera" by Wikimedia