Flydigi 컨트롤러 앱에서 백도어 발견
요즘 붕괴3rd, 배틀그라운드 등 모바일 게임을 위한 중국 Flydigi사의 컨트롤러를 사용하시는 분이 종종 계신데,
이전에는 직구를 해야 살 수 있었지만, 요즘에는 유명한 업체에서 정식 수입하여 판매하고 있을 정도로 많이 보급되고 있는 것 같네요.
저도 구매를 해서 잘 사용하고 있는데, 우연찮게 Flydigi 앱에서 백도어를 발견했습니다.
제가 개발중인 앱을 디버깅하기 위해서 통신 패킷을 점검하고 있었는데,
앱 구별할 것 없이 앱을 기동하거나 전환할 때마다 어느 서버로 개인정보를 보내고 있었습니다.
방금 무슨 앱을 기동했으며, 맥어드레스, IMEI 등 많은 정보를 담고 있었는데 url을 보니까 http://data.flydigi.com....
Flydigi 컨트롤러 앱이 확실하다고 보고 당장 핸드폰을 오프라인 상태로 바꾸고, 앱을 삭제했습니다.
삭제하고 나나까 그 패킷이 안잡히더군요.
이 컨트롤러는 전용 앱이 없으면 터치 맵핑을 할 수 없는 반쪽짜리 컨트롤러가 됩니다.
백도어를 무력화시킬 수 없을까 하고 디컴파일을 해봤습니다.
일단 매니페스트부터.. 권한이 무시무시하게 많이 들어있습니다.
WIFI 관련 권한만 삭제하고 다시 빌드하고 사용해볼려고 했는데, 앱을 기동하자마자 중지돼서 소스코드를 좀더 들여다보기로 합니다.
어이가 없네요.
소스코드가 난독화되어 있어서 세밀하게 손보긴 시간이 너무 걸릴것 같아서 그냥
모든 소스코드에서 "http://","https://"를 "tiananmen://","tiananmens://" 로 바꾸고,
READ_PHONE_STATE 권한만 삭제한 다음에 빌드해서 사용하기로 했습니다.
이렇게 만들어서 사용하니 오프라인 상태로 기동한 것처럼 동작합니다.
오프라인이라도 컨트롤러 관련 기능은 다 동작하고, 자체 복돌 게임 다운 받는 기능도 없어졌으므로 좀 더 개운해졌네요.
모든 통신을 차단한 것은 아니지만, 어느정도 백도어는 차단된 것 같습니다.
수정한 앱 APK 파일을 공유하도록 하겠습니다.
[표준형 Wee / Apex 용] drive.google.com/open?id=1tNaHjS6kb18DiF6rPL-12u-SuOygb6Y_
[스페셜 Wee2 / Q1 용] drive.google.com/open?id=1MRyIHmlEFF0e_LPyuCOAzCC6Sdj0CmMc
사이닝이 다르므로 기존에 사용하고 계신 분은 기존 어플을 반드시 삭제하고 수정 버전을 설치해야 됩니다.
패키지명까지 변경한게 아니라서 여전히 구글 플레이 프로텍트 해제는 필요합니다.
참고로 정식 수입 사이트에서의 설명을 보니 구글 플레이 프로텍트를 해제하라는 설명이 있습니다.
말 그대로 보안 위협이 되는 앱이니까 설치하려면 프로텍트를 해제하라는 뜻이지요.
중국산 하드웨어/앱이 보안상 취약하다는 것은 다들 알고는 계시겠지만, 이렇게 몸으로 느낀적은 처음이네요.
이젠 중국 하드웨어/앱을 사용하는건 왠만하면 자제를 하고,
부득이하게 사용할 때는 신중하게 판단하고 사용해야될 것 같습니다.




