4 Min. Read

프로드와 싸울 때 폐쇄형 소스 SDK가 필수인 이유는 무엇일까요?

Michel Hotoveli Michel Hotoveli Aug 27, 2019

Chris Rock는 한 코미디 쇼에서 "치료는 돈이 안 되고 약은 돈이 된다"라고 말했습니다. 이를 통해 큰 제약회사들이 질병의 치료보다는 증상을 없애는 약을 개발하는 데 더 관심이 있음을 지적했습니다. Chris Rock은 제약회사들이 고객을 치료하기보다 고객을 유지하려 한다며 비판했습니다.

제약회사의 수익 구조를 잘 알진 못합니다. 그리고 이익을 추구하는 일이 경제적으로는 타당하긴 합니다. 하지만 제약회사나 의약품 제조업체만큼은 이익만 추구해선 안 됩니다.  

오늘날의 경제가 수십억 달러 규모임을 생각하면, 상장 회사는 이윤과 성장을 추구해야 합니다. 이들 중 많은 회사가 현대 생활의 "문제"와 "질병"에 대한 해결책과 서비스를 제공합니다.

특정 업계를 제쳐두고, 온라인 광고업계와 이를 괴롭히는 "질병"인 프로드에도 이런 논리를 적용할 수밖에 없습니다. 최근 몇 년간 프로드의 규모가 커지고 프로드를 저지르기 쉬워졌을 뿐만 아니라, 프로드 자체와 프로드가 광고주와 퍼블리셔에게 미치는 영향에 대한 인식도 높아졌습니다. 기본적인 경제 개념을 생각해봅시다. 일반적으로 수요가 증가하면 공급도 증가합니다. 프로드에 대한 인식이 높아지면서, 신생 회사들은 이를 기회로 삼아 프로드에 대처하기 위한 자사 및 제3자 솔루션을 제공하기 시작했습니다.

이러한 회사들은 이익을 추구합니다. 이들이 제공하는 서비스의 가격, 메시징, 인식, 솔루션 유형 모두 다양합니다. 그러나 이들 모두에게 같은 질문을 물을 수 있습니다. 회사가 주요 수입원을 없애기 위해 최선을 다할 수 있을까요? 프로드가 없는 세계에서 프로드 방지 솔루션의 수요가 있을까요?

위의 질문에 답하기 위해선 프로드 방지에 관한 끝없이 물고 물리는 게임을 생각해봐야 합니다. 이 게임이 지속되도록 만드는 사람이 빠질 수 있는 허점을 찾아보세요. 눈에 잘 띄지 않을 수도 있지만, 허점은 분명히 존재합니다. 이는 광고주와 파트너라는 양쪽 이해 관계자 모두에게 유료 서비스를 제공하는 일과 비슷합니다. 프로드를 제거하는 데 필요한 비편향성이 보장되지 않습니다.

예를 들어, 프로드 솔루션 제공업체는 특정 기업이 구축한 비즈니스에 의존할 수 있습니다. 프로드 관련 비즈니스 결정이 상호 비즈니스에 영향을 미칠 수 있다면, 이성적 추론을 하지 못할 수도 있습니다.

프로드 솔루션 제공업체가 편향되지 않았더라도, 이 업체가 광고 게재 체인의 어디에 위치하는지 고려해야 합니다. 

더 중요한 적신호는 프로드 방지 제품군 기반의 오픈 소스 SDK 솔루션에 의존하는 일입니다.

 

오픈 소스는 왜 프로드 솔루션에 해당하지 않을까요?

몇몇 프로드 솔루션 제공업체는 프로드 방지 설정의 일환으로 오픈 소스 기술을 사용하는 데 자부심을 갖습니다. 실제로 많은 온라인 툴이 오픈 소스 코드를 사용하여 더 나은 솔루션을 제공합니다. 오픈 소스 코드가 솔루션의 비전과 운영에 적합하기 때문입니다. Wikipedia, Google, Adobe 등 많은 유명 회사들이 오픈 소스를 사용합니다. 함께 제품을 개선하고 더 나은 제품을 개발하려는 커뮤니티의 이점을 누릴 수 있기 때문입니다.  

오픈 소스 솔루션은 정말 굉장한 개념입니다. 하지만 프로드 보안 및 보호와 관련해서는, 이점도 많지만 결점도 두드러집니다. 

오픈 소스 솔루션은 리뷰와 개선 사항을 투명하게 보여줍니다. 그러나 리버스 엔지니어링과 조작에는 매우 취약합니다. 이는 최첨단 보안 시스템으로 집을 보호하면서 현관문을 잠그지 않는 일과 마찬가지입니다. 

다양한 종류의 보안 문제가 발생하기 쉽습니다. 오픈 소스 SDK에 의존하는 어트리뷰션 솔루션은 SDK 스푸핑이라는 새로운 유형의 프로드를 야기했습니다.

SDK 스푸핑은 실제로는 설치가 일어나지 않았지만, 유효해 보이는 설치입니다. 이로 인해 광고 예산이 낭비되고 타겟팅 데이터가 잘못될 수 있습니다. 향후 활동과 예산 할당에도 장기적인 영향을 미칩니다.

사기꾼은 광고 자금의 어트리뷰션을 하이재킹하기 위해 SDK의 활동을 스푸핑합니다. 이들은 코드를 보고 리버스 엔지니어링을 약간만 해도 액세스 권한을 받을 수 있습니다. 사기꾼은 이제 HTTP 메시징 논리를 훨씬 더 쉽게 이해할 수 있습니다. 각 필드 값이 어떻게 수집되는지 확인한 다음, HTTP 요청을 사용하여 수익을 얻을 수 있습니다.

 

Subscribe to AppsFlyer content

The latest mobile marketing tips & trends delivered to your inbox.

 

SDK 스푸핑에 대한 논의는 주로 MITM(Man in the Middle) 또는 재전송 공격과 같은 네트워크 공격에 집중됩니다. 그러나 이는 SDK 데이터를 스푸핑할 수 있는 한 가지 방법에 불과합니다. 네트워크를 통해 데이터가 전송되기 전에도 데이터의 수집, 조작, 스푸핑이 가능합니다. 동적 분석을 위한 도구는 다양합니다. 그래서 공격 당한 응용 프로그램의 데이터가 백엔드로 전송되기 전에, 즉 응용 프로그램의 런타임 동안 이 데이터를 모니터링하고 조작할 수 있습니다.

이러한 도구를 사용하면, 네트워크 "보호" 메커니즘을 그대로 유지하면서 모든 데이터를 조작할 수 있습니다. 이때 백엔드 데이터는 합법적이고 "서명됨" 상태로 표시됩니다. 오픈 소스든 아니든 상관 없이 모든 소프트웨어가 리버스 엔지니어링될 수 있다는 점을 유념해야 합니다. 이와 다른 주장을 하는 소프트웨어 제공업체는 위험을 인식하지 못하거나, 순진하거나 또는 둘 다입니다.

문제는 이것입니다. 이러한 회사는 소프트웨어를 공격으로부터 보호하기 위해 어떤 일을 하고 있을까요?

 

오픈 소스와의 관련성

  • 오픈 소스를 통해 더욱 빠르고 저렴하게 해킹 프로세스를 처리할 수 있습니다. 사기꾼은 데이터가 SDK 내에서 어떻게 수집되고 패키징되는지 정확히 파악합니다. 따라서 데이터를 쉽게 조작할 수 있는 장소를 찾고 "훌륭한 프로드"를 만들 수 있습니다.
  • 이러한 유형의 프로드에 대비한 보호 메커니즘은 모두 명확하게 드러납니다. 이를 우회할 수도 있습니다. SDK 논리를 모른다면, 사기꾼은 리버스 엔지니어링에 훨씬 더 많은 리소스에 투자해야 합니다.
  • 오픈 소스 솔루션의 경우, 코드에 구현된 암호화 메커니즘이 노출되어 있습니다. 그래서 이를 연구하거나 리버스 엔지니어링을 하기 쉽습니다.
  • 오픈 소스를 이용하면, 소프트웨어 보안에 대한 책임은 주로 고객이 지게 됩니다. 고객이 소스 코드를 보호하기 위해 필요한 모든 단계를 수행하지 않으면 이를 파악하고, 뒤바꾸고, 조작하는 일은 더 쉬워집니다.

올바르게 구현되면, MITM에 대비한 보호는 원격 네트워크를 통한 개인 데이터 도난을 방지할 수 있습니다. 이는 해커가 네트워크를 통해 원격 위치에서 전송된 개인 정보를 훔치려고 시도하는 경우입니다.

그러나 이 경우는 다릅니다. 사기꾼이 합법적으로 보이는 트래픽을 생성하려고 합니다. 따라서 SDK를 보호하고 서버에서 인증하는 방법이 매우 중요합니다. 이러한 경우, 사기꾼은 적절한 도구를 갖고 트래픽을 생성하려는 애플리케이션에 액세스하기만 하면 됩니다. 그 후에는 사기꾼이 자신의 필요에 맞게 가짜 트래픽을 생성하고자 OS 레벨에서도 애플리케이션 코드를 수정할 수 있습니다.

MITM 보호는 전혀 의미가 없습니다.

이러한 문제는 발견만 하면 해결할 수 있습니다. 하지만 앱 소유자는 원래의 업데이트 또는 기능 출시 일정에 관계없이 신속히 SDK를 업데이트해야 합니다. 그래서 앱 소유자는 번거롭고 비용과 시간이 많이 드는 악순환에 빠지게 됩니다. 추가적인 엔지니어링 리소스를 투자해야 하기 때문입니다. 그러나 SDK는 여전히 공개되어 있어 프로드는 계속해서 발생할 수 있습니다. 이렇게 악순환이 계속됩니다.

 

핵심 요점

프로드는 웃어 넘길 일이 아닙니다.

프로드는 막대한 광고 예산을 낭비합니다. 허점이나 보안 취약점을 찾기 위한 모든 불법 소스를 촉진합니다. 책임 있는 마케터라면 지금 사용 중인 프로드 방지 솔루션이 무엇이든, 보다 신중하게 이점을 평가해야 합니다. 단순히 솔루션 제공업체에 가입하고, 보호를 받고 있다고 믿는 일로는 문제가 해결되지 않습니다.

프로드에 대한 어떤 해결책도 완벽하지 않습니다. 프로드를 근절하는 작업은 오래 걸리고 어렵습니다. 더 많은 회사가 선의의 싸움에 참여할수록 더 좋습니다. 하지만 그 전에 잠시 멈춰서 올바른 목적과 대비책을 갖추고 있는지 생각해보세요. 

AppsFlyer는 어트리뷰션 하이재킹부터 봇이 생성한 가짜 유저까지 매우 효율적으로 방지합니다.

모바일 광고 프로드를 해결하기 위해, AppsFlyer SDK는 업계 최고의 툴을 적용하여 리버스 엔지니어링으로부터 코드를 보호합니다. AppsFlyer의 프로드 방지 솔루션인 Protect360최첨단 모바일 광고 프로드 방지 제품군입니다. 이는 코드 소스에 정교한 난독화 및 암호화를 사용합니다.

 

 

지금 바로 Protect360 데모를 예약하세요