본문 바로가기
728x90
반응형

리버싱105

안드로이드 Dex 디스어셈블러 보호되어 있는 글 입니다. 2016. 8. 18.
코드엔진 SmartApp 01 Challenges : SmartApp 01Author : 보안프로젝트 / LinkKorean : 키값을 찾으시오! English : Find a key http://codeengn.com/challenges/smartapp/01 키값을 찾으시오! 안드로이드 App 문제는 처음 접해보기 때문에 문제 형태를 잘 알지 못한다. 코드게이트니까 키젠미나 크랙미겠거니 생각하고 풀어보았다. 우선 .apk를 디컴파일 하고 .java 코드를 보면 위와 같은 코드를 쉽게 발견할 수 있다. 암호화 된 키값을 복호화해서 그냥 뿌려준다.. 따라서 그냥 이 앱을 실행시켜주기만 하면 되는 문제란 것이다. 제공된 .apk 파일을 살펴보면 META-INF라는 폴더가 존재하지 않는다.안드로이드 앱에 서명(Signature)을 하게 되.. 2016. 8. 18.
apk 파일 리패키징 준비물 : ApkTool : https://ibotpeaches.github.io/Apktool/ 1. ApkTool을 통한 디컴파일 cmd를 열어 아래의 명령어 입력 ApkTool d [target.apk] △ 실행화면 △ 얻은 결과물(폴더) 2. 수정 http://amgn.tistory.com/603 위 링크에 설명된 방법을 통해 사전에 디컴파일 해서 얻은 정보를 통해 smali 코드를 수정한다. 3. 리패키징 아래의 명령어를 통해 리패키징이 가능하다. apktool b [target dir] 여기서 [target dir]은 1번 과정에서 얻은 디렉토리를 뜻한다. △ 실행화면 위 사진처럼 [target dir]\dist에서 리패키징된 .apk 파일을 확인할 수 있다. 4. 서명(signature) 추.. 2016. 8. 16.
apk 파일 디컴파일 준비물 dex2jar : https://github.com/pxb1988/dex2jarJD-GUI : http://jd.benow.ca/JDK : http://www.oracle.com/technetwork/java/javase/downloads/index.html java나 C#의 가장 큰 단점 중 하나가 바로 디컴파일러를 통해 코드가 완벽히 복원된다는 것. 안드로이드 또한 java를 이용했기 때문에 java 디컴파일러를 통해 실행파일에서 코드로 복원하는 것이 가능하다. 1. class.dex 추출 디컴파일하고자 하는 .apk 파일에서 class.dex를 가져온다. .apk 파일은 zip 형식이기 때문에 .apk 확장자를 .zip으로 바꾼 후 압축 프로그램을 통해 class.dex를 가져올 수 있다. .. 2016. 8. 16.
Android Root Detection Techniques in JNI 참고 : https://blog.netspi.com/android-root-detection-techniques/ 참고라기 보다는 거의 번역본. 1. Installed Files & Packages 12345678910111213141516171819#include #include std::string FindFileDir[6] = {"/sbin/su", "/system/su", "/system/sbin/su", "/system/xbin/su", "/data/data/com.noshufou.android.su", "/system/app/Superuser.apk", "/system/bin/su", "/system/bin/.ext/.su", "/system/usr/we-need-root/su-backup",.. 2016. 8. 9.
Anti Debugging using NtSetInformationThread 악성코드 분석하다 나옴. https://msdn.microsoft.com/en-us/library/windows/hardware/ff557675(v=vs.85).aspxhttps://github.com/AdaCore/gsh/blob/master/os/src/ddk/ntddk.h NtSetInformationThread에 두 번째 인자로 들어가는게 아래의 THREADINFOCLASS인데, 여기서 0x11번 째 멤버인 ThreadHideFromDebbger가 인자로 들어가면 디버거가 디버기에서 강제로 분리된다. 두 번째 인자로 값을 0x11이 아닌, 0x0을 주면 우회가 가능하다. 12345678910111213141516171819202122232425262728293031323334353637typede.. 2016. 7. 23.
Anti Debugging using CheckRemoteDebuggerPresent Windows XP 이상부터 사용 가능 1234BOOL WINAPI CheckRemoteDebuggerPresent( _In_ HANDLE hProcess, _Inout_ PBOOL pbDebuggerPresent);Colored by Color Scriptercs ParametershProcess [in]A handle to the process.pbDebuggerPresent [in, out]A pointer to a variable that the function sets to TRUE if the specified process is being debugged, or FALSEotherwise.Return valueIf the function succeeds, the return value is .. 2016. 7. 20.
Anti Debugging using RDTSC 대회 문제 풀다가 안티 디버깅 몇 개 나와서 정리해봄. RDTSC(ReaD Time Stamp Counter) - EDX:EAX에 반환(64bit) The Time Stamp Counter was once an excellent high-resolution, low-overhead way for a program to get CPU timing information https://en.wikipedia.org/wiki/Time_Stamp_Counter 2016. 7. 20.
[SSCTF 2016 Quals] Re2 2016년 2월인가 3월에 대회 끝나고 풀었는데(대회는 2016년 2월), 상당히 재밌는 문제여서 오늘 갑자기 생각나서 저장. 나중에 키젠 루틴이 상당히 복잡했던 기억이 나서 다시 풀어볼 것 같지는 않다. 실행해보면 알겠지만 별찍기로 애니메이션을 만들었다... 아래 URL은 write-uphttps://b01lers.net/challenges/SSCTF%202016/re2/90/ After cracking the code, we can get some valid flags: Flag: t1yuec5dlxi93fjp5934x19g6wbxicxbFlag: pumqllrvawxa9ze6wut67mscnda7dkmpFlag: 8vgh7a14pe6hmdgbtd7e5k2ecmr5alydFlag: neg9h9s8dt.. 2016. 7. 15.
[Secuinside 2016] mbrainfuzz 보호되어 있는 글 입니다. 2016. 7. 14.
ais3_crackme 보호되어 있는 글 입니다. 2016. 7. 13.
[CSCI-4968-MBE] crackme0x03 보호되어 있는 글 입니다. 2016. 7. 13.
728x90
반응형