Router(config)#hostname suwon
suwon#config t -------- configuration terminal의 약어, command
setting mode로의 전환을 의미..
suwon(config)#int e0 ------- ethernet port 설정을 시작한다.
suwon(config-if)#no shutdown ------ default 는 disable(shutdown) 이므로 이것을 enable 시킨다.
suwon(config-if)#ip add 210.108.245.1 255.255.255.192
--- ethernet에 ip address를 지정한다.
suwon(coining-if)#exit ------- ethernet 설정을 마무리하고 다음 설정으로 넘어간다.
suwon(config)#int s0 ------- serial port 설정을 시작한다.
suwon(config-if)#encapsulation ppp -- 접속
protocol을 지정(이기종간)
cisco
router끼리는 HDLC로 설정한다.
suwon(config-if)#bandwidth 512 ------- 접속 회선 속도를 설정한다.
suwon(config-if)#description suwon-s1
suwon(config)#ip route 0.0.0.0 0.0.0.0 210.248.102.99
------- default route를 구성한다.
suwon(config)#ip name server 164.124.101.2
------- domain name server를 지정한다.
suwon(config)#^Z -------
Ctrl+Z를
눌러서 config mode를 종료한다.
suwon#Copy runn-config startup-config -------
save 한다.
####[OK]
Using 653
out of 32762 bytes
!
version
11.1
!
hostname
suwon ------- 라우터의 이름을 나타낸다.( 접속시 prompt로 나타남.)
!
!
!
!
interface Ethernet0
ip address
203.233.10.5 255.255.255.0
!
interface Serial0
ip address 203.252.12.10 255.255.255.252
ip address 203.252.12.10 255.255.255.252
description
suwon-s1
!
interface Serial1
no ip
address
!
ip name-server 164.124.101.2 ------- domain-name
server를 지정한다.
no ip classless
ip route 0.0.0.0 0.0.0.0 203.252.12.9 ------- default route를 지정한다.
snmp-server community public RO
!
line con 0
no ip classless
ip route 0.0.0.0 0.0.0.0 203.252.12.9 ------- default route를 지정한다.
snmp-server community public RO
!
line con 0
line aux 0
!
end
end
ㅇ 보안설정
1) 패스워드 점검 :
- ENABLE SECRET 패스워드 사용
# show running-config
enable password 7 121E17121705
→ Vigenere chpher 알고리즘 : 쉽게 크랙되어 패스워드 노출 위협(x)
→ Vigenere chpher 알고리즘 : 쉽게 크랙되어 패스워드 노출 위협(x)
enable secret 5 $1$q97P$KMi1RNbsEg1397QC.eWg6/
→ MD5 알고리즘(o)
→ MD5 알고리즘(o)
(enable password 의 패스워드는 enable secret을 사용 시
그 효력이 잃게 된다
->둘 다 있으면 enable secret 우선)
->둘 다 있으면 enable secret 우선)
- 취약한 패스워드가
설정되어 있지 않은지 확인한다.
# show
running-config
enable password
7 121E17121705 → (Vigenere chpher 알고리즘) → 카인과 아벨로 점검
enable secret 5 $1$q97P$KMi1RNbsEg1397QC.eWg6/ → (MD5) → john the ripper로 점검
- 설정 : 불필요한 계정은 삭제, 취약한 패스워드는 쉽게 유추할 수 없는 패스워드로 변경.
# conf t
#
enable secret <유추하기 힘든 패스워드>
#
^Z
2) CONSLOE PORT 접근제어 (login)
- Console Port에 물리적으로 접근이
가능(패스워드 설정 및“login”설정 적용) 여부 확인
# show
running-config
line con 0
password 7
06070B2C4540584B56
login
- 설정 : consloe 포트에 대한 접근제어 설정에“login”및 “password” 설정을 한다.
Router# conf t
Router(config)#
line console 0
Router(config-line)#
login
Router(config-line)#
password admin123
Router(config-line)#
^Z
3) VTY PORT 접근제어 (login)
- VTY 포트에
접근 가능(“password”설정 및“login”설정) 여부 확인.
Router# show
running-config
line vty 0 4
password 7
14161606050A7B7977
login
- 설정 : vty 포트에 대한 접근제어 설정에“login”및 “password”설정을 한다.
Router# conf t
Router(config)#
line vty 0 4
Router(config-line)#
password <유추하기 어려운 패스워드>
Router(config-line)#
login
Router(config-line)#
^Z
4) VTY PORT 접근제어 (ACL 설정)
- VTY 포트에 원격 접근가능(access-list 적용) 여부 확인
Router#
show running-config
access-list 99
permit 10.10.10.10
line vty 0 4
access-class 99
in ¬ access-list 99에 해당 하는 IP만 접근이 가능
exec-timeout 30
0
password 7
045C04021E295E
login
transport input
telnet
- 설정 : 관리자 PC에서만
라우터로 접근이 가능 하도록 VTY 포트에 대한 access-list를
설정
Router# conf t
Router(config)#
vty 0 4
Router(config)#
line vty 0 4
Router(config-line)#
access-class 99 in
Router(config-line)#
^Z
Router# conf t
Router(config)#
access-list 99 permit 10.10.10.10 log (IP에 대해 로그를
남기고 permit)
Router(config)# access-list
99 deny any log (10.10.10.10 이외의 IP는 모두
deny)
Router(config)#
^Z
5) VTY PORT 접근제어 (timeout)
- 시스템 접속이 아무런 제한 없이 계속 유지(“exec-timeout” 설정 적용 )되는지 확인.
Router# show
running-config
line vty 0 4
exec-timeout 300
password 7
045C04021E295E
login
transport input telnet
- 설정 : 사용하는 라인 설정 모드에서 exec-timeout 시간을 설정
Router# conf
t
Router(config)#
line vty 0 4
Router(config-line)#exec-timeout
300 (300초 간 키
입력 없을 시 로그아웃)
Router(config-line)#^Z
6) ICMP redirects 금지 설정
- 라우터에서 특정목적지로 최적화되지 않은 라우팅을 한다고 할 때 ICMP redirect 패킷은
라우터에게 정확한 라우팅 경로를 알려주는 역할을 한다.
만약 임의의 비인가자가 ICMP redirect 패킷을 위조할 수 있게 된다면, 라우팅 테이블을
변경할 수 있게 되고 원하지 않는 경로로 트래픽을 보낼 수 있는 위협이 존재 할 수 있다.
- 설정 파일 내에 “no ip redirects” 파일이 적용 되어 있는지 확인.
Router# show running-config
interface FastEthernet0/0
no ip redirects
- 설정 : 인터페이스에서 나가는 ICMP Redirects 패킷을 막기 위하여 no ip redirects 설정,
들어오는 ICMP Redirects 패킷을 막기 위하여 access-list를 통해서 접근 제어
나가는 패킷에 대한 설정
Router(config)# interface FastEthernet 0/0
Router(config-if)#no ip redirects
Router(config-if)#^Z
받는 패킷에 대한 설정
Router(config)# access-list 101 deny icmp any any redirect
Router(config)# access-list 101 permit ip any any
Router(config)# interface FastEthernet 0/0
Router(config-if)#ip access-group 101 in
Router(config-if)#^Z
- 참고 : ICMP Redirects 는 Cisco IOS 10.0 이상에서 default로 설정.
7) Directed Broadcast 금지 설정
- ICMP echo request는 특정 호스트에게만 reply를 보내는 것이 아니라 해당되는 네트워크
전체에 echo request를 전송하기 때문에 이에 대한 응답인 echo reply는 네트워크 에 존재
하는 호스트만큼 응답 패킷이 되돌아 온다.
이와 같이 directed-broadcast 기법을 이용할 수 있게 되면 DoS 공격의 일종인 스머프(Smurf)
공격을 받을 수 있는 위협이 존재.
- 설정파일 내에“no ip directed-broadcast“ 설정이 적용 되어 있는지 점검.
Router# show running-config
interface FastEthernet0/0
no ip directed-broadcast
- 설정 : no ip directed-broadcast 설정
Router# conf t
Router(config)# interface FastEthernet 0/0
Router(config-if)#no ip directed-broadcast
Router(config-if)#^Z
- 참고 : 이러한 설정은 외부 네트웍과 연결되는 router 및 내부에 존재하는 모든 router의
설정을 적용해야 한다. 또한 IOS 12.0 이후 버전은 default enable 되어 있다.
- ICMP echo request는 특정 호스트에게만 reply를 보내는 것이 아니라 해당되는 네트워크
전체에 echo request를 전송하기 때문에 이에 대한 응답인 echo reply는 네트워크 에 존재
하는 호스트만큼 응답 패킷이 되돌아 온다.
이와 같이 directed-broadcast 기법을 이용할 수 있게 되면 DoS 공격의 일종인 스머프(Smurf)
공격을 받을 수 있는 위협이 존재.
- 설정파일 내에“no ip directed-broadcast“ 설정이 적용 되어 있는지 점검.
Router# show running-config
interface FastEthernet0/0
no ip directed-broadcast
- 설정 : no ip directed-broadcast 설정
Router# conf t
Router(config)# interface FastEthernet 0/0
Router(config-if)#no ip directed-broadcast
Router(config-if)#^Z
- 참고 : 이러한 설정은 외부 네트웍과 연결되는 router 및 내부에 존재하는 모든 router의
설정을 적용해야 한다. 또한 IOS 12.0 이후 버전은 default enable 되어 있다.
8) ICMP Unreachable 제한
- ICMP Unreachable 은 network scanning에 이용되는 기능 중에 하나로서, 공격자는 scan으로
라우터 및 호스트의 특정 포트가 열려있는지 알 수 있다.
- 라우터의 설정 파일 내에 no ip unreachables” 설정이 적용 되어 있는지 점검.
Router# sh run
interface FastEthernet0/0
no ip unreachables
- 인터페이스별로 ICMP Unreachable을 차단할 것을 권장
Router# conf t
Router(config)# interface fastethernet 0/0
Router(config-if)#no ip unreachable
Router(config-if)#^Z
9) SNMP Community String
- 기본값으로 설정된 snmp community string은 public 혹은 private으로 일반적으로 알려져
있기 때문에, 임의의 비 인가자가 SNMP를 통해 시스템에 대한 정보를 얻을 수 있는
취약 점이 있다.
- configuration 파일의”snmp commuity“ 설정 파일의 strings 를 확인.
Router# show running-config
snmp community “CERTRTR” ro ® public 혹은 private이 아닌지 확인
snmp community “CERTMGMT” rw
- 설정 : 추측하기 힘든 string으로 변환하여 사용.
Router# conf t
Router(config)# snmp community “CERTRTR” ro
Router(config)# snmp community “CERTMGMT” rw
Router(config)# ^Z
10) SNMP 접근제어 여부
- SNMP를 통한 시스템 관리에 적절한 ACL이 설정되어 있지 않을 경우 임의의 비인가자가
SNMP community string을 유추하여 접근을 시도 할 수 있다.
- 설정 파일의 snmp commuity 설정 중 접근 제어 ACL 설정을 점검한다.
Router# show running-config
access-list 77 permit 211.196.130.178
snmp-server community Wnddkd12 RO 77
- 설정 SNMP를 반드시 사용해야 할 경우 허가된 IP를 가진 사용자만이 접근하도록 다음과
같이 ACL을 적용
Snmp 포트에 대한 접근 제어 설정
Router# conf t
Router(config)# access-list 101 deny tcp any any eq 161
Router(config)# access-list 101 deny udp any any eq 161
Router(config)# access-list 101 deny tcp any any eq 162
Router(config)# access-list 101 deny udp any any eq 162
Router(config)# access-list 101 deny tcp any any eq 1993
Router(config)# access-list 101 deny udp any any eq 1993
Router(config)# access-list 101 permit ip any any
Snmp 포트에 대한 접근 제어를 101 acess-group으로 등록
Router(config)# interface serial 0/0
Router(config-if)#ip access-group 101 in
Router(config-if)#^Z
- 설정 확인
Router# show running-config
interface Serial0/0
ip address 10.0.0.2 255.0.0.0 ® IP 10.0.0.2의 시스템에서만 snmp접근이 허용됨
ip access-group 101 in
access-list 101 deny tcp any any eq 161
access-list 101 deny udp any any eq snmp
access-list 101 deny tcp any any eq 162
access-list 101 deny udp any any eq snmptrap
access-list 101 deny tcp any any eq 1993
access-list 101 deny udp any any eq 1993
access-list 101 permit ip any any
- 참고 : 내부 관리자 인터페이스에는 관리자 IP만 permit하고 나머지는 Deny하도록 설정한다
11) FINGER service disable 설정
- finger 서비스가 활성화 시 임의의 비인가자가 해당 서비스를 이용해 시스템 정보획득 수단
으로 사용할 수 있다.
- configuration 파일 내에 “no ip finger’ 설정이 적용 되어 있는지 점검.
Router# show running-config
no ip finger
- Finger 서비스는 라우터의 사용자 계정명을 비롯한 중요한 정보를 제공하기 때문에 특별히
필요가 없는 한 서비스를 diable 시킨다.
Router# conf t
Router(config)# no ip finger
Router(config)#^Z
12) CDP service disable 설정
- CDP(Cisco Discovery Protocol)는 LAN 구간에서 직접 연결된 시스코 장비들 사이에서 서로
의 정보를 얻기 위해 사용되는 프로토콜로서 라우터에 연결되어 있는 장비들의 종류와
설정을 보여줄 때와 같이 전체 네트워크 구성을 파악할 때 많이 사용한다. 그러나 이러한
정보는 공격자에게도 유용한 정보를 제공할 수 있다.
- 설정 파일 내에 “no cdp run” 설정이 적용 되어 있는지 확인한다.
Router# show running-config
no cdp run
- 설정 : Cisco Discovery Protocol 기능을 disable 한다.
Router# show cdp
Global CDP information:
Sending CDP packets every 60 seconds
Sending a holdtime value of 180 seconds
Router# conf t
Router(config)# no cdp run
Router(config)# ^Z
Router# show cdp
% CDP is not enabled
- 참고: “no cdp run” 명령어의 경우 라우터 전체에서 사용하지 못하도록 설정되므로
특정 인터페이스에서만 적용을 원한다면 “no cdp enable”을 사용하도록 한다.
13) TCP/UDP small service diable 설정
- 시스코 라우터에 사용되고 있는 IOS 버전에 따라서 TCP, UDP Small Services가 자동으로
설정되어 실행된다
Small Services는 UDP의 echo, discard, chargen 서비스와 TCP의 echo, discard, chargen,
daytime 서비스를 말한다.
이러한 서비스는 라우터에 불필요한 포트를 open 시켜 라우터의 정보를 유출 시키거나
DOS공격으로 사용될 수 있다.
- 설정 파일 중 “no service small tcp-servers”, “no service small tcp-servers” 설정이 적용 되어
있는지 점검.
Router# show running-config
no service udp-small-servers
no service tcp-small-servers
- 설정 : small service는 네트워킹에 특별히 중요한 역할을 담당하지는 않기 때문에 모두 차단
Router# conf t
Router(config)# no service udp-small-servers
Router(config)# no service tdp-small-servers
Router(config)#^Z
14) PROXY ARP disable 설정
- Proxy ARP(Address Resolution Protocol)는 default route, gateway를 가지고 있지 않는
네트워크 호스트에게 ARP 서비스를 제공하는 역할을 한다. 호스트가 목적지 IP에 대한
MAC Address를 요청하면 Proxy ARP가 설정된 라우터가 이에 응답하여 자신의 주소를
목적지 주소인 것처럼 전송한다. 공격자들은 패킷의 주소(MAC)를 위조하여 proxy ARP를
요청할 수 있으며 라우터가 이에 응답하는 것을 보고 네트웍 정보를 획득 할 수 있다.
- 설정파일 내에 no ip proxy-arp 설정 적용 유무를 점검.
Router# show running-config
interface FastEthernet0/0
no ip proxy-arp
- 최근에는 DHCP와 같은 프로토콜이 사용되면서 Proxy ARP를 사용할 필요가 없으므로,
특별한 사유가 있지 않는 한 사용을 금지한다
Router# conf t
Router(config)# interface fastethernet 0/0
Router(config-if)#no ip proxy-arp
Router(config-if)#^Z
15) NTP server 사용
- NTP(Network Time Protocol)과 같은 프로토콜이 적용되어 있지 않은 라우터는 라우터 로그
및 정확한 시간 동기화 지장을 받을 수 있으며, 이는 네트워크 관리, accounting, 사고 분석 등
을 수행하는 데 큰 단점으로 작용할 수 있다.
- configuration 파일 내에 ntp server 설정이 적용 되어 있는지 점검한다.
Router# show running-config
ntp authentication-key 42 md5 12182B1E110E270133 7
ntp authenticate
ntp server 10.10.10.10 ® ntp서버
- 안전한 네트워크를 유지하기 위하여 NTP와 같은 시간 동기화 프로토콜 사용 한다. NTP를
설정하는 방법은 아래와 같이 3가지로 분류된다.
Central : 중소단위의 네트워크에 적용되는 방법으로 외부와 통신 가능한 한 두개의
서버를 Central 서버로 지정하여 이 서버들을 이용하여 시간 동기화를 수행함
Flat : 가장 안정된 시간동기화를 제공하는 구조로서 모든 라우터들이 peer 모드로
동작하여, 각각의 라우터들이 클라이언트와 서버의 역할을 동시에 수행함
Hierarchical : 대규모 네트워크에 적합한 방법으로 주로 ISP들에 의해 사용됨.
최상위 라우터가 ISP 시스템과 시간동기화를 수행하여 트리 구조를 통해
다른 라우터들과 시간동기화를 수행
* Central 서버 적용 예 : Router(config)# ntp server [원하는 NTP 서버 IP]
16) BOOTP service disable 설정
- BOOTP 네트워크 사용자가 자동으로 IP 주소를 받을 수 있게 해 주거나 사용자의 관여
없이 부트되는 운영체계를 가지고 있게 해주는 프로토콜로서 X 터미널처럼 하드디스크를
갖지 않은 장치의 설정 정보를 자동으로 할당, 관리하기 위해서 개발되었다.
필요없이 활성화 되어 있을 경우 라우터의 트래픽 효율을 저하 시킬 수 있다.
- 설정 파일 내에 “no ip boot server “ 적용 유무를 정검
Router# show running-config
no ip bootp server
- 설정 : 라우터가 bootp server로 동작하지 않는다면 불필요한 서비스 이므로 diable 시킨다.
Router# conf t
Router(config)# no ip bootp server
Router(config)# ^Z
17) syslog 서버를 이용한 로그 관리
- Console, buffer에 로그를 남기는 것은 메모리의 한계로 중요 로그에 대한 저장에 한계가
있다. 원격 syslog server를 따로 설정하여 로그 정책에 따라 중요 Event Log에 대해 모니터링
및 저장 한다면 침해 사고 발생 시 역추적의 유용한 자료로 사용 될 수 있으며, 또한 악의적
사용자에 의한 불법적인 로그 삭제의 위협을 예방할 수 있다.
- configuration을 확인하여 syslog 서버를 사용하고 있는지 확인한다.
Router# show running-config
logging trap debugging
logging facility kern
logging 10.10.10.10
- 설정 : 다음과 같이 라우터들의 모든 로그를 syslog 서버에 전달하도록 설정한다
Router# conf t
Router(config)# logging Logging_Save_Server
Router(config)# logging facility kern
Router(config)# logging trap debugging
Router(config)# ^Z
18) Source 라우팅 금지
- 보통 패킷이 목적지까지 가기 위한 경로는 그 경로상에 있는 라우터에 의해 결정 되고
패킷 자체는 목적지 주소만 가지고 있을 뿐 경로에 대한 어떤 정보도 가지지 않는다.
source routing 방법은 최근에는 잘 사용되지 않는 방법으로 해당 기능을 이용해서 임의의
공격자는 패킷 조작을 통해 목적지까지 가는 경로를 임의 적으로 정의해서 라우팅이 되지
않도록 정의된 중요 시스템에 접근을 시도 할 수 있다.
- configuration 설정 중 “no ip source-route”설정이 적용 되어 있는지 확인.
Router(config)# sh run
no ip source-route
- 설정 : “no ip source-route설정을 통해 source-route 설정을 disable 한다.
Router# conf t
Router(config)# no ip source-route
Router(config)# ^Z
No comments:
Post a Comment