반응형

전체 글 578

iOS 정적분석을 위한 바이너리 추출

App 바이너리 추출 1. App Directory > App 설치된 Bundle 경로에서 FTP와 같은 방법(3utool도 가능)으로 바이너리 추출 > /var/containers/Bundle/Application/[app_id]/[app_name]/ 2. 메모리 덤프를 통한 바이너리 추출 > App Store에서 앱을 설치 시 앱이 암호화되어 복호화가 필요 > 앱 실행 시 앱이 메모리에 복호화되어 로그되었을 때 이를 덤프하여 바이너리를 추출하는 방법 > Clutch tool을 이용해 복호화과정을 자동화 시킬 수 있음 (12,13에서는 동작하지 않을수 있음) App Store 설치 앱과 IPA 설치파일 차이 - App Store에서 설치된 앱은 실행 Binary가 암호화 되어있음 - IPA 파일을 설치..

Smail code 타입 및 코드 예시

안드로이드 모바일 앱 분석 시 사용하는 Smali code에 대한 설명입니다. Smali 자료형 타입 I > int F > float J > Long S > short Z > Boolean C > char D > duoble V > void Smail 명령어 1. Register 간 데이터 이동 > move, move/from16, move-wide, move-wide/from16 2. 리턴값 세팅 및 처리 > move-result, move-result-wide, return-void, return-object 3. 예외 처리 > throw, move-exceoption 4. 레지스터에 상수 대입 > const/4, const/16, const, const-wide, const-string 5. 동기화..

android permission 설정 설명

android.permission.request_ignore_battery_optimizations : 배터리 최적화 모드 해제(슬립모드 해체) -> 해당 옵션 지정 시 구글등록 안될수도있음 permission system_alert_window : 최상단에 뷰화면을 띄우는 권한 permission foreground_service : Android 9 (API level 28) 이상을 타깃으로 하는 앱은 반드시 포함 필요 / 포그라운드 서비스 실행 모드(서비스가 종료되거나, 삭제되어야 앱이 종료됨) permission ACCESS_COARSE_LOCATION permission ACCESS_FINE_LOCATION : 위치정보 권한 android.permission.REQUEST_DELETE_PACKA..

모바일 보안 취약점 점검 PC세팅 시리즈(3) - frida 설치(android)

모바일 취약점 점검 수행을 위해서 PC를 새로 장만하고, 다시 세팅하는 과정을 남겨보려고한다. Frida(android) 설치 방법 1. python 설치 1. frida PC에 설치 - pip install frida - pip install frida-tools - frida --version 2. frida-server 설치 https://github.com/frida/frida/releases - PC에 설치된 frida 버전과 동일한 frida-server 버전 다운로드 수행 - 저는 녹스(가상) 환경에서 테스트할예정이라 32으로 다운받았고 일반 실 기기는 아마도 64 3. 다운받은 frida-server를 기기에 넣어주기 - 다운받은 서버파일 압축 해제 - 편하게 핸들링하기 위에서 이름은 변경..

모바일 보안 취약점 점검 PC세팅 시리즈(2) - python 설치

모바일 취약점 점검 수행을 위해서 PC를 새로 장만하고, 다시 세팅하는 과정을 남겨보려고한다. python 설치 방법 1. python 설치 https://www.python.org/downloads/ Download Python The official home of the Python Programming Language www.python.org 2. 최신버전 python 다운로드 시도 3. 기본 설치 및 "Add python.exe to PATH" 체크 후 Install 수행 - 따로 Path 설정을 해주지 않아도 되서 편하게 할 수 있음 4. 설치 확인 - python 입력 - python --version 입력 후 버전 체크

모바일 보안 취약점 점검 PC세팅 시리즈(1) - JAVA 설치 및 세팅

모바일 취약점 점검 수행을 위해서 PC를 새로 장만하고, 다시 세팅하는 과정을 남겨보려고한다. 첫번째로 JAVA 설치 및 환경설정 방법이다. 1. java jdk 다운로드 https://www.oracle.com/java/technologies/downloads/#jdk19-windows Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts. www.oracle.com - 보통 windows를 사용하니 위 링크를 통해서 최신버전 다운로드 - 다운받아진 설치 파일을 기본 세팅으로 하여 설치 - 이..

U-03 계정 잠금 임계값 설정 시 오류로 인한 로그인 실패 대응방안

안녕하세요. 이번에는 주요정보통신기반시설 취약점 점검 중 설정오류로 인해서 로그인이 불가하도록 처리된 경우 대응 방안에 대해서 말씀드리겠습니다. 주요정보통신기반시설 취약점 점검 가이드 중 서버(Linux) 항목 중 U-03 항목에 대해서 조치 수행 중 잘못 설정을 하면 콘솔 로그인도, 원격 로그인, 직접 로그인도 불가한 상황이 발생합니다. https://itinformation.tistory.com/198 U-03(상) 계정 잠금 임계값 설정 주요정보통신기반시설 관리기관은 -정보통신기반 보호법- 제9조에 따라, 주요정보통신기반시설로 신규 지정된 후 6개월이내, 그리고 매년 취약점 분석/평가를 실시하여야 한다. 취약점 분석/평 itinformation.tistory.com #cat /etc/pam.d/sy..

Content Provider Permission 설정

모바일 Content Provider 취약점에 대비하기 위한 Content provider Permission 설정 1. normal : protectionLevel의 기본 값으로서 단순히 기능을 사용하기 위한 식별 값으로 사용되는 퍼미션 2. dangerous : 사용자 개인 데이터나 시스템 제어 기능을 식별하는 퍼미션 3. signature : 동일한 서명 값으로 컴파일 된 앱끼리 기능을 허용하고자 할 때 사용하는 퍼미션 4. system : 안드로이드 시스템 이미지로 설치되는 앱을 허용 할 때 사용하는 퍼미션

SSL 취약점 (HeartBleed, Poodle 취약점)

heartBleed (CVE-2014-0160) - 개요 : SSL을 사용한 통신 과정에는 클라이언트와 서버의 연결 지속성을 유지하기 위해 HeartBeat를 사용하는데, 이 과정에서 경계값을 제대로 검증하지 않아 서버의 메모리가 그대로 노출되는 취약점 - 이 취약점을 통핸 개인키, 비밀키, 세션정보를 획득이 가능하고 클라이언트와 서버 간의 암호화 통신 내용을 해독할 수 있음 - 또한 heartBleed 취약점은 공격자가 접근한 흔적을 남기지 않기 때문에 피해규모를 확인할 수가 없으며 추적 불가능 - 취약점 포인트 : 사용자가 웹사이트에 접속을 하였을 때 서버에 정보를 보내지 않더라도 연결을 유지하기 위해 사용되는 HeartBeat를 프로토콜을 사용할 때 발생 - 클라이언트는 서버의 작동 여부를 확인하며..