export 2

DLL 시리즈 #7 NONAME을 이용한 CLASS 포인터 반환

NONAME을 이용한 CLASS 포인터 반환 1. NONAME을 이용한 CLASS 포인터 반환 개념 NONAME 기술을 이용해 DLL에서 클래스를 반환하는 방법은 함수 이름 대신 Ordinal을 사용하여 클래스를 생성하고, 그 포인터를 반환하는 방식입니다. 이 방법은 DLL 내에서 객체의 포인터를 외부로 안전하게 전달하며, 보안을 강화할 수 있습니다. 특히, 메모리 관리 측면에서 클래스 객체의 할당과 해제를 모두 DLL에서 처리해야 안전하게 사용할 수 있습니다. 2. DLL 클래스 포인터 반환 구조 DLL 내에서 클래스 객체를 생성하고, 그 포인터를 반환합니다. NONAME 방식으로 함수 이름을 숨기고, 외부에..

개발/윈도우 2024.09.12

DLL 시리즈 #5 DLL EXPORT 취약점(후킹)

DLL EXPORT의 문제점 (후킹에 대한 위험) 1. 후킹(Hooking)이란? 후킹은 운영 체제나 프로그램의 API 호출 흐름을 가로채는 기술로, 특정 함수 호출이나 메시지 처리를 가로채어 조작하거나 다른 기능을 수행하도록 할 수 있습니다. 후킹은 프로그램의 정상적인 흐름을 변경해 악성 코드를 실행하거나 데이터를 탈취하는 등 여러 가지 보안 위협을 일으킬 수 있습니다. API 후킹: 프로그램이 호출하는 API 주소를 변경해 공격자가 원하는 코드가 실행되도록 하는 방법. DLL 후킹: DLL의 함수 호출을 가로채는 방식으로, 프로그램이 DLL 내 특정 함수를 호출할 때 이를 가로채 공격자의 코드를 실행하도록 유도. ..

개발/윈도우 2024.09.12
반응형