보안 19

[앱][리버싱] 악성앱 분석 - InsecureBankv2 (5) ; Weak Authorization mechanism

Weak Authorization mechanism https://y0on-it.tistory.com/34 - drozer를 이용하여 전체적으로 공격 범위를 분석했었다. 그중에서 이번에 취약점은 activity에 대한 것이다. [1] exported activity 확인 run app.activity.info -a com.android.insecurebankv2 -> permission이 null인 액티비티는 다른 앱에서도 접근 가능하다. Manifest 파일에서도 확인 가능하다 (exported="true" 설정인 액티비티를 확인할 수 있다) => 마찬가지로 exported가 true로 설정되었으면 다른 액티비티에서 인증 없이 접근 가능하다. [2]인증없이 접근하기 run app.activity.sta..

보안/android 2021.11.12

[앱][리버싱] 악성앱 분석 - InsecureBankv2 (4) ; Intent Sniffing and Injection

Intent Sniffing and Injection intent ? Intent는 메시징 객체로, 다른 앱 구성 요소로부터 작업을 요청하는 데 사용할 수 있다. -> 안드로이드 네 가지 구성요소 (Activity, Service, Broadcast Receiver, Content Provider) 사이에서 작업 수행을 위해서 필요한 정보를 전달하는 역할! #기본적인 사용사례 - 액티비티 시작, 서비스 시작, 브로드캐스트 전달 #인텐트 유형 명시적 인텐트는 인텐트를 충족하는 애플리케이션이 무엇인지 지정한다. 이를 위해 대상 앱의 패키지 이름 또는 완전히 자격을 갖춘 구성 요소 클래스 이름을 제공한다 일반적으로 앱 안에서 구성 요소를 시작할 때 사용함 -> 시작하고자 하는 액티비티 또는 서비스의 클래스 이..

보안/android 2021.11.12

[앱][리버싱] 악성앱 분석 - InsecureBankv2 (3) ; Flawed Broadcast Receivers

Flawed Broadcast Receivers Broadcast Receiver란?? 안드로이드 4대 구성요소 중 하나. (정기적인 사용자 플로우 밖에서 = 디바이스에서) 시스템이(os) 이벤트를 앱에 전달하도록 지원하는 구성 요소. -> 이러한 브로드캐스트 신호를 받기 위해서는 AndroidManifest.xml에 receiver 선언 필요하다. [1] exported 설정 값 확인하기 ▣ https://y0on-it.tistory.com/34 에서 drozer을 이용해서 공격 범위에 대해 추출했을 때 broadcast receivers에는 1개가 존재했었다. ▣ AndroidManifest.xml 파일에서 receiver 선언 영역 살펴보기 -> exported 값이 true로 설정되어 있기 때문에..

보안/android 2021.11.12

[앱][리버싱] 악성앱 분석 - InsecureBankv2 (2)

frida를 이용한 rooting 탐지 우회하기 ( ※ frida 설치 과정 : https://y0on-it.tistory.com/28 ) 1. 환경구축, 구동 루트 권한 필요 디컴파일 도구 (apktool, dex2jar, bytecode-viewer, jd-gui, jadx 등) 테스트 대상 앱 *루트권한 설정하기 >adb root *환경구동 >adb devices >adb shell #./data/local/tmp/frida-server-15.1.3-android-x86 & # ps | grep frida-server frida 서버 구동 >frida-ps -U >frida-ls-devices //해당 명령어로 잘 연결되었는지 확인 +)루팅된 상태로 테스트 앱 열어봐도 탐지가 안된다.. 다른 앱은 ..

보안/android 2021.11.12

[윈도우][리버싱] 10주차 실습 정리 ; 윈도우 리버싱 기초, tools

리버싱 방법 #정적분석 파일의 겉모습을 관찰하여 분석하는 방법 파일을 실행하지 않고 => 파일의 종류(EXE, DLL, DOC, ZIP 등), 크기, 헤더(PE) 정보, Import/Export API, 내부 문자열, 실행 압축 여부, 등록 정보, 디버깅 정보 디지털 인증서 등의 다양한 내용을 확인 (+ 바이트코드(hex)) 디스어셈블러(Disassembler)를 이용하여 내부 코드와 그 구조를 확인하는 것도 정적 분석의 범주 #동적분석 파일을 직접 실행시켜서 행위를 분석 - 한줄한줄 실행시켜보면서 분석 디버깅을 통해 코드 흐름과 메모리 상태 등을 자세히 살펴보는 방법 (gdb, OllyDbg) 파일, 레지스트리, 네트워크 등을 관찰 ; network 패킷 실시간 확인, tcp 덤프도 동적 분석! (실행..

보안/리버싱 2021.11.11

[윈도우][리버싱] 9주차 정리+어셈블리어

(애초에 프로그램이 별로 없다,,있긴 있음! ) 일반적인 리버싱의 목적 -소스코드 없이 남의 프로그램 분석할 때 -악성코드 행위 분석을 위해서 (실행 파일안에 코드가 있을 텐데 그게 어딨을까?!) -포렌식 ; 사후분석, 침해사고 발생 시 실행파일 꺼내서 악성코드 분석 -모의해킹 ; 어디까지 보이지/우회가능한지 목적1이 가장 큼 -> 백신회사... ! (백신 회사에서 제일 많이 하고, 제일 많이 뽑음) 목적2+목적3 -> 국과수, 국정원, 국보연 각 인프라보안팀에서도 하긴 하는데,,, (사내 보안) 리버싱 vs 시스템해킹 ?? 시스템해킹 - 서버 접속해서 실행파일 분석 (여기까지는 같음) -> 목적이 다름 리버싱은 역공학 자체. 프로그램 분석 자체 시스템해킹은 쉘을 따거나 루트권한 획득 필요. 이를 하기 ..

보안/리버싱 2021.11.05