반응형

Information* 107

IDA JNI Function 적용하기

IDA JNI Function 적용하기JNI은 Java Native Interface로 JAVA 환경이 아닌 다른 프로그래밍 언어 환경의 코드를 사용하기 위해 사용된다.이에 대한 설명은 뭐 다른 좋은 자료들을 찾아보길 바란다. Wikipedia의 Sample 코드를 보면 JNI Native Function은 다음과 같이 구성된다. 함수의 타입은 매핑 타입으로 몇 가지 정의되며, 이름은 클래스, 메소드 네임으로 구성된다.extern "C" JNIEXPORT void JNICALL Java_ClassName_MethodName (JNIEnv *env, jobject obj, jstring javaString) { const char *nativeString = env->GetStringUTFChars(jav..

[Visual Studio 2017] CL Casting Error

[Visual Studio 2017] CL Casting ErrorC:\Users\pch21\source\repos\smallestPE>cl /nologo /c -D_UNICODE /O1 main.c main.c main.c(5): warning C4133: '함수': 'unsigned short [15]'과(와) 'LPCSTR' 사이의 형식이 호환되지 않습니다. main.c(5): warning C4133: '함수': 'unsigned short [8]'과(와) 'LPCSTR' 사이의 형식이 호환되지 않습니다.-D_UNICODE에서 오류가 발생한다. -DUNICODE 옵션을 주면 된다.-D_UNICODE는 tchar.h와 -DUNICODE는 SDK header에 대해서 유니코드를 enable 시키는 옵..

구조체 와 관련된 무언가

구조체 와 관련된 무언가1. 왜 안됨?typedef struct _list { char data; int a; struct _list link; } list;위와 같이 선언한다면, 구조체의 크기가 무한대로 표현될 거시다.자기참조 구조체는 다음과 같이 포인터를 이용해서 구현할 수 있다.typedef struct _list { char data; int a; struct _list *link; } list;2. typedef 구조체는 태그가 없어도 사용가능함typedef struct { char data; int a; struct _list link; } list;3. 왜 안됨?typedef struct { char data; int a; list* link; } list;list 별칭이 아직 선언되기 이전..

c# 프로세스 소켓 오류

c# 프로세스 소켓 어쩌구 아니 진짜 거의 3주동안 버그 해결을 못해서 거의 반쯤 포기하고 다르게 구현하는 방법을 찾아보고 있었는데 진짜 설마 이거 때문은 아니겠지하는 심정으로 시도했던 방법으로 해결이 됐다. private void AutoHook(String PackageName) { // Generate hook.js GenerateJSCode(); ​ // Source 코드를 베이스로 최종 후킹 코드 생성 GenerateHookCode(); ​ // 후킹 코드 실행 ProcessStartInfo proInfo = new ProcessStartInfo(); proInfo.FileName = @"C:\Users\pch21\AppData\Local\Programs\Python\Python37\python..

Frida unable to access Zygote64 error

Frida unable to access Zygote64 error unable to access zygote64 while preparing for app launch; try disabling Magisk Hide in case it is active 프리다는 spawn 과정을 수행하면 Zygote를 후킹해서 코드 injection 등을 수행함다. Zygote64를 후킹하는 과정에서 위와 같은 원인모를 에러가 발생한 것으로 보이는데, 프리다 버전을 맞춰주면 될 줄 알았것만 슬프게도 아니였다. 그래서 그냥 attach 하는 걸로 후킹을 걸었음.

fatal error: 'openssl/sha.h' file not found

fatal error: 'openssl/sha.h' file not found 이 퍼킹한 오류때문에 한참 걸렸다. 해결방법 openssl github https://github.com/openssl/openssl 에 가서 프로젝트를 클론 한뒤 make한다. $ cd ~ $ git clone https://github.com/openssl/openssl.git $ cd openssl $ ./config $ make 좀 많이 오래 걸리는데 해당 작업이 진행 된 뒤, include 디렉토리에 openssl 심볼링 링크를 만들어주면 된다. $ cd /usr/local/include/ $ ln -s ~/openssl/include/openssl/ . 추가 처음에 make 안하고 클론한 뒤 심볼링 링..

VSCode Remote 작업 (Remote - SSH)

VSCode Remote 작업 (Remote - SSH) Virtual box 켜놓고 ssh로 연결해서 vim으로 작업하고 있었는데 문득 왜 이러고 있나 싶었다. 어떻게하면 자주 사용하던 vscode로도 ssh 접속을 통해 작업을 할 수 있을 것 같아서 조금 찾아보았는데, 왠걸! 당연히 Extension이 존재했다.. ㅎㅅㅎ Remote - SSH 라는 Extension으로 ms에서 공식적으로 지원하더라 설치하고 대충 왼쪽에 생성된 Remote Explorer로 접속하면 된다. config 파일은 대충 아래처럼 만들면 되는데 Port 설정을 어떻게 하는지 몰라서 잠깐 해맸다. 아래처럼 config 파일 내에 적어주면 됨. 추가 config 파일은 하나만 사용하기 때문에, 여러 개의 서버를 추가할 때는 만..

Frida Interceptor.replace

Frida Interceptor.replace() 사용법다음과 같이 사용하면된다. NativeCallback()의 인자는 다음과 같이 함수, 리턴 타입, 함수 인자 리스트식으로 사용될 수 있다.Java.perform(function(){ send('Hooking Start ...'); check(); ​ var il2cpp = Module.getBaseAddress('libil2cpp.so'); send('[*] libil2cpp.so @ ' + il2cpp.toString()); ​ var offset0 = 0x2E0CFC; var target0 = il2cpp.add(offset0); var save_this0; send('function @ ' + target0.toString()); Interce..

docker-compose up error

docker-compose up error ch4rli3kop@Mandu:~/composetest$ sudo docker-compose up ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running? ​ If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.요런 에러가 떴을 때, docker 서비스를 시작해주면 된다.ch4rli3kop@Mandu:~/composetest$ sudo service docker start ch4rli3kop@Mandu:~/composetest$ sudo docker-co..

반응형