[주요기반] (Windows) [ 1.5 보안 관리 ] W-72 1.5.11. Dos공격 방어 레지스트리 설정


대상

NT, 2000, 2003

위험도

Code

W-72

취약점 개요

Dos(서비스 거부 공격):
네트워크 사용자가 컴퓨터나 컴퓨터의 특정 서비스를 사용할 수 없도록 만들기 위한 네트워크 공격.

TCP/IP 스택(Stack)을 강화하는 레지스트리 값 변경을 통하여
Dos 공격을 방어할 수 있음.

만약 Dos 방어 레지스트리를 설정하지 않은 경우
Dos 공격에 의한 시스템 다운으로 서비스 제공이 중단될 수 있음.

보안대책

판단기준

양호: DOS 방어 레지스트리 값이 아래와 같이 설정되어 있는 경우

취약: DOS 방어 레지스트리 값이 아래와 같이 설정되어 있지 않은 경우

 SynAttackProtect = REG_DWORD 0(False) -> 1 이상

EnableDeadGWDetect = REG_DWORD 1(True) -> 0

KeepAliveTime = REG_DWORD 7,200,000(2시간) -> 300,000(5)

NoNameReleaseOnDemand = REG_DWORD 0(False) -> 1


조치방법

위에 명시된 레지스트리 값을 추가 또는, 변경하여 적용함


보안설정방법

레지스트리 값 이름


설명

SynAttackProtect

SYN-ACK 패킷의 기다리는 시간을 줄여 SYN 공격에 대한 방어 기능 기능을 설정할 수 있음

0 => SynAttack 프로텍션을 사용하지 않음

1 => 재전송 시도를 줄이고, route 캐쉬 엔트리를 지연시킴

2 => 1의 기능 외에도 Winsock에 대한 지시(indication)를 지연시킴

EnableDeadGWDetect

EnableDeadGWDetect 0으로 설정하지 않으면 서버가 강제로 원하지 않는 Gateway로 전환될 수 있음

0 => (False) 작동하지 않는 Gateway을 검색할 수 없음

1 => (True) 작동하지 않는 Gateway을 검색할 수 있음

KeepAliveTime

idle connection을 확인하기 위하여 얼마나 자주 Keep-alive 패킷을 보낼지를 결정하는 값임

• 기본 값 => 7,200,000(2시간)

• 권장 값 => 300,000(5)

NoNameReleaseOnDemand

컴퓨터가 이름 해제 요청을 받을 때 NetBIOS 이름 해제 여부를 결정하는 설정으로 이 값은 관리자가 악의적인 이름 해제

공격으로부터 컴퓨터를 보호할 수 있음.

0 => (False) 해당 기능 사용 안 함

1 => (True) 해당 기능 사용

 

Windows NT, 2000, 2003

1. 시작> 실행> REGEDIT

2. HKLM\System\CurrentControlSet\Services\Tcpip\Parameters\ 검색

3. 다음의 DOS 방어 레지스트리 값 추가 또는, 변경

레지스트리 값 이름

값 종류

유효 범위

권장 설정 값

SynAttackProtect

REG_DWORD

0, 1, 2

1 또는, 2

EnableDeadGWDetect

REG_DWORD

0, 1 (False, True)

0 (False)

KeepAliveTime

REG_DWORD

1 – 0xFFFFFFFF

300,000(5)으로 변경

NoNameReleaseOnDemand

REG_DWORD

0, 1 (False, True)

1 (True)

 



이러한 레지스트리 설정은 Windows 네트워크 및 TCP/IP 스택의 동작을 제어하는 데 사용됩니다. 각각의 설정의 역할을 설명하겠습니다:

SynAttackProtect:

레지스트리 경로: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
SynAttackProtect는 SYN 공격(SYN flood attack)으로부터 시스템을 보호하기 위한 설정입니다.
SYN 공격은 네트워크 보안 공격 중 하나로, 시스템에 대한 TCP 연결 요청(SYN 패킷)을 과도하게 생성하여 시스템을 과부하시키는 시도입니다. SynAttackProtect 설정을 활성화하면 이러한 공격으로부터 시스템을 보호하고 대응할 수 있습니다.
EnableDeadGWDetect:

레지스트리 경로: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
EnableDeadGWDetect는 TCP/IP 스택에서 기본 게이트웨이(gateway)에 대한 검사를 활성화 또는 비활성화하는 설정입니다.
설정을 활성화하면 TCP/IP 스택은 주기적으로 기본 게이트웨이의 가용성을 확인하고 문제가 발생한 경우 다른 게이트웨이로 전환합니다.
KeepAliveTime:

레지스트리 경로: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
KeepAliveTime은 TCP 연결이 유지되는 시간 간격을 제어하는 설정입니다.
설정된 시간이 경과하면 유휴 상태인 TCP 연결이 검사되고 필요한 경우 연결이 종료됩니다. 이를 통해 연결이 비정상적으로 종료되는 경우를 감지하고 조치를 취할 수 있습니다.
NoNameReleaseOnDemand:

레지스트리 경로: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
NoNameReleaseOnDemand는 Windows에서 사용하지 않는 포트를 릴리스하는 동작을 제어하는 설정입니다.
설정을 활성화하면 사용되지 않는 포트가 즉시 릴리스되지 않고 일정 시간 동안 보류됩니다. 이것은 일부 특정 상황에서 포트가 빠르게 재사용되는 것을 방지합니다.
이러한 설정은 주로 네트워크 및 TCP/IP 동작을 조정하고 네트워크 성능과 보안을 향상시키는 데 사용됩니다. 설정을 변경하기 전에 주의하여야 하며, 변경 사항이 시스템 동작에 영향을 미칠 수 있으므로 조심스럽게 처리해야 합니다.



Comments