안녕하세요. 오늘은 Frida를 무조건 익혀야 하는 이유에 대해서 작성해보려고 합니다.
Frida는 윈도우, 맥, 리눅스, IOS, ANDROID 기반 바이너리를 분석하기 위한 라이브러리 입니다.
예를 들어 윈도우 실행파일 분석에 많이 쓰이는 올리디버거, IDA 등이 있는데요.
그런데도 왜 Frida가 중요한 것일까요?
바이너리를 분석하는 과정에는 동적 분석과 정적 분석이 있습니다.
두가지 모두 장단점을 가지고 있지만 개인적인 의견으로는 정적분석은 하지 않아도 되지만
동적 분석 없이는 분석이 매우 힘들어집니다.
그러한 이유로 Frida가 중요한 이유는 IOS ANDROID 같은 환경에서는 로컬 디버깅이 제한되지만
Frida를 사용하면 로컬 디버깅하는 것 처럼 동적 분석이 가능하게 됩니다.
Frida를 쓰지않고 안드로이드에서 동적 분석을 하면 되지 않느냐? 라고 궁금하실 수 있습니다.
거의 대부분의 배포되는 앱들은 디버깅이 불가능하도록 설정되어 배포됩니다.
그러므로 동적 분석을 하기 위해서는 APK 디컴파일, 설정 값 변경, APK 컴파일, 앱 서명, 설치 라는 과정이 필요하게 됩니다.
이러한 많은 과정을 하지 않고 동적 분석을 할 수 있는 것은 굉장히 큰 이점이죠.
그러나 Frida를 접해보지 않은 분들은 매우 낯설 수 있다는 것은 단점입니다.
저는 최근 IOS와 안드로이드 버그 헌팅을 준비하면서 여러 공격 경로를 알아보고 있는데요.
IOS는 너무 공격할 수 있는 경로가 부족한 반면에 안드로이드는 그동안 분석하던 윈도우와 비슷해서
안드로이드 앱 분석을 하고 있는데요. 이제 동적 분석을 시작하려는 찰나에 Frida를 동적 분석에 사용할 방안을 찾고 글을 쓰게 됬네요
만약 버그 헌팅에 관심이 있거나, 앱 분석을 하게 된다면 Frida에 익숙해지는 것을 추천드립니다!
'해킹 > IOS 앱 취약점 진단' 카테고리의 다른 글
soFrida를 이용한 IOS 앱 동적 분석 - 파일분석 (3) | 2020.08.01 |
---|---|
LLDB를 이용하여 IOS(아이폰) 원격 디버깅 세팅하기 (0) | 2020.07.11 |
안드로이드 앱 디컴파일 그리고 빌드하기 (0) | 2020.07.04 |
처음해보는 IOS 앱 취약점 진단 후기 (0) | 2020.05.22 |
안드로이드 앱 취약점 진단을 위한 녹스 설치 및 쉘 접속 방법 (0) | 2020.05.18 |