일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- beebox
- ESXi
- Openstack
- kibana
- diva
- CTF-d
- igoat
- vulnhub
- Suninatas
- elasticsearch
- ctf
- InsecureBank
- XSS
- 인시큐어뱅크
- Volatility
- base64
- NTFS
- 파이썬
- frida
- Docker
- otter
- MFT
- lord of sql injection
- SQL Injection
- Strings
- foremost
- 2018
- 안드로이드
- Reflected XSS
- logstash
- Today
- Total
목록InsecureBank (16)
Information Security
정의 - 애플리케이션이 실행되면 일정량의 메모리를 차지하고 실행 중에 필요한 정보들이 저장된다. 발생 위치 - 주기억 장치, 물리적 메모리 램 영향 - 앱에 입력하는 모든 입력값과 앱이 실행되는 모든 정보들이 메모리에 적재되어 실행한 후 실행이 완료되면 다른 데이터들로 채워진다. 진단 ps | grep inse 명령어로 현재 실행되고 있는 인시큐어뱅크 앱의 PID를 확인했다 am 명령어의 dumpheap 옵션으로 인시큐어뱅크 앱의 힙 메모리를 추출했다. pull 명령어로 힙 메모리 덤프 파일을 PC로 가져왔다. 힙 메모리 덤프 파일을 가져온 것을 확인할 수 있다. HxD 프로그램으로 덤프 파일을 확인한 결과 username, password는 평문으로 노출되어 있고 계좌정보, 금액까지 노출된 것을 알 수..
정의 - 악성코드들은 정상적으로 서비스되고 있는 앱을 조작하여 사용자들을 유인한다. 발생 위치 - Insecurebankv2\smail\com\andoid\insecurebankv2\PostLogin.smali 영향 - 사용자의 개인정보, 공인 인증서, 휴대폰 번호 탈취될 수 있다. 진단 디컴파일을 하면 Insecurebankv2\smail\com\andoid\insecurebankv2에 smail코드가 생성된다. PostLogin.smali 파일에서 “Device not Rooted!!”를 다른 문자열로 수정했다. smail코드를 수정 후 리패키징하는 과정이다. 리패키징이 끝나면 adb 명령어를 이용해 다시 Insecurebankv2.apk를 설치한다. 그림 1-5를 보면 Device not Roote..
정의 - 콘텐츠 프로바이더를 이용하여 자신의 데이터에 다른 애플리케이션이 접근하거나 부여한 권한대로 이용하도록 할 수 있다. 발생 위치 - com.android.insecurebankv2.TrackUserContentProvider 영향 - 데이터베이스에 저장되어 있는 정보가 노출된다. 진단 프로바이더의 URI 구성에 포함되어 있는 authorities 항목이 TrackUserContentProvider 로 설정되어 있는 것을 확인 할 수 있다. Drozer의 기능을 이용하여 콘텐츠 프로바이더에 공격 가능한 취약점이 존재하는지 확인했다. 애플리케이션의 콘텐츠 프로바이더 정보를 확인할 수 있다. Scanner.provider.finduris 모듈을 통해 콘텐츠 프로바이더의 URI 주소를 검색하여 접근 가능..
정의 - 안드로이드이 경우 보안상의 이유로 루트 권한을 막아 놓았다. 애플리케이션 실행 시 각 프로그램마다 권한을 부여하여 독립적으로 동작한다 이러한 제한을 풀거나 우회하기 위해서는 시스템 권한을 루팅으로 획득해야 한다. 발생 위치 - /system/bin/su, /system/xbin/su, /system/app/superuser.apk, /data/data/com.noshufou.android.su 영향 - 슈퍼 유저의 권한으로 하드웨어 성능 조작, 제조사 및 통신사 기본 애플리케이션 삭제, 시스템 권한을 이용한 다양한 디바이스 조작 등이 가능해진다. 진단 PostLogin 소스 코드를 보면 /system/app/Superuser.apk를 탐지함으로써 루팅여부를 파악할 수 있다. doesSUexist..
정의 - 각 액티비티는 독립적으로 동작하기 때문에 현재 액티비티에서 다음 액티비티를 실행한다. 발생 위치 - com.insecure.ttamna.doyouwant.GrettingActivity 영향 - 공격자가 필요한 액티비티를 강제로 호출하며, 해당 취약점을 악용하는 경우 권한이 없는 사용자가 특정 액티비티에 접근하여 권한 없이 특정 기능을 활성화할 수 있다. 진단 Drozer를 이용해 액티비티 취약점을 확인했다. ChangePassword 액티비티의 속성이 android:exported=”true”로 설정되어 있다는 것을 알 수 있다. 로그인 없이 인증을 무시하고 바로 액티비티를 호출한다. 인증 절차 없이 ChangePassword 액티비티가 호출됬다. PostLogin 액티비티의 속성이 androi..
정의 - 개인 정보처럼 민감한 정보일 수도 있고, 민감한 정보가 아닐 수 있다. 정보를 저장해야 할 경우에는 어떠한 방법으로 저장해야 할 것인지 생각해야한다. 발생 위치 - com.andorid.insecurebankv2_preferences.xml, myShaeredPreferences.xml 영향 - 평문으로 저장하면 정보가 공격자에게 노출된다. 진단 “adb shell” 명령어로 인시큐어뱅크 앱의 데이터가 저장되는 곳으로 이동했다. 데이터 위치에 myShaeredPreferences.xml 파일과 insecurebankv2_preferences.xml 파일이 있다. adb pull 명령어로 디렉터리의 myShaeredPreferences.xml 파일을 복사했다. 암호화되어 있는 사용자 아이디를 담고..
정의 - 정상적인 인증 절차를 우회하여 잘못된 인증으로 접근 권한을 취득하는 취약점 발생 위치 - AndroidManifest.xml 영향 - AndroidManifest.xml을 액티비티 속성으로 로그인 인증 없이 권한이 우회된다. 진단 am 명령어로 DoTransfer 액티비티 속성을 실행시켰다. 로그인 인증 과정 없이 DoTransfer 액티비티가 호출되었다. 대응방안 - 컴포넌트에 대한 접근은 외부에 허락하지 않는 것이 안전하다. 액티비 속성을 android:exported=”false” 설정하고 “true”로 설정할 경우 별도의 인텐트 필터로 검증한다.
보호되어 있는 글입니다.