무결성이란?

: 정보보호 3요소 중 하나로 영어로 Integrity이며, 정보가 오직 허가된 사람에게만 개방되고 수정될 수 있음을 보장하는 것

  • 모바일 애플리케이션에서 의미하는 무결성은 애플리케이션의 개발자가 아닌 타인(악의적인 사용자)이 애플리케이션을 위/변조할 수 있느냐를 판단하는 기준
  • 일반적으로 금융앱을 제외하고는 무결성 체크로직을 구현하지 않지만 구현하는 경우에도 우회가 가능한 경우 존재
  • 무결성 로직이 미존재하면 정상 애플리케이션을 악의적인 목적으로 위/변조하여 유포 및 재설치를 통해 단말기 정보 및 단말기 내 중요정보 유출 가능


무결성 확인 
  1. 무결성 체크 로직 미존재

            * 무결성 체크 로직이 존재하지 않는 경우, 애플리케이션 명을 변경 후 재설치 시 정상적으로 실행되는 지 확인한다.

            1) 변경 전 애플리케이션 명 확인 - SIK-C1

            2) 애플리케이션 추출 후 디컴파일

                 자세한 내용은 이전 게시물 참조: http://securitynote.tistory.com/7?category=788948

            3) AndroidManifest.xml 파일 열기
                                

            4) intet-filter 태그 내에 android:label="@String/app-name" 옵션 변경

        
                    @String/app-name 부분을 변경하고자 하는 이름으로 바꾼다.



            5) 변조한 앱 재컴파일, 서명 후 설치 시 정상 실행 확인
            
                


            ★ 이렇게 간단한 조작을 통해 무결성 테스트를 진행한다. 이 때, 정상적으로 앱이 실행이 되지 않으면 무결성 체크 로직 우회를 시도한다.

→ 자세한 내용은 다음 포스팅에서...!!


+ Recent posts