18
모모모 모모모모 , 모모모 모모모모 Tokensoft 개개개 NTMA Lab 개개개개 Team CM0S 개개개개개개개개 1 개개 개개개 ( 개개개개 )

모바일 악성코드, 그것이 알고싶다

Embed Size (px)

DESCRIPTION

호서대학교 벤처전문대학원 Security2U 내부 세미나

Citation preview

Page 1: 모바일 악성코드, 그것이 알고싶다

모바일 악성코드 , 그것이 알고싶다

Tokensoft 개발팀NTMA Lab 모바일팀Team CM0S

안양부흥고등학교 1학년 김남준 ( 착한아이 )

Page 2: 모바일 악성코드, 그것이 알고싶다

Index

1. 모바일 악성코드의 최근 동향 2. 모바일 악성코드 분석을 위한 준비 3. 모바일 악성코드 분석 4. 모바일 악성코드 치료법 5. 질의응답

Page 3: 모바일 악성코드, 그것이 알고싶다

START. 과거의 모바일 악성코드

Page 4: 모바일 악성코드, 그것이 알고싶다

1. 모바일 악성코드의 최근 동향

Page 5: 모바일 악성코드, 그것이 알고싶다

1. 모바일 악성코드의 최근 동향

Page 6: 모바일 악성코드, 그것이 알고싶다

1. 모바일 악성코드의 최근 동향

SMS 과금Premium

Call배경화면 변경주민등록번호 유출

원격 조종 위치정보

Page 7: 모바일 악성코드, 그것이 알고싶다

1. 모바일 악성코드의 최근 동향

모바일 악성코드를 방지하기 위해 구글은 멀웨어 방지 프로그램인 바운서를 구글 플레이에 적용하였으나 우회가 가능하다 .

악성 App 업로드

바운서 ( 멀웨어 검사 시스템 )

바운서 테스트 환경 정보를 받음

테스트 환경에서는 작동 못하게 변경 , 업로드

등록 성공

Page 8: 모바일 악성코드, 그것이 알고싶다

2. 모바일 악성코드 분석을 위한 준비

정적 분석 (Static Analysis) 애플리케이션을 직접 실행하지 않고 소스코드 만으로 분석하는

방법 . 애플리케이션의 요구권한과 악성코드 은닉여부 , 악성행위

검증이 가능하다 . 유지비용이 낮고 프로그램 전체를 분석할 수 있지만 , 코드

난독화나 허위탐지의 위험성이 있다 .

동적 분석 (Dynamic Analysis) 정적 분석과 달리 실제로 애플리케이션을 실행시켜 로그를

추출한 내용을 토대로 악성행위를 감시하는 분석 실제로 실행해봄에 따라 악성행위를 정확하게 탐지할 수 있다 . 그러나 시간이 오래 걸리며 유지비용이 많이 든다 .

Page 9: 모바일 악성코드, 그것이 알고싶다

2. 모바일 악성코드 분석을 위한 준비

apktool .apk 파일 속에 들어있는 xml 파일을 복원하기 위해 사용하는

툴 복원 결과 이미지와 xml 파일 , 각종 리소스 , smali code 가

복원된다 . Command>apktool d virus.apk virus

Page 10: 모바일 악성코드, 그것이 알고싶다

2. 모바일 악성코드 분석을 위한 준비

dex2jar 안드로이드 애플리케이션 내 .dex 파일을 jar 파일로 변환시켜주는 툴

Command>dex2jar class-es.dex

Page 11: 모바일 악성코드, 그것이 알고싶다

2. 모바일 악성코드 분석을 위한 준비

jd-gui 변환된 .jar 파일을 .class 로 볼 수 있게 하는 툴 위 툴을 사용하면 Java 소스코드를 볼 수 있다 .

Page 12: 모바일 악성코드, 그것이 알고싶다

3. 모바일 악성코드 분석 실습

분석 실습에 사용될 악성코드는 실제 Play Store 에서 유포되었던 Zitmo 계열의 악성코드 C 형 변형 악성코드입니다 .

http://goodboy2.dothome.co.kr/seminar.html 에 접속하셔서 악성코드 분석 툴과 악성코드 샘플을 다운받으시면 됩니다 .

Page 13: 모바일 악성코드, 그것이 알고싶다

4. 모바일 악성코드 치료법

Page 14: 모바일 악성코드, 그것이 알고싶다

4. 모바일 악성코드 치료법

안드로이드는 리눅스를 기반으로 한 Operating System 이다 .

= Linux 는 설정을 변경하려면 root 패스워드가 필요하다 . = Application 삭제만으로도 악성코드를 제거할 수 있다 . = 다른 Application 을 Default 로 설치한 경우에도

삭제로도 제거할 수 있다 .

Page 15: 모바일 악성코드, 그것이 알고싶다

4. 모바일 악성코드 치료법

애플리케이션 시작

버튼 클릭

Package Name 검색

애플리케이션 삭제Activity 실행

애플리케이션 삭제Activity 실행

애플리케이션 삭제

애플리케이션 종료

Page 16: 모바일 악성코드, 그것이 알고싶다

4. 모바일 악성코드 치료법

VaccineProgram.java

Button btn01 = (Button) findViewById(R.id.button01);

btn01.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

//TODO Auto-generated method stub

Intent intent = new Intent(Intent.ACTION_DELETE);

intent.setData(Uri.parse(“package:com.android.security”));

startActivity(intent);

}

});

Page 17: 모바일 악성코드, 그것이 알고싶다

5. 질의응답

질문하세요마음껏

Page 18: 모바일 악성코드, 그것이 알고싶다

감사합니다THANK YOU!