[Reversing] Process Hollowing 기법 프로레스 할로잉 기법은 자식 프로세스를 이용하여 프로세스 자체를 인젝션하는 것으로 간략하게 말하자면 절차는 자식 프로레스를 서스펜드 상태로 만든 뒤 기존 악성 프로세스의 정보를 얻어 자식 프로세스의 각 위치에 매핑을 한다. 이후 메모리를 할당과 악성 데이터를 삽입한 후 서스펜드 상태를 풀어주게 되면 악성 행위를 하게된다.. source code> https://github.com/theevilbit/injection/tree/master/ProcessHollowing 프로세스 생성(SUSPENDED) BOOL CreateProcessA( LPCSTR lpApplicationName, LPSTR lpCommandLine, LPSECURITY_ATT..
[Reversing] Packer, Crypter, and Protector 참조> https://blog.malwarebytes.com/threat-analysis/2015/12/malware-crypters-the-deceptive-first-layer/ Packing패킹은 포장한다는 의미로 두가지 종류로 분류할 수 있다.첫번째로는 파일 사이즈를 줄이는 목적으로 컴프레서가 있으며 대표적으로 UPX 패커가 있다 실행 압축이라고도 불린다. 두번째는 파일을 보호하는데 목적으로 프로텍터가 있다. 사이즈는 늘어나지만 안티리버싱이나 난독화를 통해 분석이 어렵도록 한다. Compressor 일반적으로 'runtime packers" 약자이다. 해당 기술은 실행 가능한 압축으로 이런 종류의 압축은 파일을 더 작게 ..
[Reversing] Inline Code Patch [Reversing] Inline Code Patch ② 원하는 코드를 직접 수정하기 어려운 경우 코드 케이브라고 하는 패치 코드를 삽입한 후 실행해 프로그램을 패치시키는 기법을 인라인 코드(Inline Code Patch)라고 합니다.또 하나의 개념은 코드 게이브(Code Cave) 입니다. 흐름을 변경하여 삽입된 코드 영역을 거쳐서 수행되도록 하는 기법을 말합니다. 위 파일을 통해 실습을 할 것입니다.[프로그램 실행시 팝업창] - 살펴보니, 텍스트 박스에 unpack me와 같은 문자가 보입니다.- x64 dbg를 통해 살펴보겠습니다. 1. x64 dbg & 흐름분석- EntryPoint로 이동을 하겠습니다.401000 PUSHAD- PUSHAD를..
- Total
- Today