- 안드로이드 개발 시 주로 웹 브라우저에서 보이는 화면을 표시하거나 웹 앱 or 하이브리드 앱 개발 시 사용 - 웹킷 렌더링 엔진(안드로이드 내부 모듈)을 사용해 자바스크립트 지원 - 사용하기 위해서는 인터넷에 액세스 할 수 있는 권한 필요 하이브리드 앱을 만드는 이유 : 개발 과정이 안드로이드 네이티브 앱에 비해 쉬움 기기 간의 호환성 해결하기 쉬움 인시큐어뱅크의 안드로이드 매니페스트 파일에는 다음과 같은 인터넷 사용 권한 존재 * 칼리리눅스 메타스플로잇 이용* 1. 메타스플로잇 실행 msfconsole 2. 웹 뷰 취약점 모듈 실행 use exploit/android/browser/webview_addjavascriptinterface 2-1) 로컬 ..
[ 루팅 탐지 및 우회 취약점] - 다른 애플리케이션의 데이터베이스나 파일에 접근할 수 있는 인터페이스 제공 - 주로 프로세스 간 통신으로 다른 애플리케이션과 데이터 공유 ( 앱 데이터를 다른 앱에서 사용할 수 있는 통로 제공 ) - Androidmanifest.xml의 요소에 정의 - 컨텐츠 프로바이더에 접근하기 위해서는 콘텐츠 프로바이더의 주소인 URI와 콘텐츠 리졸버(Content Resolver)가 필요 - 컨텐츠 프로바이더의 주소인 URI는 "content://authority/path"와 같은 형식으로 구성' (인터넷 주소인 URI와 비슷한 구성이며, 콘텐츠 프로바이더의 주소는 content://로 시작) - Authority는 콘텐츠 프로바이더의 고유 주소, path..
[ 루팅 탐지 및 우회 취약점] : 안드로이드 디바이스 시스템 권한을 얻는 것 - 안드로이드는 애플리케이션 실행 시 각 프로그램마다 권한을 부여해 독립적으로 동작 ( 순성 상태의 안드로이드는 애플리케이션에서 할 수 있는 행위들에 제한 ) - 이러한 제한을 풀거나 우회하기 위해서는 시스템 권한을 루팅으로 획득해야 함 - 루팅된 기기는 시스템 권한을 획득하게 되어 디바이스 내부의 민감한 정보에 접근 가능 - 금융권 애플리케이션은 기본적으로 루팅된 기기에서의 앱 실행을 차단 - 최근 디바이스에 카드 정보를 저장해 간단하게 결제할 수 있는 핀테크 기술이 이슈되면서 이 기술을 제공하는 기업에서 공식적으로 루팅된 기기는 보안 위협으로 감지하고 기술 지원을 하지 않는다는 입장을 밝혔다 루팅 ..
[ 액티비티 컴포넌트 취약점 ] : 애플리케이션 액티비티가 보안적으로 취약하면 로직을 무시하고 공격자가 필요한 액티비티를 강제로 호출해서 권한이 없는 사용자가 특정 액티비티에 접근해서 권한 없이 특정 기능 활성화 가능한 취약점 - 앱을 구성하는 가장 기본적인 구성 단위 중 하나로, 안드로이드 애플리케이션과 사용자 간의 상호 작용에 필요한 기능을 제공 ( 전화를 걸거나 이메일 전송 위한 화면 등 ) - 액티비티는 AndroidManifest.xml의 요소에 선언 - 하나의 애플리케이션은 하나 이상의 액티비티로 구성됨 - 하나의 특정 액티비티는 "메인 액티비티"라 불리고, 매니페스트에 메인 액티비티로 선언 - 메인 액티비티 : 애플리케이션 시작 시 나타나는 화면으로, 앱 실행 후 ..
[ 로컬 암호화 이슈] : 중요정보를 단말기에 저장할 때 취약한 암호화 알고리즘을 사용하거나 평문으로 저장해서 발생하는 이슈 1) 대칭키 알고리즘 : 하나의 키로 암호화, 복호화 하는 방식 - 하나의 키만 사용하므로 키가 노출될 경우 모든 암호문을 복호화 할 수 있다. - 암호문을 전달받는 사람이 키를 소유하고 있지 않으면 내용을 확인할 수 없다. 2) 공개키 알고리즘 : 2개의 키로 암호화, 복호화 하는 방식 타인에게 절대 노출되어서는 안되는 개인키(비밀키)를 토대로 만든 공개키가 쌍을 이룬 형태이다. - 공개키(Public Key) : 사람들에게 공개된 키이며 정보를 암호화 - 개인키(Private Key) : 사용자만 알고 있는 암호를 복호화 할 수 있는 키 ..
[ 취약한 인증 메커니즘] : 정상적인 인증 절차를 우회해 비정상적인 인증으로 접근 권한을 취득하는 취약점 OWASP Mobile Top 10 2014-M5에 해당하는 취약점으로, 일반적으로 다음과 같은 경우에 해당 적절하지 않은 앱 퍼미션 설정 여부 서비스 권한 상승 행위에 대한 통제 여부 기능에 대한 제한 또는 우회 금지 여부 불필요하거나 사용하지 않는 액티비티 제거 여부 인텐드 사용에 대한 안전성 여부 마스터 키 취약점 대응 여부 AndroidManifest.xml 코드 일부 안드로이드 액티비티의 속성이 anroid:exported="true"로 설정되어 있는 것을 확인 할 수 있다. 이 경우 다른 액티비티에서 인증 없이 접근 할 수 있다. 1) ADB 이용 adb shel..
[ 브로드 캐스트 리시버 ] : 안드로이드 디바이스에서 이벤트가 발생하면 브로드캐스트 신호를 보내는데, 이 신호를 받아 처리하는 역할 - 대상 애플리케이션에서 발생하는 브로드캐스트 받기 위해선 브로드캐스트 리시버가 설정되어 있어야 함. - 신호를 받는 경우 애플리케이션에 정의해 놓은 작업 수행. - AndroidManifest.xml의 항목에 선언 - 애플리케이션에서 선언한 액선을 호출하면 리시버는 해당 액션을 인지해 작업을 수행. (이 작업은 브로드캐스트 리시버를 상속 받은 메서드에서 처리) - 브로드캐스트 리시버를 호출할 때 발생하는 브로드캐스트가 정상이면 부팅 완료, 문자 메시지 송/수신, 배터리 상태 등을 나타내는 시스템 이벤트와 다른 애플리케이션에서 발생하는 경우 있음. 비정상이면 악의적인 애플..
https://github.com/konloch/bytecode-viewer/releases Releases · Konloch/bytecode-viewer A Java 8+ Jar & Android APK Reverse Engineering Suite (Decompiler, Editor, Debugger & More) - Konloch/bytecode-viewer github.com 위 사이트에서 최신 버전의 Bytecode-Viewer-0.00.00.jar 파일을 다운로드 한다. cmd 창을 켠 후에 다운로드 한 파일이 위치한 경로로 간다. java -jar Bytecode-Viewer-0.00.0.jar 명령어를 입력하면, Bytecode Viewer이 실행!
녹스 플레이어에 InsecureBank2 앱을 설치하려고 하는데adb 서버의 버전과 client의 adb 버전이 달라서 설치할 수없다고 계속 에러 메세지가 나왔다. 구글링을 엄청나게 한 결과 해결법을 찾았다.adb 버전을 업그레이드 해야겠다고만 생각했는데생각보다 간단한 문제였다. 먼저 아무 위치에서 adb --version 명령어로 adb 버전을 알아낸다. 그리고 녹스가 깔린 위치로 가서 D:\Program Files\Nox\binnox_adb.exe를 치면 nox의 adb 버전이 나오게 된다. 나의 경우adb는 1.0.41nox_adb.exe는 1.0.36 이었다. 서로 버전이 달라 녹스에 InsecureBankv2 앱이 깔리지 않았던 것이다. C:\Users\rmsdu\AppData\Loca..
- Total
- Today
- Yesterday
- Steganography
- MISC
- Cookie
- FTKImager
- networking
- 포렌식
- 리버싱
- forensics
- rev
- 인시큐어뱅크
- Fiesta
- 스테가노그래피
- dreamhack
- Android
- AssaultCube
- md5
- reversing
- mongodb
- forensic
- sqlinjection
- web
- 안드로이드
- 모바일
- 드림핵
- CTF
- SQLi
- 취약점
- 해킹
- cheatengine
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |