본문 바로가기
카테고리 없음

레지스트리 값 변경을 통한 Windows 보안

by 호야호잇 2018. 7. 18.
  • 1. 공유목적 관리폴더 ㅁ 기본 설명 Windows를 설치하게 되면 기본적으로 다음과 같은 공유폴더가 생성됩니다. 이는 원격지에서도 공유폴더를 이용한 자원관리의 편리성으로 제공되지만 일부 웜/바이러스는 이러한 공유폴더를 통해 내부 전파됨으로 관리자는 필요할 때만 공유 폴더를 설정하고 기본적으로는 제거해야 합니다.




ㅁ 점검 방법 도스창에서 “net share” 명령어를 통해 모든 공유폴더를 확인할 수 있습니다.
ㅁ 문제 해결 레지스트리 변경 (regedit 실행 후) ① HKLM\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters ② 아래와 같은 DWORD 값 생성 Name : AutoShareServer (Professional의 경우 : AutoShareWks) Valus : 0
2. Null Session 접근 제어 ㅁ 기본 설명 Windows 서버는 SMB와 NetBIOS 프로토콜을 기본으로 사용함으로써 시스템의 많은 정보를 외부에 유출 시킬 수 있습니다. 이것은 TCP/139,445번 포트를 사용함으로써 사용자 인증과정 없이 원격호스트에 접근할 수 있습니다. ㅁ 문제 해결 레지스트리 변경 (regedit 실행 후) ① HKLM\SYSTEM\CurrentControlSet\Control\Lsa ② restrictanonymous 더블클릭 후 Valus : 1
3. Autologon 비활성화 ㅁ 기본 설명 윈도우는 사용자의 로그온 이름과 패스워드를 저장하여 부팅시 사용자 이름과 패스워드 입력 없이도 자동으로 로그온 할 수 있는 기능을 지원합니다. 그러나 이 기능이 활성화되어 있을 경우 다른 사용자에 의해 정상 사용자의 계정이 악의적인 목적으로 사용될 수 있음으로 비활성화를 해야 됩니다. ㅁ 문제 해결 레지스트리 변경 (regedit 실행 후) ① HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WInlogon ② AutoAdminLogon 더블클릭 후 Valus : 0 (1이면 Autologon이 활성화 상태) - AutoAdminLogon이 없을경우 “문자열 값”을 새로 만들어 생성하면 된다.
4. 서비스 거부 공격 예방 ㅁ 기본 설명 서비스 거부 공격은 네트워크 사용자가 컴퓨터나 컴퓨터의 특정 서비스를 사용할 수 없도록 만들기 위한 네트워크 공격으로, TCP/IP 스택을 강화하는 레지스트리 값 변경을 통해 저항하도록 설정 할 수 있습니다. ㅁ 문제 해결 레지스트리 변경 (regedit 실행 후) HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 설정값 변경

ㅁ 레지스트리 값 설명 ① SynAttackProtect - 형식 : REG_DWORD - 범위 0 (SynAttack 프로텍션을 사용하지 않음) 1 (재전송 시도를 줄이고 route 캐쉬엔트리를 지연시킨다) 2 (1의 기능외에도 Winsock에 대한 지시(indication)를 지연시킨다) - 권장값 : 2 - 설명 : SYN-ACK 패킷을 기다리는 시간을 줄여 SYN 공격에 대한 방어 기능을 한다 ② TcpMaxHalfOpen - 형식 : REG_DWORD - 범위 : 100-0xFFFF - 권장값 : 100 (W2k Pro, Server), 500 (adv. Server) - 설명 : SynAttackProtection이 동작하기 전에 허용되는 SYN-RCVD 상태의 connection 수를 나타낸다. ③ TcpMaxHalfOpenRetried - 형식 : REG_DWORD - 범위 : 80-0xFFFF - 권장값 : 80 (W2K Pro, Sever), 400 (adv. Server) - 설명 : SynAttackProtection이 동작하기 전 Syn 패킷의 재전송이 최소 하나 이상 있는 SYN-RCVD 상태의 connection 수를 나타낸다 ④ EnablePMTUDiscovery - 형식 : REG_DWORD - 범위 : 0 (Falue), 1 (True) - 권장값 : 0 - 설명 : EnablePMTUDiscovery를 1로 설정하면 TCP는 최대 전송 단위(MTU)나 원격 호스트 경로에 대한 최대 패킷 크기의 검색을 시도하며, 0으로 설정하지 않으면 공격자가 강제로 MTU를 아주 작은 값으로 설정하여 스택의 부하가 커진다 ⑤ NoNameReleaseOnDemand - 형식 : REG_DWORD - 범위 : 0 (Falue), 1 (True) - 권장값 : 1 - 설명 : 컴퓨터가 이름 해제 요청을 받을 때 NetBIOS 이름을 해제할지 여부를 결정한다. 이 값은 관리자가 악의적인 이름 해제 공격으로부터 컴퓨터를 보호한다. ⑥ EnableDeadGWDetect - 형식 : REG_DWORD - 범위 : 0 (Falue), 1 (True) - 권장값 : 0 - 설명 : EnableDeadGWDetect를 1로 설정하면 TCP는 더 이상 작동하지 않는 게이트웨이를 검색할 수 있으며, 0으로 설정하지 않으면 서버가 강제로 원하지 않는 게이트웨이로 전환될 수 있다. ⑦ KeepAliveTime - 형식 : REG_DWORD - 권장값 : 300,000(5분) - 설명 : idle connection을 확인하기 위하여 얼마나 자주 Keep-alive 패킷을 보낼지를 결정하는 값이다 ⑧ PerformRouterDiscovery - 형식 : REG_DWORD - 범위 : 0 (disabled), 1 (enabled), 2 (만약 DHCP가 router discoveroption을 전송하는 경우에만 활성화) - 권장값 : 0 - 설명 : Windows 2000에서 인터페이스 카드 기반으로 RFC 1256에 해당하는 Router discovery를 수행하게 할지를 제어한다 ⑨ EnableICMPRedirects - 형식 : REG_DWORD - 범위 : 0 (False), 1 (True) - 권장값 : 0 - 설명 : 해당 시스템이 ICMP redirect 메시지를 받았을 경우, 라우팅 테이블을 변경할 수 있게 하는 값으로 0으로 설정하여 변경되지 않도록 해야 한다.@