[JCO] Reverse Engineering, 안드로이드 학습

제 11회 한국자바개발자 컨퍼런스에서 트랙1, 3번째 세션에서 Reverse Engineering, 안드로이드 학습이란 주제로 발표를 진행합니다.

리버싱이 무엇인지,  안드로이드 리버싱을 통해서 어떻게 학습을 할 수 있는지 다양한 도구와 팁들을 소개합니다.

학습을 목적으로 리버스엔지니어링이 허용되지만 기술을 복제 유혹을 받을 수도 있습니다.

법적이나, 윤리적으로 문제가 된다는 것을 명심하고, 공부한 내용을 서로 공유하며 미소 지을 수 있는 개발문화가 되길 바래봅니다.😀

발표자료와 함께 사용된 동영상 공유합니다.

자바 클래스 리버싱

안드로이드 실행파일 구조와 리버싱

Reverse Engineering 활용한 학습 예제

분석할 앱선정과 APK 파일 추출

디컴파일 후 분석

클래스 다이어그램으로 – Enterprise Architect

의존성 검사를 통해 쉽게 – xDepend

[JCO] Reverse Engineering, 안드로이드 학습”에 대한 15개의 생각

  1. 오늘강연 너무 잘들었어요
    처음듣는 사람을위해 어려운 내용을 쉽고 명확하게 설명해주신점 인상적이였어요
    수고 많으셨어요

    1. 윤병현님 감사합니다.
      질문하시고 싶으신 내용있으면 언제든지 질문주세요.
      제가 아는 범위내에서는 최대한 답변드리겠습니다.
      감사합니다😀

  2. 그리고 궁금한게 있는데요~~
    저는 지금까지 디컴파일하면 클레스명,메서드명까지만 보이는줄 알았는데 소스까지 다 보이네요~~
    마켓에 올라온 앱은 다 디컴파일 할수 있는건가요?
    만약에 그렇다면 제가 앱을 올렸을 때 다른사람들이 디컴파일을 못하게하는 방법은 없는지 궁금합니다.

    1. 안녕하세요. 김준환님
      리버싱이 아애 불가능하진 않습니다. 도구들을 사용하여 리버싱을 어렵게할 수는 있습니다. 대표적인 도구가 proguard 입니다.

      리버싱을 어렵게 만들 수 있는 몇가지 방법들이 있는데 그 내용을 블로그를 통해서 공유하도록 하겠습니다.

      감사합니다.😀

  3. 안녕하세요. 저는 안드로이드를 공부하고 있는 학생인데요…
    이번 JCO 컨퍼런스에서 리버스 엔지니어링 강연을 듣고 한번 해볼려고 하는데요…
    블로그에 동영상을 보면서 따라 해볼려고 했는데 첫번째 자바 클래스 리버싱 동영상과 두버째 안드로이드 실행파일 구조와 리버싱 동영상이 재생이 안되네요…;;;
    다시한번 확인해주시면 안될까요?;;
    아니면 동영상 파일을 따로 보내주실수는 없나요?;;

    1. 안녕하세요. 장재석님
      동영상을 확인해보니 첫번째 두번째 동영상 중 첫번째 동영상이 오류가 있었습니다.
      재업로드를 해서 정상적으로 보실 수 있습니다.
      두번째 동영상은 3대의 PC에서 재생했는데 문제가 없네요. ^^;;;

      동영상을 따로 배포하기에는 용량도 문제지만 다양한 문제가 야기될거 같아서 Youtube로 배포합니다.😀

      그럼 도움이 되셨길 바래봅니다.
      좋은 하루되세요~😀

  4. 질문이 있는데요. 리버스 엔지니어링에 대해서 분석은 할 수 있는데 분석을 통해서 어플 자체를 다시 복원할 수 있는건가요?

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중