[Windows] 윈도우즈 취약점 대응: DEP, NBT, DDE
Windows 취약점 대응과 관련하여 다양한 주제가 있지만 정보보안기사 필기시험 및 실기시험 자주 출제되는 3가지 기능(DEP, NBT, DDE)에 대해 알아보겠습니다.
1. 데이터 실행 방지(Data Execution Prevention, DEP) 기능 사용
- 데이터 실행 방지 기능을 사용하면 메모리의 데이터 영역에 있는 악의적인 코드의 실행을 막기 때문에 Heap spray attack과 같은 공격을 방지할 수 있습니다.
- Heap spray attack은 주로 악의적인 코드가 실행되는 데 사용되는 공격 기법 중 하나로, 공격자는 메모리의 Heap 영역에 대량의 악의적인 코드를 살포하여 실행 가능한 코드를 덮어쓰는 방식으로 공격을 시도합니다. 이렇게 하면 프로그램이 실행될 때 악의적인 코드가 실행되어 시스템을 침입하거나 제어할 수 있습니다.
- 설정 방법1: 제어판 > 시스템 > 고급 시스템 설정 > 고급 > 성능 설정 > 데이터 실행 방지(DEP) 탭”로 이동한 후 “데이터 실행 방지(DEP)를 필수 Windows 프로그램 및 서비스에만 사용”을 체크합니다.
- 설정 방법1: “Widnows 보안 > 앱 및 브라우저 컨트롤 > Exploit Protection 설정 > 시스템 설정”으로 이동한 후 “데이터 실행 방지(DEP)”에서 “기본값 사용(켜기)”를 선택합니다.
2. NetBIOS와 TCP/IP 바인딩(NetBIOS over TCP/IP, NBT) 비활성화
- NetBIOS와 TCP/IP 바인딩을 제거하면 TCP/IP를 거치게 되는 파일 공유 서비스를 제공하지 못하도록 하고, 인터넷에서의 공유자원에 대한 접근 시도를 방지할 수 있습니다.
- NetBIOS 트래픽은 평문으로 전송되므로 중간자 공격이 가능하며 공격자는 NULL 세션을 사용해서 NetBIOS를 통해 공유되는 리소스에 원격으로 접근할 수 있습니다.
- 설정 방법: “네트워크 어댑터 설정 변경”을 선택하고, 해당 어댑터의 속성에서 “Internet Protocol Version 4 (TCP/IPv4)”의 속성을 열고 “고급” 탭에서 “WINS” 탭으로 이동합니다. 여기에서 “NetBIOS over TCP/IP(NBT) 사용 안 함”을 선택합니다.
3. DDE(Dynamic Data Exchange) 기능 비활성화
- “문서를 열 때 자동 연결 업데이트” 기능을 해제하면 DDE를 악용하여 악성 매크로가 실행되어 시스템에 악의적인 코드가 삽입되는 것을 방지할 수 있습니다.
- DDE는 윈도우즈에서 애플리케이션 간에 데이터를 전송하기 위한 프로토콜로 DDE를 통해 문서나 애플리케이션의 매크로가 실행될 수 있습니다.
- 설정 방법: MS워드의 경우 “파일 > 옵션 > 고급”으로 이동한 후 “문서를 열 때 자동 연결 업데이트”를 해제합니다.(uncheck)