SlideShare a Scribd company logo
1 of 28
Short Text, Large Effect:
Measuring the Impact of
User Reviews on Android
App Security & Privacy
Duc Cuong Nguyen∗, Erik Derr∗, Michael Backes†, Sven Bugiel†
∗CISPA, Saarland University †CISPA Helmholtz Center i.G.
전자공학부 김민하
Short Text? Leivews
Large Effect? Update
연구 배경
사용자와 개발자의 직접적인 소통 환경이 형성되어 있음
But
보안 및 개인 정보 보호에 대해 직접적으로 업데이트에 영향을
주는지에 대해서는 아직 조사되지 않음
문제 정의
보안&개인 정보&사생활에 관련된 Reivew와 어플리케이션의
Update 간의 상관관계를 연구
• 다시말해 이 논문의 목적은
• SPR이 안드로이드 어플리케이션에서 Update의 중요한 예측 변
수임을 밝히고자 함
RELATED WORK
• 자연어 처리 사용
• 앱 리뷰 분류 및 분석
• 앱 보안 진화
methodology
App and Review Crawler
• 텍스트뿐만 아니라 점수, 그리고 나중에 분류를 위해 텍스트를
전처리.
• 다운로드가 최소 50,000,000개 이상인 앱으로 데이터 수집을 제
한
• 영어로 작성된 리뷰만 탐색
• 텍스트 외에도 개발자 응답(가능한 경우)을 수집
사용자 리뷰 마이닝
Google의 Crawler
• 크롤링(Crawling) 작업 :
• 무수히 많은 컴퓨터에 나뉘어 저장 돼 있는 문서를 수집해 검색
대상의 색인으로 포함시키는 기술
• 상위 2,583개 앱에서 4.5M 사용자 리뷰 수집 후
• 5,527개의 보안, 개인정보 보호 관련 리뷰를 식별
구글 플레이에 등록된 예전 버전의 앱을 분석
• 앱의 변화 기록을 저장
• 보안/사생활과 관련된 업데이트와 사용자의 리뷰의 연관성을
연구
크롤링 앱 기록
• 앱 버전을 쿼리 :
• 각 앱마다 코드가 다름.
• 이러한 코드를 나열하는 방법은 따로 없음
• 예를 들면 일부 어플은 0부터 시작하여 단순하게 정수를 증가시
키는 패턴이지만 어떤 어플은 YYYYMMMDDV와 같이 날짜 패
턴을 이용하기 때문에 코드들이 일관되지 않음
• 이러한 버전들을 수집하기 위하여 play API를 사용
크롤링 앱 기록
• 출시 날짜 추출 :
• 하지만 Play API의 두 번째 주요 단점은 이전 앱 버전의 릴리스/
업로드 날짜를 쿼리할 수 없다는 것입니다.
크롤링 앱 기록
리뷰 분류 순서
1. SPR과 SPR이 아닌 수의 균형을 맞춥니다
2. 특징 추출
스톱 워드 제거를 이용하여 a, an the 등을
리뷰에서 제거 하고,
단어 대신 N-gram 기능 사용하여 문자 추출
3. 기계 학습
Bow(bag of words) 적용
4. 검증
K-fold 크로스 검증과 AUC 적용
검증
• k-Fold 크로스 검증
• AUC (Area Under the Curve)
Static App Analysis
• 앱 개발 코드나 타사 라이브러리 코드의 변경 여부를 분석
• 1. 경험적 분석
• 2. LibScout
• 라이브러리 코드가 변경될 수도 있으므로
Mapping SPR to SPU
SPU가 발견되면 SPR과 새로 발견된 SPU 사이의 이 연결
은 일치로 간주된다
Mapping SPR to SPU
SPR에서 SPU까지의 버전 거리
EMPIRICAL ANALYSIS
SPR
• SP 관련 가장 많이 언급된 Top10개
추출된 5,527의 SPR중에 2,898개는 카테고리로 분류가 불가
능
SPR
• Runtime permissions vs. install-time permissions
Result
런타임 권한이 있는 앱이 많은 수의 SPR을 유도한다는 것을
T-Test를 실시하여 밝힘
* T-test란 두 집단 간의 평균의 차이가 유의미한 지 검증하는 보편적인 통계 방법
SPR
• 나머지 사례에선 우편으로 구체적 설명을 요구(350자제한)
• 나머지 96개 리뷰에선 이미 해당 사항을 수정 중이라 답하였고
• 직후에 업데이트된 버전에서78/96 의 SPU를 확인할 수 있었음
• Developer responses
SPU
• 앱의 권한이 변경된 것이 확인되면 SPU로 간주
• 요청된 권한이 앱에서 제거: 1,608
• 권한 보호 API 호출이 제거 1,085
• 보호된 API를 트리거하는 Lib 호출이 제거: 940
SPU
*WAKE LOCK ? 자원을 이용하기 위해 프로세서가 활성화
되고 있는 상태
SPR To SPU Mapping
X축에서 오른쪽으로 갈수록 SPR과 SPU의 거리가 멀다고 판단
다시말해 SPU가 리뷰에 의해서 수정되었을 가능성이 감소
답변
정적 분석의 한계
앱이 더 이상 유지 관리X
라이브러리 자체에 변경
개발자의 내부 코드 수정
SPUSPR
Summary of Findings
• 개발자 응답률(Response Rate)
• SPR Ratio: 총 리뷰 수에 대한 SPR 비율
• Ageage score: 마지막 앱 업데이트 이후 해당 앱 버전이 받은 평균 점수
• Permission mechanism: 앱 버전에서 사용하는 권한 메커니즘(실행 시간 또는 설치 시간)
• App category : Google Play에서 정의한 앱 카테고리
• Reply Ratio: 이전 앱 versio 이후 총 리뷰 수에 대한 개발자 응답 비율
MODELING
SECURITY AND PRIVACY UPDATES
1. Data set
2. 상관관계 분석(Correlation Analysis)
3. Building the Models
Discussion
저자는 다음 사항을 검토 필요성을 제시
1. 글자수를 제안하는 리뷰
2. 리뷰 작성 프로세스 단순화
3. 개발자의 리뷰 확인 접근 방식을 고려
Conclusion
SPR,
Review
None SPR
Security&Priavcy 과 관련된 업데이트
를 분석하기 위해 정적 코드 분석
업데이트의 영향이 된 요인을 평가하는 회귀 모델
Result
앱의 투명성을 증진시키기 위해서 SPR을 더 많이 표현하는 행위를 요구
개발자를 위한 더 좋은 툴을 만들 행위를 요구
리뷰를 적극 수용하여 사생활 뿐만 아니라 앱 디자인에도 영감을 주기를 바람
감사합니다.

More Related Content

Similar to short text large effect measuring the impact of user reviews on android app security & privacy

appstore_폐쇄vs개방정책
appstore_폐쇄vs개방정책appstore_폐쇄vs개방정책
appstore_폐쇄vs개방정책
Gunhee Lee
 
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Channy Yun
 

Similar to short text large effect measuring the impact of user reviews on android app security & privacy (20)

open api seminar
open api seminaropen api seminar
open api seminar
 
공개SW 거버넌스 실무
공개SW 거버넌스 실무공개SW 거버넌스 실무
공개SW 거버넌스 실무
 
[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner
[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner
[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner
 
appstore_폐쇄vs개방정책
appstore_폐쇄vs개방정책appstore_폐쇄vs개방정책
appstore_폐쇄vs개방정책
 
regular.express 발표자료
regular.express 발표자료regular.express 발표자료
regular.express 발표자료
 
HPE 솔루션과 함께하는 모바일 앱 테스팅 방안 소개
HPE 솔루션과 함께하는 모바일 앱 테스팅 방안 소개HPE 솔루션과 함께하는 모바일 앱 테스팅 방안 소개
HPE 솔루션과 함께하는 모바일 앱 테스팅 방안 소개
 
Five Star Mobile App을 위한 테스트 체계 만들기
Five Star Mobile App을 위한 테스트 체계 만들기Five Star Mobile App을 위한 테스트 체계 만들기
Five Star Mobile App을 위한 테스트 체계 만들기
 
[H3 2012] 앱(APP) 중심으로 생각하기 - DevOps와 자동화
[H3 2012] 앱(APP) 중심으로 생각하기 - DevOps와 자동화[H3 2012] 앱(APP) 중심으로 생각하기 - DevOps와 자동화
[H3 2012] 앱(APP) 중심으로 생각하기 - DevOps와 자동화
 
Spring Project와 최신 Pivotal Cloud Foundry 업데이트
Spring Project와 최신 Pivotal Cloud Foundry 업데이트 Spring Project와 최신 Pivotal Cloud Foundry 업데이트
Spring Project와 최신 Pivotal Cloud Foundry 업데이트
 
Curie: Deep-linking & App-indexing based mobile search engine
Curie: Deep-linking & App-indexing based mobile search engineCurie: Deep-linking & App-indexing based mobile search engine
Curie: Deep-linking & App-indexing based mobile search engine
 
Observability customer presentation samuel-2021-03-30
Observability customer presentation samuel-2021-03-30Observability customer presentation samuel-2021-03-30
Observability customer presentation samuel-2021-03-30
 
Saturday Azure Live 1701 Azure WebApp 개념원리
Saturday Azure Live 1701 Azure WebApp 개념원리Saturday Azure Live 1701 Azure WebApp 개념원리
Saturday Azure Live 1701 Azure WebApp 개념원리
 
소프트웨어공학 프로젝트 최종발표.pptx
소프트웨어공학 프로젝트 최종발표.pptx소프트웨어공학 프로젝트 최종발표.pptx
소프트웨어공학 프로젝트 최종발표.pptx
 
OSS and R&D
OSS and R&DOSS and R&D
OSS and R&D
 
React native development
React native developmentReact native development
React native development
 
ecdevday4
ecdevday4ecdevday4
ecdevday4
 
안드로이드 기반 SNS 어플리케이션의 코드 변조를 통한 취약점 분석 및 보안 기법 연구
안드로이드 기반 SNS 어플리케이션의 코드 변조를 통한 취약점 분석 및 보안 기법 연구안드로이드 기반 SNS 어플리케이션의 코드 변조를 통한 취약점 분석 및 보안 기법 연구
안드로이드 기반 SNS 어플리케이션의 코드 변조를 통한 취약점 분석 및 보안 기법 연구
 
AWS Innovate: Mobile App testing with AWS Device Farm- Kevin Kim
AWS Innovate: Mobile App testing with AWS Device Farm- Kevin KimAWS Innovate: Mobile App testing with AWS Device Farm- Kevin Kim
AWS Innovate: Mobile App testing with AWS Device Farm- Kevin Kim
 
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
 
모바일 앱(App) 개발 테스트 솔루션 v20160415
모바일 앱(App) 개발 테스트 솔루션 v20160415모바일 앱(App) 개발 테스트 솔루션 v20160415
모바일 앱(App) 개발 테스트 솔루션 v20160415
 

More from KIMMINHA3

More from KIMMINHA3 (15)

[ECCV2022] Generative Domain Adaptation for Face Anti-Spoofing
[ECCV2022] Generative Domain Adaptation for Face Anti-Spoofing[ECCV2022] Generative Domain Adaptation for Face Anti-Spoofing
[ECCV2022] Generative Domain Adaptation for Face Anti-Spoofing
 
[AAAI21] Self-Domain Adaptation for Face Anti-Spoofing
[AAAI21] Self-Domain Adaptation for Face Anti-Spoofing[AAAI21] Self-Domain Adaptation for Face Anti-Spoofing
[AAAI21] Self-Domain Adaptation for Face Anti-Spoofing
 
[CVPR'22] Domain Generalization via Shuffled Style Assembly for Face Anti-Spo...
[CVPR'22] Domain Generalization via Shuffled Style Assembly for Face Anti-Spo...[CVPR'22] Domain Generalization via Shuffled Style Assembly for Face Anti-Spo...
[CVPR'22] Domain Generalization via Shuffled Style Assembly for Face Anti-Spo...
 
[TIFS'22] Learning Meta Pattern for Face Anti-Spoofing
[TIFS'22] Learning Meta Pattern for Face Anti-Spoofing[TIFS'22] Learning Meta Pattern for Face Anti-Spoofing
[TIFS'22] Learning Meta Pattern for Face Anti-Spoofing
 
[AAAI'23]Learning Polysemantic Spoof Trace
[AAAI'23]Learning Polysemantic Spoof Trace[AAAI'23]Learning Polysemantic Spoof Trace
[AAAI'23]Learning Polysemantic Spoof Trace
 
Architectures of Super-resolution (AI)
Architectures of Super-resolution (AI)Architectures of Super-resolution (AI)
Architectures of Super-resolution (AI)
 
[CVPRW2021]FReTAL: Generalizing Deepfake detection using Knowledge Distillati...
[CVPRW2021]FReTAL: Generalizing Deepfake detection using Knowledge Distillati...[CVPRW2021]FReTAL: Generalizing Deepfake detection using Knowledge Distillati...
[CVPRW2021]FReTAL: Generalizing Deepfake detection using Knowledge Distillati...
 
[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruning[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruning
 
Methods for interpreting and understanding deep neural networks
Methods for interpreting and understanding deep neural networksMethods for interpreting and understanding deep neural networks
Methods for interpreting and understanding deep neural networks
 
Meta learned Confidence for Few-shot Learning
Meta learned Confidence for Few-shot LearningMeta learned Confidence for Few-shot Learning
Meta learned Confidence for Few-shot Learning
 
“zero-shot” super-resolution using deep internal learning [CVPR2018]
“zero-shot” super-resolution using deep internal learning [CVPR2018]“zero-shot” super-resolution using deep internal learning [CVPR2018]
“zero-shot” super-resolution using deep internal learning [CVPR2018]
 
[CVPRW 2020]Real world Super-Resolution via Kernel Estimation and Noise Injec...
[CVPRW 2020]Real world Super-Resolution via Kernel Estimation and Noise Injec...[CVPRW 2020]Real world Super-Resolution via Kernel Estimation and Noise Injec...
[CVPRW 2020]Real world Super-Resolution via Kernel Estimation and Noise Injec...
 
Transferable GAN-generated Images Detection Framework.
Transferable GAN-generated Images  Detection Framework.Transferable GAN-generated Images  Detection Framework.
Transferable GAN-generated Images Detection Framework.
 
[Seminar arxiv]fake face detection via adaptive residuals extraction network
[Seminar arxiv]fake face detection via adaptive residuals extraction network [Seminar arxiv]fake face detection via adaptive residuals extraction network
[Seminar arxiv]fake face detection via adaptive residuals extraction network
 
Xception mhkim
Xception mhkimXception mhkim
Xception mhkim
 

short text large effect measuring the impact of user reviews on android app security & privacy

  • 1. Short Text, Large Effect: Measuring the Impact of User Reviews on Android App Security & Privacy Duc Cuong Nguyen∗, Erik Derr∗, Michael Backes†, Sven Bugiel† ∗CISPA, Saarland University †CISPA Helmholtz Center i.G. 전자공학부 김민하
  • 2. Short Text? Leivews Large Effect? Update
  • 3. 연구 배경 사용자와 개발자의 직접적인 소통 환경이 형성되어 있음 But 보안 및 개인 정보 보호에 대해 직접적으로 업데이트에 영향을 주는지에 대해서는 아직 조사되지 않음
  • 4. 문제 정의 보안&개인 정보&사생활에 관련된 Reivew와 어플리케이션의 Update 간의 상관관계를 연구 • 다시말해 이 논문의 목적은 • SPR이 안드로이드 어플리케이션에서 Update의 중요한 예측 변 수임을 밝히고자 함
  • 5. RELATED WORK • 자연어 처리 사용 • 앱 리뷰 분류 및 분석 • 앱 보안 진화
  • 7. App and Review Crawler • 텍스트뿐만 아니라 점수, 그리고 나중에 분류를 위해 텍스트를 전처리. • 다운로드가 최소 50,000,000개 이상인 앱으로 데이터 수집을 제 한 • 영어로 작성된 리뷰만 탐색 • 텍스트 외에도 개발자 응답(가능한 경우)을 수집 사용자 리뷰 마이닝
  • 8. Google의 Crawler • 크롤링(Crawling) 작업 : • 무수히 많은 컴퓨터에 나뉘어 저장 돼 있는 문서를 수집해 검색 대상의 색인으로 포함시키는 기술 • 상위 2,583개 앱에서 4.5M 사용자 리뷰 수집 후 • 5,527개의 보안, 개인정보 보호 관련 리뷰를 식별
  • 9. 구글 플레이에 등록된 예전 버전의 앱을 분석 • 앱의 변화 기록을 저장 • 보안/사생활과 관련된 업데이트와 사용자의 리뷰의 연관성을 연구 크롤링 앱 기록
  • 10. • 앱 버전을 쿼리 : • 각 앱마다 코드가 다름. • 이러한 코드를 나열하는 방법은 따로 없음 • 예를 들면 일부 어플은 0부터 시작하여 단순하게 정수를 증가시 키는 패턴이지만 어떤 어플은 YYYYMMMDDV와 같이 날짜 패 턴을 이용하기 때문에 코드들이 일관되지 않음 • 이러한 버전들을 수집하기 위하여 play API를 사용 크롤링 앱 기록
  • 11. • 출시 날짜 추출 : • 하지만 Play API의 두 번째 주요 단점은 이전 앱 버전의 릴리스/ 업로드 날짜를 쿼리할 수 없다는 것입니다. 크롤링 앱 기록
  • 12. 리뷰 분류 순서 1. SPR과 SPR이 아닌 수의 균형을 맞춥니다 2. 특징 추출 스톱 워드 제거를 이용하여 a, an the 등을 리뷰에서 제거 하고, 단어 대신 N-gram 기능 사용하여 문자 추출 3. 기계 학습 Bow(bag of words) 적용 4. 검증 K-fold 크로스 검증과 AUC 적용
  • 13. 검증 • k-Fold 크로스 검증 • AUC (Area Under the Curve)
  • 14. Static App Analysis • 앱 개발 코드나 타사 라이브러리 코드의 변경 여부를 분석 • 1. 경험적 분석 • 2. LibScout • 라이브러리 코드가 변경될 수도 있으므로
  • 15. Mapping SPR to SPU SPU가 발견되면 SPR과 새로 발견된 SPU 사이의 이 연결 은 일치로 간주된다
  • 16. Mapping SPR to SPU SPR에서 SPU까지의 버전 거리
  • 18. SPR • SP 관련 가장 많이 언급된 Top10개 추출된 5,527의 SPR중에 2,898개는 카테고리로 분류가 불가 능
  • 19. SPR • Runtime permissions vs. install-time permissions Result 런타임 권한이 있는 앱이 많은 수의 SPR을 유도한다는 것을 T-Test를 실시하여 밝힘 * T-test란 두 집단 간의 평균의 차이가 유의미한 지 검증하는 보편적인 통계 방법
  • 20. SPR • 나머지 사례에선 우편으로 구체적 설명을 요구(350자제한) • 나머지 96개 리뷰에선 이미 해당 사항을 수정 중이라 답하였고 • 직후에 업데이트된 버전에서78/96 의 SPU를 확인할 수 있었음 • Developer responses
  • 21. SPU • 앱의 권한이 변경된 것이 확인되면 SPU로 간주 • 요청된 권한이 앱에서 제거: 1,608 • 권한 보호 API 호출이 제거 1,085 • 보호된 API를 트리거하는 Lib 호출이 제거: 940
  • 22. SPU *WAKE LOCK ? 자원을 이용하기 위해 프로세서가 활성화 되고 있는 상태
  • 23. SPR To SPU Mapping X축에서 오른쪽으로 갈수록 SPR과 SPU의 거리가 멀다고 판단 다시말해 SPU가 리뷰에 의해서 수정되었을 가능성이 감소 답변 정적 분석의 한계 앱이 더 이상 유지 관리X 라이브러리 자체에 변경 개발자의 내부 코드 수정 SPUSPR
  • 24. Summary of Findings • 개발자 응답률(Response Rate)
  • 25. • SPR Ratio: 총 리뷰 수에 대한 SPR 비율 • Ageage score: 마지막 앱 업데이트 이후 해당 앱 버전이 받은 평균 점수 • Permission mechanism: 앱 버전에서 사용하는 권한 메커니즘(실행 시간 또는 설치 시간) • App category : Google Play에서 정의한 앱 카테고리 • Reply Ratio: 이전 앱 versio 이후 총 리뷰 수에 대한 개발자 응답 비율 MODELING SECURITY AND PRIVACY UPDATES 1. Data set 2. 상관관계 분석(Correlation Analysis) 3. Building the Models
  • 26. Discussion 저자는 다음 사항을 검토 필요성을 제시 1. 글자수를 제안하는 리뷰 2. 리뷰 작성 프로세스 단순화 3. 개발자의 리뷰 확인 접근 방식을 고려
  • 27. Conclusion SPR, Review None SPR Security&Priavcy 과 관련된 업데이트 를 분석하기 위해 정적 코드 분석 업데이트의 영향이 된 요인을 평가하는 회귀 모델 Result 앱의 투명성을 증진시키기 위해서 SPR을 더 많이 표현하는 행위를 요구 개발자를 위한 더 좋은 툴을 만들 행위를 요구 리뷰를 적극 수용하여 사생활 뿐만 아니라 앱 디자인에도 영감을 주기를 바람

Editor's Notes

  1. 다음은 방법론에 대해서 설명드리겠습니다. 보시는 것과 같이 크롤러라는 것이 있습니다. 크롤러에 대한 설멸은 다음장에서 설명드리겠습니다. 크롤러를 이용하여 사용자의 리뷰들을 분류하여 Security&privacy와 관련된 리뷰들을 수집합니다. 또 앱들을 크롤링하여 분석기를 이용하여 Security& Privacy와 밀접하게 관련된 Update 항목들을 추출하여 각 리뷰와 업데이트의 내용들을 매핑하여 리뷰와 업데이트 간의 연관성을 찾아내는 식으로 진행됩니다.
  2. 크롤링을 하기전에 이 논문에서는 텍스트 뿐만 아니라 사용자의 평가 점수와 정확한 텍스트 분류를 위해 stop word removal 등을 이용하여 텍스트를 전처리 합니다. 크롤링 시에 해당 조건을 만족한 앱에 대해서만 크롤링을 진행하도록 하였습니다. 읽기
  3. 크롤링은 다음과 같습니다. 논문에선 크롤링 시 google의 크롤러를 사용하였습니다.
  4. 앱마다의 코드가 다름
  5. Review Classifier를 하기위한 순서는 다음과 같습니다. 가장먼저 SPR과 SPR이 아닌 것의 균형을 맞추어 데이터를 셋팅합니다. 그리고 우측 표에 보시는 키워드가 포함된 리뷰들은 SPR로 간주하고, 아니면 None SPR로 간주합니다. 그 후에 SPR의 특징들을 추출합니다. 가장먼저 Stop Word Removal을 이용하여 a, an the등을 제거한 후에 n-gram 기법을 사용합니다. 단어 단위가 아닌 n-gram을 사용하는 이유는 앞서 말씀 드린것과 같이 리뷰에는 오타가 포함될 수 있기 때문입니다. 기계 학습 모델은 저희가 잘 아는 Bag of words 알고리즘을 사용하였습니다. 그리고 이 일반화한 과정들을 검증하기 위해서 k-fold 크로스 검증과 AUC를 분류 평가 지표로 택합니다.0
  6. 검증에 이용되는 k fold 크로스 검증은 얼마만큼 훌륭하게 일반화된 모델을 만들어내는가를 평가하기 위해 사용되는 검증입니다. Auc는 ROC 커브 하단의 영역 넓이를 구한것으로 하단영역이 1에 가까울수록 훌륭한 분류 성능을 의미합니다.
  7. 지금까지 앱 버전 출시 날짜와 리뷰 날짜를 모두 사용하여 앱 버전에 SPR을 매핑할 수 있는 데이터 모델을 구축했다. SPR이 앱 보안과 프라이버시에 미치는 영향을 측정하기 위해 SPR 바로 앞의 버전과 업데이트된 버전 즉 SPU에 대해 정적 분석을 실시할것입니다. LibScout은 안드로이드/자바 앱에서 타사 라이브러리를 탐지할 정적 분석 툴이라고 보시면됩니다. 이것을 이용하여 보안 문제나 개인정보에 영향을 미치는 라이브러리를 찾아낼 것입니다.
  8. 최종 단계는 앱의 SPR과 앱의 SPU를 맵핑시킬 것입니다. Review가 달리면 그 이후에 Update를 하게되므로 맵핑을 할 때 Review와 직 후의 Update 간의 보안이나 개인정보 관련 업데이트를 찾도록 한다.
  9. SPR과 SPU까지의 버전 거리도 구하게 되는데 이 논문에서는 보시는 것과 같이 리뷰에 대한 조치가 N번째 업데이트 이후에 수정이 되었다면 그 거리는 N이 되도록 하였습니다.
  10. 정확한 이유를 유추할 수 없는 경우에 추출된 5,527의 SPR중에 2,898개는 카테고리로 분류가 불가능합니다. 차트를 보시는 것과 같이 외부 스토리지,연락처,위치 순으로 엑세스 권한이 가장 많이 언급된것을 보실 수 있습니다.
  11. 다음은 런타임 사용 권한대 설치시간 사용 권한입니다. 현재 구글은 2015년 10월 안드로이드 6.0을 먼저 출시하고 설치 시간 허가 모델에서 런타임 시 앱이 위험 권한을 요청하는 런타임 허가 요청 방식으로 전환 런타임 권한 요청이 사용자의 인식에 미치는 영향을 조사하기 위해, 앱이 런타임 권한을 채택하기 전과 후의 총 앱 리뷰 수에 대한 SPR 비율을 계산한다. 그 후에 T-TEST를 실시하여 런타임 허가와 인스톨타임 허가 각각의 SPR 비율을 비교하였다. 그 결과 런타임 권한이 있는 앱이 상당히 많은 수의 SPR을 수신함을 논문에서 확인하였습니다.
  12. 리뷰에 대한 개발자의 대응 형태는 가장먼저 • 설명 : 언급된 권한의 필요성에 대해 설명하는것 • 접촉 : 개발자는 사용자에게 연락하고 더 많은 정보를 제공하도록 요청하였다. • 수정(96): 이미 발행되었거나 진행 중이라고 보고하였다. • 사전 정의된 일반 답변(50): 개발자는 미리 정의된 일반적인 템플릿으로 응답함
  13. 우리는 SPU를 앱의 권한이 변경되면 SPU로 간주하였습니다. 그림 8은 SPR이 Play에 게시된 후 앱 업데이트와 제거된 상위 10개의 권한을 보여줍니다. 장치의 전화 상태, 사용자 계정에 대한 액세스 및 외부 스토리지에 대한 액세스가 가장 자주 제거되는 사용 권한이며, SPR에서도 외부 스토리지가 가장 많이 언급된 사용 권한 제거된 권한들의 대부분은 중요한 데이터에 액세스할 수 있는 것들이므로 사용자의 개인 정보 인식이 높아졌음을 나타냅니다. 위의 차트들을 보시면 겹치는 항목들이 보이실겁니다. 이 뜻은 SPR이 SPU에 영향을 미치고 있다는 것을 유추해 볼 수 있습니다. (그림10을 설명할때 웨이크락 관련 권한이 제거된것을 설명하먕서 SPR이 주는 이점을 강조)
  14. 다음은 SPU를 통하여 타사 라이브러리의 Security&privacy 관련 권한 호출을 제거한 top10입니다. 여기서 논문은 다음 wake-lock 권한을 제거한것을 흥미롭게 보고있습니다. 이 웨이크록은 잘못 사용하면 배터치 방전, 어플리케이션의 불안정을 일으킬수 있는 항목입니다.
  15. 이제 SPR과 spu간에 맵핑에 실패한 케이스 설명드리겠습니다. 맵핑을 시도했을때 나타나는 결과는 세가지로 나뉩니다. 말씀드린것과 같이 맵핑 그리고 리뷰를 반영하지 않은 SPU 업데이트를 유도하지 않은 SPR 세가지로 나뉩니다. 결과적으로 우리는 이전에 진행하였던 맵핑 방식으로 4,898/5,527 SPR을 영향을 받는 앱과 매핑할 수 있습니다. 하지만 업데이트가 반영되지 않은 경우에는 단순하게 개발자가 답변만 했거나, 정적 분석의 한계가 있거나, 앱이 더 이상 유지관리 되고 있지 않은 경우였습니다. 또한 리뷰가 반영되지 않은 SPU의 경우에는 라이브러리 자체에 변경이 일어났거나, 개발자의 내부 코드가 수정된 경우였습니다.
  16. 개발자 응답률은 다음과 같이 계산할 수 있고, 그 결과 Security&privacy의 리뷰에서 75.68%가 SPU 이루어지고 있다는 것을 확인하엿습니다.
  17. 다양한 요소가 Android 애플리케이션 업데이트(SPU 및 비 SPU)에 미치는 영향을 조사하기 위해 여러 가지 작업을 수행했습니다. 앱 업데이트가 보안/보안 관련 업데이트인지 여부를 예측하는 회귀 모델을 사용합니다. 데이터 셋은 다음과 같이 spr 비율, 평균점수, 권한 메커니즘, 앱카테고리, 응답비율로 구성됩니다. SPR 비율과 평균점수는 사용자 변수로 간주하고, 권한 메커니즘, 앱 카테고리, 응답 비율은 앱 변수로 하였습니다. 그렇게 하여 현재 고려 중인 버전의 최종 SPR 비율과 최종 평균 점수는 이전 SPR 비율을 해당 버전 거리로 나눈 값과 이전 평균 점수를 각각 해당 버전 거리로 나눈 값입니다. 데이터 셋이 이뤄진 다음엔 상관관계를 분석합니다. 혼합 모형의 공식 추정치는 불안정하고 모형에 다중 공선 변수가 있는 경우 해석하기 어려울 수 있으므로, 우리는 독립적인 변수에 대한 상관 분석(예: 총 검토에 대한 SPR 비율, 응답 비율 및 평균 점수)을 수행했습니다. 분석 결과 SPR 비율, 응답 비율, 데이터 세트의 평균 점수 변수 사이에는 유의한 다중 공선성이 없는 것으로 나타났습니다. 여기서 다중 공선성이란 (Multicollinearity) ? 회귀분석에서 변수들간에 강한 상관관계가 나타나는 문제 다음엔 분석의 종속 변수는 SPU 혹은 NONE SPU로 이루어지므로 이진수로 표현이 가능하기 때문에 로지스틱 회귀 분석을 사용합니다.
  18. 저자는 이 연구를 통해서 SPR과 SPU를 추출하고 SPR과 SPU간의 직접적인 연관성을 연구하였습니다. 로지스틱 회귀 분석을 적용하여 SPR과 SPU간의 연관성을 입증하였고 결론적으로 저자는 앱의 투명성을 증진시키기 위해 SPR을 더 많이 표현하길 바라고 개발자를 위한 더 좋은 툴을 만들고 리뷰를 적극 수용하여 사생활 뿐만 아니라 앱 디자인에도 영감을 주길 바란다고 시사하였습니다.