인터넷 시대가 오자 사람들은 모든 것이 디지털화되고 있다고 한탄한 적이 있습니다. 오늘날 모든 것이 모바일입니다. 거리와 골목에서 사람들은 고개를 숙인 채 화면을 넘기느라 바빴다. 외국 권위기관의 자료에 따르면 중국 스마트폰은 전체 휴대전화 판매량의 96%를 차지했으며, 전통적인 피처폰은 기본적으로 역사의 무대에서 사라졌습니다. 미국 시장조사업체 이마케터(eMarketer)의 최근 보고서에 따르면 권위 있는 시장조사기관 가트너(Gartner) 자료에 따르면 중국에서는 휴대전화 판매량의 96%가 스마트폰이고, 미국도 96%를 차지하고 있다. 즉, 모바일 인터넷의 하드웨어 수준에서는 중국과 미국이 이미 같은 수준에 있다는 것이다.
스마트폰의 인기는 모바일 앱의 급속한 발전을 촉진했습니다. 현재 모바일 앱은 커뮤니케이션 및 채팅, 테이크아웃 예약, 티켓 예약, 여행 예약, 쇼핑, 뉴스 검색 등에서 은행 투자 및 재무 관리, 병원에 이르기까지 다양합니다. 등록 등. 결제 거래 등 개인의 일상 활동은 기본적으로 휴대폰에 의존하여 완료될 수 있습니다. 앱의 엄청난 인기로 인해 많은 소프트웨어 개발자는 이 시장이 가져오는 이점을 보았습니다. 수익에 힘입어 다양한 앱이 속속 등장하고 앱 시장도 엇갈리고 있습니다. 인스턴트 앱은 보안을 완벽하게 보장할 수 없기 때문에 최근 몇 년간 앱을 통한 개인정보 유출 사고가 빈번하게 발생하고 있습니다.
빅데이터 분석을 통해 휴대폰에서 흔히 사용되는 앱의 통계표는 다음과 같습니다.
거의 모든 휴대폰에 채팅, 영상 엔터테인먼트, 쇼핑 등이 있다는 것을 차트 통계에서 확인하는 것은 어렵지 않습니다. 관련 앱이 설치되어 있는데, 이러한 앱은 휴대폰에서 어떻게 작동하나요? 자신도 모르게 휴대폰에서 어떤 정보를 얻게 될까요?
기술의 발전으로 휴대폰의 기능은 이보다 훨씬 더 많아졌습니다. 빅데이터 시대가 다가오고 있으며, 여기에 스마트 홈 사물인터넷 시대도 다가왔습니다. 분석을 위해 apk를 다운로드하고 접미사를 tar로 수정하면 apk 관련 파일을 볼 수 있습니다
AndroidManifest.xml은 Android 애플리케이션의 항목 파일입니다. 주로 설치 패키지에 노출된 구성 요소 및 클래스, 소프트웨어 관련 읽기 권한 등에 대해 설명합니다. 여기에서 얻을 수 있는 AndroidManifest.xml 파일의 세부 내용은 다음과 같습니다.
AndroidManifest.xml 파일을 구체적으로 분석한 결과, 현재 앱에서 획득한 휴대폰 권한은 다음과 같음을 알 수 있습니다.
주요 권한에는 전화 상태 읽기 허용, 전화 걸기 허용, 연락처 읽기 허용, 전체 시스템 설정 수정 허용, 블루투스 연결 생성 허용, 위치 지정 허용, 부팅 시 자동 시작 허용이 포함됩니다. 및 기타 관련 권한. 사용자가 애플리케이션 사용 시 기본 설치 모드를 선택할 경우 개인정보가 노출될 수 있습니다.
Android 개발에 익숙한 모든 사람은 Android 애플리케이션에 Activity, Service, ContentProvider 및 BroadcastReceiver라는 네 가지 주요 구성 요소가 있다는 것을 알고 있습니다.
먼저 액티비티 구성 요소에 대해 이야기해 보겠습니다. 활동 구성 요소 간의 통신은 사용자 작업을 위한 시각적 인터페이스를 표시하는 Intent를 통해 이루어집니다. Android 애플리케이션은 활동 구성 요소를 통해 실행되고 시작되어야 합니다. 애플리케이션은 서로 독립적이지만 앱의 활동 구성요소를 통해 통신, 통화, 액세스 등을 할 수 있습니다.
APK 분석을 통해 항목 활동 구성 요소는 com.meiyou.pregnancy.ui.welcome.WelcomeActivity이며, 앱이 시작될 때 다른 활동 구성 요소를 호출하는 것을 확인할 수 있습니다. 활동 구성 요소를 내보낼 수 있으면 제3자가 임의로 호출할 수 있습니다. 민감한 정보가 유출될 수 있으며, 악성코드 삽입, 페이지 하이재킹 등의 위험이 있습니다.
BroadcastReceive를 사용하면 애플리케이션이 외부 이벤트를 필터링하고 필요한 이벤트만 수신하고 응답할 수 있습니다. 사용자 인터페이스는 없지만 수신된 정보에 응답하는 활동이나 서비스를 시작하여 다른 구성 요소를 만들거나 서로 통신할 수 있습니다. 앱이 처음 실행되면 시스템은 자동으로 NotificationProxyBroadcastReceiver를 인스턴스화하고 이를 시스템에 등록합니다. 동적 브로드캐스트를 등록하려면 로그아웃 작업이 필요합니다. 그렇지 않으면 메모리 누수가 발생할 수 있으므로 반복적인 등록이나 로그아웃이 허용되지 않습니다.
Service는 서비스를 사용할 때 AndroidManifest.xml에 선언해야 합니다.
service는 Activity 구성 요소와 독립적입니다. 백그라운드에서 정기적으로 서버에서 데이터를 가져와야 하는 경우와 같은 일부 작업을 수행하려면 이때 서비스를 사용해야 합니다.
네 가지 주요 구성 요소의 보안 취약점 외에도 웹 인터페이스 호출 시 SQL 주입 취약점, XSS 취약점, 재정의, 무단 및 기타 관련 취약점 등 다양한 웹 취약점도 나타납니다. 스크린샷은 http 요청 패킷입니다. 앱의 테스트 결과, 게시물 패킷에 무단 접속 취약점이 포함되어 있으며, 특정 매개변수를 통해 타인의 계정 정보를 무단으로 조회할 수 있는 것으로 확인되었습니다.
요컨대, 앱 취약점이 발생할 수 있는 곳이 많고, 전송 시 데이터가 암호화되는지, 로컬 저장소에서 데이터가 암호화되는지, 의도적으로 시작된 활동 구성 요소는 안전합니다.
앱이 너무 많아 일반 사용자는 여전히 앱에 대한 보안 검사를 수행할 수 없습니다. 그렇다면 앱으로 인해 개인 정보가 유출되는 것을 어떻게 방지해야 할까요?
l 우선, 다운로드한 앱이 원본 애플리케이션이 아닌 수정 및 컴파일되는 것을 방지하기 위해 일반 채널을 통해 앱을 다운로드하는 것이 좋습니다.
l 특별한 요구 사항이 없는 경우 루팅을 권장하지 않습니다.
애플리케이션 설치 시 필수 공개 권한에 주의하시고 위치 정보, 휴대폰 연락처 읽기 등 불필요한 권한을 꺼주세요.
l 휴대폰에 적절한 바이러스 백신 소프트웨어를 설치할 수 있습니다. 쓸모없는 소프트웨어, 프로그램 패키지 등을 정기적으로 검사하고 정리합니다.
l 관련 앱을 정기적으로 업그레이드하여 이전 버전의 버그를 수정합니다.
위 내용은 APP의 보안 문제를 간략하게 논의하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!