꿈을꾸는 파랑새

틱톡,인스타그램,페이스북 인앱 브라우저 등을 통해 삽입되는 JavaScript 명령 보는 방법에 대해 글을 적어 보겠습니다. 요즈음 스마트폰 안 쓰는 사람이 거의 없고 그리고 틱톡,페이스북,인스타그램,트위터 등의 SNS를 사용을 하고 있습니다.
InAppBrowser 라는 새로운 온라인 도구를 사용하면 모바일 앱에 포함된 인앱 브라우저의 동작을 분석하고 사용자가 방문하는 웹사이트에 개인 정보를 위협하는 JavaScript를 삽입하는지 확인할 수 있습니다. 해당 도구는 인앱 브라우저를 사용하는 모바일 앱의 위험에 Instagram 및 Facebook과 같은 일부 앱은 JavaScript 코드를 타사 웹 사이트에 삽입하여 사용자에게 잠재적인 보안 및 개인 정보 위험이 될 수가 있습니다.
해당 도구는 개발인 Felix Krause 가 이달 초에 하여 사용자가 방문하는 모든 웹 페이지에 자바스크립트 추적기를 삽입하여 인앱 브라우저가 사용자가 온라인에서 보고 수행하는 모든 것을 추적하는 것이 얼마나 쉬운지를 설명을 하려고 만들어졌습니다.
해당 부분에서는 사용자의 인터넷 검색 기록 액세스,관심을 유도하기 위한 동작 특성 로깅,탭 및 키 누름 기록, 스크린 샷 작업 모니터닝, 로그인 양식에 입력하는 암호 캡처 등이 포함돼 있습니다.

InAppBrowser

페이스북 라이트
페이스북 라이트

일단 해당 도구의 제작자의 글에 의하면 틱톡은 애플의 iOS 앱에서 링크를 열면 앱 내 브라우저에서 열리며 웹 사이트와 상호 작용하는 동안 TikTok은 모든 키보드 입력 (비밀번호, 신용 카드 정보 등 포함) 및 클릭하는 버튼 및 링크와 같은 화면의 모든 탭을 정보에 접근하면 
틱톡 iOS는 TikTok 앱 내부에서 렌더링 되는 타사 웹사이트에서 발생하는 모든 키 입력(텍스트 입력)을 감지
여기에는 암호, 신용 카드 정보 및 기타 민감한 사용자 데이터가 포함될 수 있습니다. ( keypress그리고 keydown). TikTok이 구독을 사용하는 용도는 알 수 없지만, 기술적인 관점에서 이것은 타사 웹사이트에 키로거를 설치하는 것과 같습니다.
TikTok iOS는 TikTok 앱 내부에서 렌더링된 웹사이트의 모든 버튼, 링크, 이미지 또는 기타 구성 요소를 탭 할 때마다 구독합니다.
TikTok iOS는 JavaScript 기능을 사용하여 이미지( document.elementFromPoint)

발견 및 분쟁
일단 연구원은 TikTok, Instagram, Facebook 및 Messenger에서 위험한 행동을 발견했다고 주장하지만 Snapchat과 Robinhood는 테스트에서 깨끗한 것으로 나타났습니다.
그리고 틱톡 대변인은 입력이나 텍스트 입력을 수집하는 데 이러한 스크립트를 사용하지 않는다고 했으며 TikTok은 코드가 있음을 인정하지만, 사용자의 개인 정보를 추적하거나 위반하는 것이 아니라 사용자 경험을 개선하기 위해서만 사용된다는 점을 강조하고 있으며 효과적인 광고 솔루션을 제공하기 위해 타사 앱 및 웹 사이트에서 사용자가 수행하는 작업에 대해 광고주로부터 제한된 데이터를 받을 수 있다고 했습니다.
이게 문제가 되는 것은 이유는 다음과 같습니다.
1. 사용자 대부분이 이에 대해 의심하지 않고 모든 것이 완전히 뒤에서 발생하기 때문
2. 인앱 브라우저는 콘텐츠 차단기를 지원하지 않거나 사용 시 개인 정보를 노출하지 않기 때문
회사 대부분은 추적 및 수익 창출 목적으로 인앱 브라우저와 코드 삽입을 사용하지만, 일부는 모든 키 입력을 포함한 모든 사용자 활동을 모니터링 하기 위해 코드를 사용할 수 있습니다.
사용방법은 간단합니다.
분석할 엡 실행
애플리케이션 내부의 공유 기능을 사용하여 InAppBrowser를 앱 글을 게시하거나 연락처를 DM 하거나 공개적으로 게시할 수 있습니다.
방금 공유하거나 개시한 링크를 오픈 합니다.
표시되는 보고서를 확인
개인적으로 페이스북 라이트 버전으로 한번 테스틀 진행해 보았고 결과 값은 다음과 같습니다.
The summary above shows a list of things the in-app browser did when you opened this website. However, there might be other things happening as well. The raw output below should be carefully studied to better understand what's happening.
Detected JavaScript Commands:
HTMLDocument.getElementsByTagName('html')
[object HTMLCollection]['0']
HTMLDocument.getElementsByTagName('html')
[object HTMLCollection]['0']
HTMLDocument.getElementsByTagName('html')
[object HTMLCollection]['0']
Disclaimer: This tool works by overriding the most common JavaScript functions, however the host app may still inject other commands. As of iOS 14.3, Apple introduced a new way of running JavaScript code in an "Isolated World", making it impossible for a website to verify what code is being executed. Also this tool cannot detect other app tracking that may occur, such as custom gesture recognition, screenshot detection, or tracking of web request events.
Important: Before jumping to any conclusions, please read this post.
또 다른 인기 있는 애플리케이션인 Instagram도 JavaScript 코드를 삽입합니다. 키보드 입력을 모니터링 하지 않지만 모든 JavaScript 메시지와 모든 텍스트 선택을 모니터링 하고 외부 JavaScript 코드를 삽입합니다.
사용자가 대처 방법
스마트폰에서 앱 제거
스마트폰 다른 브라우저로 링크를 리디렉션할 수 있게 변경
하지만, 모든 앱이 이를 지원하는 것은 아니면 DNS 기반 콘텐츠 차단기의 사용은 적어도 키 입력의 잠재적인 읽기나 광고 표시 또는 추적과 관련 없는 기타 활동에 대해서는 그다지 도움이 되지 않을 수 있습니다.
일단 해당 부분은 안드로이드 스마트폰이든 애플 아이폰이든 그게서 사용되는 어느 브라우저이든 간에 해당 부분은 적용되니까 한번 자신이 어떤 결과가 있는지는 사용자가 확인해 보는 것이 좋습니다.

그리드형

공유하기

facebook twitter kakaoTalk kakaostory naver band