2018/03(35)
-
Windows API Hooking _ ReadProcessMemory
메인 함수 시작 주소부터 10바이트 기계어 읽어오기. #include #include #include #include #define SIZE (10)int main(int argc, char* argv[]){DWORD pid = GetCurrentProcessId(); // getting process id(pid) // hardcoding versionLPCVOID lpBaseAddress = (LPCVOID)0x401100;LPCVOID *lpBuffer = &lpBaseAddress; // pointer (lpBaseAddress)LPVOID buf[SIZE] = { 0 };INT i = 0;// PROCESS_ALL_ACCESS = PROCESS_VM_WRITE + PROCESS_VM_READHA..
2018.03.11 -
[DAY 03] Do you know Templates?
보호되어 있는 글입니다.
2018.03.10 -
ptrace Anti_Debugging
linux나 unix 등에서는 ptrace 시스템 콜을 사용해 프로그램을 분석, 디버깅, 리버스 엔지니어링, 수정 작업을 할 수 있음. ptrace는 프로세스에 접근해 코드, 데이터, 스택, 힙, 레지스터 등에 접근 가능. 사용자 레벨에서 프로세스 주소 공간에 접근한다. 즉, 누군가가 process에 attach하여 소유하고, 수정, 분석, 디버깅 등을 할 수 있다.process image 분석 및 code injection (PTRACE_POKETEXT 사용)도 가능하다.gdb, strace, ltrace 등은 모두 내부적으로 ptrace 사용 ptrace는 안티 디버깅에 사용될 수 있다. PTRACE_TRACEME 사용. 즉 자기자신 프로세스를 추적하도록 하는 것. 동시에 특정 프로세스를 trace하..
2018.03.10 -
[DAY 02] Do you know Scope & Namespace
보호되어 있는 글입니다.
2018.03.09 -
[DAY 01] What is OOP?
보호되어 있는 글입니다.
2018.03.09 -
[INTRO]
보다 수준 높은 뉴비가 되기 위해 cpp 공부를 시작하기로 마음 먹었다. 수시로 공부를 하고 정리를 해두려고 한다. cpp를 다룰줄 알아야 분석하는데 용이하다고 판단되었다. 진정으로 공부를 해야겠다고 마음을 먹었기 때문에 차근차근 지식을 쌓아가보자. 어느정도 정리 되었을 때 내용을 공개하려고한다.
2018.03.09