본문 바로가기
728x90
반응형

리버싱/리버싱 걸음마8

정보보안 SUA - [정보보안공부] 7주차 과제 - DLL Injection 수행 임의의 타겟 프로세스에 원하는 모듈을 주입하시고 실제로 모듈이 잘 로딩되었는지 확인하는게 목적입니다. 모듈 로딩 여부는 프로세스 해커를 사용하거나 직접 만들었던 프로세스/모듈 정보를 열거하는 프로그램을 사용하시면 됩니다. dll injection은 다른 프로세스의 메모리에 데이터를 쓰거나 읽기 위한 목적으로 수행됩니다. 게임 핵이나 악성코드는 주로 메모리로부터 주요 정보를 빼오거나 실행 흐름, 데이터 등을 변조하기 위해 dll injection을 수행하며, 백신 또한 실시간 탐지 등을 목적으로 수행하는 경우가 많습니다. [필수1] CreateRemoteThread 함수를 사용하여 타겟 프로그램에 임의의 DLL을 인젝션합니다. [선택1] 6주차 과제의 타겟 프로세스에 dll을 Injection하여 메모리를.. 2021. 3. 17.
정보보안 SUA - [정보보안공부] 6주차 과제 - 런타임 API Hooking 수행 타겟 프로그램의 소스코드와 바이너리가 주어집니다. 실행 중인 타겟 프로세스의 API를 후킹하는 것이 목적이며, 타겟 프로세스의 메모리를 변조하기 위해 5주차에 학습한 방법을 사용합니다. - [필수 1] 디버거/디스어셈블러를 사용하여 타겟 프로그램을 분석합니다. (x64dbg 추천) - [필수 2] 실행 중인 타겟 프로세스의 메모리를 변조하는 프로그램을 작성하여 숨겨진 메시지 박스를 표시합니다. (콘솔 프로그램도 무관. 과제 5 참고) - [선택 1] MessageBoxW 함수를 후킹하여 해당 함수가 호출될 때마다 로그를 출력합니다. (Link 1, 2) - [선택 2] MessageBoxW 함수를 후킹하여 함수 호출에 사용된 인자를 변경합니다. (Link 3) - [선택 3] 클래스의 멤버 함수를 후킹합.. 2021. 3. 11.
정보보안 SUA - [정보보안공부] 5주차 과제 - Hooking의 기초 - [필수 1] Hooking의 정의, 개념 등을 이해합니다. (Link 1) - [필수 2] 모든 프로세스를 열거합니다. (콘솔 프로그램도 무관. Link 2, 3) - [필수 3] 지정한 프로세스의 메모리에서 특정 주소의 데이터를 읽거나 원하는 데이터를 덮어씁니다. (Link 4, 5, 6) - [선택 1] 직접 작성한 프로그램의 실행 흐름을 런타임 API Hooking을 이용하여 바꿔봅니다. - [선택 2] Hooking 여부를 탐지할 수 있는 방법들을 생각하고 직접 구현해봅니다. Link 1 - en.wikipedia.org/wiki/Hooking Link 2 - 모든 프로세스 ID 열거 (PSAPI 사용): docs.microsoft.com/en-us/windows/win32/psapi/enum.. 2021. 3. 3.
정보보안 SUA - [정보보안공부] 4주차 과제 - Windows 데스크톱 앱 개발 4주차 과제는 Windows 데스크톱 앱 개발로 5주차 과제에 선행하여 필요합니다. - [필수 1] 직접 프로젝트를 생성하거나 샘플을 다운받아서 Windows 데스크톱 앱을 만듭니다. (Link 1, 2) - [필수 2] 소스 코드를 설명합니다. 주석을 달아도 되고 소스코드와 별도로 각 요소들을 설명하는 글을 작성해도 좋습니다. 함수 정보는 Microsoft Docs에서 검색해주세요. - [선택 1] Windows의 창에 대해 배우고 이를 응용하여 그림을 그리거나 창을 닫기 전 알림을 띄우는 등의 코드를 작성해봅니다. - [선택 2] 작성한 Windows 데스크톱 앱을 x86-32 디버거(Visual Studio 내장 디버거, x64dbg 등)를 사용하여 소스코드와 비교하며 관찰합니다. - [선택 3] .. 2021. 2. 26.
728x90
반응형