[MFC] WOL(wake on lan) 원격으로 컴퓨터 전원 켜기 구현해보기

WOL(wake on lan)은 컴퓨터가 특정 네트워크 데이터 패킷을 받으면 부팅이 되는 기능입니다.그 특정 데이터 패킷을 매직 패킷이라고 하고, 컴퓨터는 윈도우를 종료하더라도 대기 전력을 사용하여 매직 패킷을 감지합니다.매직 패킷에는 맥 주소가 일정한 규칙으로 입력되어 있는데 컴퓨터에서는 자신의 맥 주소를 비교하여, 같으면 부팅합니다.매직 패킷의 첫 6 Bytes는 0xFF FF FF FF FF FF로 입력 되어 있고, 부팅을 하려는 … Read more

[WinAPI] DLL Injection – 2. 코드 예제(VirtualAllocEx)

DLL 인젝션을 하기 전에 아래 사항을 확인해 주세요 주절 주절 썼는데, 제가 이때까지 실무에서 파악한 내용입니다. 부정확하거나, 놓친 내용이 있을 수 있습니다. 자, DLL 인젝션 코드를 알아보겠습니다.우선 인젝션 작업을 할 MFCApplication1는 관리자 권한이 있어야합니다.아래와 같이 UAC 실행수준을 requireAdministrator로 맞춰주세요  MFCApplication1의 대화상자를 아래와 같이 만들어주세요. 인젝션 할 PID를 입력하는 부분입니다. Injection 버튼을 더블 클릭 하셔서 아래와 같이 입력합니다. 그리고 DLLInject … Read more

[WinAPI] DLL Injection – 1. 개념

이번 글에서는 DLL 인젝션의 간단한 개념에 대해 알아보겠습니다. DLL 인젝션은 기본적으로 다른 프로세스의 주소 공간 내에서 DLL을 강제로 로드시키는 기술로써, 의도치 않은 코드를 실행시키는 기술입니다.보통 DLL 인젝션은 다른 프로세스가 어떤 프로그램을 의도하지않거나 예상하지 않은 기능을 수행하게 만듭니다.일반적인 프로그램은, 아래와 같이 여러 DLL 들을 로드합니다. 위 그림에서 MFCApplication1.exe는 시스템 DLL(kernel32.dll, user32.dll, gdi32.dll 등등)뿐만 아니라 사용자가 만든 DLL(MATHFUNCTION.DLL)도 로하고 있습니다.어찌 … Read more