-
Android App에서 Memory Corruption Exploit이 불가능한 이유Mobile/Android 2019. 9. 21. 21:06
[ 안드로이드 시스템 아키텍처 ] 위 그림은 Android System을 나타낸다.일반적으로 사용하는 App들은 DalvikVM 내부에서 SmaliCode가 해석되어 실행된다. [1] DalvikVM은 Register-based System이라는 특징을 가지고 있다.약 64,000개의 레지스터가 있으며, 이 중 16개 또는 256개만 사용하는게 일반적이다.따라서, DalvikVM에는 Stack이라는 개념이 없고 이 때문에 Stack-based Buffer Overflow가 발생하지 않는다.다르게 해석하면, DalvikVM이 아닌 Native Code(JNI)에서는 Stack-based Buffer Overflow가 발생할 수 있다. [2] Java에는 Array Layout Check기능이 기본으로 적용..
-
Android Hacker's Handbook_2장 [정리 및 번역]Mobile/Android 2019. 9. 21. 20:34
해당 번역글은 개인 공부를 위해 번역한 글로써, 다소 틀린 표현들이 있을 수 있으니 참고할 때 유의해주시길 바랍니다. 원문은 https://www.pdfdrive.com/android-hackers-handbookpdf-e39599871.html 여기에서 받으실 수 있습니다. [2장. 안드로이드 보안 설계 및 아키텍처] 안드로이드는 보안 검사 및 처리를 몇 가지 메커니즘으로 구성하고 있다. 다른 운영 체제와 마찬가지로 이러한 메커니즘(App/User), 객체(App/File,Device) 및 수행할 작업(읽기,쓰기,삭제 등)에 대한 정보를 교환할 수 있다. 대부분의 경우에서는 이러한 과정에서 문제가 발생하지 않지만, 어떠한 균열을 통해 이러한 정보들이 빠져나가 공격자에게 좋은 기회를 제공하기도 한다. 2..
-
Windows 초간단 PHP 웹서버 열기Web 2019. 8. 20. 01:31
취약점 연구를 할 때, 간단한 웹서버가 필요한 순간이 있다.공격자 웹페이지로 리다이렉션 하는 공격 시나리오를 테스트해본다던가,간단한 웹 스크립트를 테스트해본다던가 등등.. 이런 간단한 테스트를 위해 웹서버를 하나하나 구축하기에는 좀 많이 귀찮다!그래서 이런 순간에 간단하게 웹서버를 구동할 수 있는 방법을 소개해주고자 한다.[ STEP 1 ]https://www.php.net/downloads.php 우선 위 링크에서 최신 릴리즈 버전의 PHP를 다운받아준다. 맨 아래에 [Windows downloads]링크를 통해서 윈도우버전(.exe)을 다운받을 수 있다.[ STEP 2 ] 다운로드가 완료되면 압축을 풀어주고, 해당 경로로 이동해 준다.그리고 해당 경로에 'index.php'로 간단하게 웹 페이지를 만..
-
Android URL SchemeMobile/Android 2019. 8. 11. 03:50
URL Scheme이란, URL을 통해서 특정 프로그램을 실행하고자 할 때 사용되는 기술이다. 평소에도 자주 볼 수 있는 'http://', 'https://', 'ftp://'과 같은 형식도 URL Scheme에 해당한다. Android에서도 이러한 URL Sheme을 사용하는데, AndroidManifest.xml에 App마다의 Custom URL Scheme을 정의하여 사용한다. [ AndroidManifest.xml ]Custom URL Scheme 선언형식은 위와 같다.intent-filter태그에 실행할 Action을 설정하고 그에 대한 URL Scheme을 정의한다.모바일에서 ridi://download 또는 ridi://showCloud과 같은 URL로 접근하게 되면 정의한 Action이 ..
-
Nexus 6P Rooting [TWRP/Magisk]Mobile/Android 2019. 8. 8. 01:45
분석용 폰으로 Nexus 6P를 구입했다.Nexus폰은 부트로더 잠금을 해제해서 커스텀 롬을 자유롭게 올릴 수 있는 특징이 있다.이 특징 때문에 '넷헌터'와 같은 커스텀 롬을 로드해서 사용하는 사람들도 있다. 해당 글에서는 단순히 루트권한을 얻는 방법에 대해서 기술하도록 하겠다.'XDA'라는 유명한 해외 포럼이 있는데, 여기에서 개발한 Magisk라는 어플이 Rooting Management 역할을 한다.XDA Developers - https://forum.xda-developers.com/ 루팅을 위한 준비물은 아래와 같다.1. TWRP.img 파일2. Magisk Zip 파일 TWRP.img파일은 링크에 들어가서 가장 최신버전으로 받아주면 된다.Magisk.zip파일은 링크에 들어가면 아래와 같은 ..
-
Apktools Gradle로 빌드하기 (.feat Facebook Decompile)Mobile/Android 2019. 7. 30. 13:01
Facebook App을 apktools로 디컴파일 하려고 하면 위와 같은 에러가 발생하면서 디컴파일 되지 않는다.Exception 첫번째 줄을 보면, 'style2'가 없어서 제대로 진행이 안되는 듯하다. [ apktools Facebook Fix ]그래서 apktools 제작팀에서도 Facebook App 디컴파일 에러를 수정한 패치버전을 깃허브에 올려놓았다. [ apktools Build ] https://github.com/thejunkjon/Apktool우선 위 링크에서 프로젝트를 다운 받고, 압축을 해제한다. 압축을 해제하면 [Apktool-master]폴더가 생성되고, 하위폴더에 [brut.apktool]가 존재한다.[brut.apktool] - [apktool-cli]폴더로 이동한 다음 해..
-
[x64dbg] Themida Debugger 탐지 우회#2System/Reversing 2019. 7. 11. 13:13
이번에는 x64dbg에서 Themida Debugger탐지를 우회하는 방법을 정리해보겠다.우선 x64dbg는 이전 Ollydbg의 확장버전 개념의 디버거이고, 한글지원과 다양한 플러그인들을 사용할 수 있다. x64dbg_OfficialSite: https://x64dbg.comx64dbg_Blog: https://x64dbg.com/blog/x64dbg_Github: https://github.com/x64dbg/x64dbg/wiki[ Themida Detect ]우선 Themida로 패킹되어 있는 .exe파일을 디버거로 로드하여 실행하면위와 같은 Themida경고창이 뜨면서 프로세스가 종료되는 것을 확인할 수 있다. 이전 글에서도 언급했듯이, 디버거를 Kernel영역에 로드하는 방법도 있겠지만이번에 소..
-
[64bit] FSB Exploit GeneratorSystem/CTF 2019. 7. 10. 19:44
한동안 64Bit FSB를 못 풀었었는데 Jsec님이 정리해주신 글을 보고 64Bit FSB Exploit Generator 툴을 만들어 봤다. 32Bit같은 경우는 PwnTool 모듈에 있는데왜인지는 모르겠지만 64Bit는 따로 없는 것 같았다.( context.arch를 amd64로 설정하거나, 옵션을 건드리면 되는 것 같긴한데 익스가 안되더라.. 쓰기도 어렵고.. ) 그래서 다음에 64Bit FSB문제를 만나면 써먹으려고 간단한 Generator를 만들었다.https://github.com/Py0zz1/x64_FSBSolver[ Download ]git clone https://github.com/Py0zz1/x64_FSBSolver.gitcd ./x64_FSBSolvercp ./x64fsb [Yo..