1. 스크린 락 해제하기






2. VMware Tools 설치



재부팅 후 전체화면으로 크기를 키워 화면 맞춤이 되는지 확인한다. 





3. IP 설정하기


명령어로 네트워크 서비스를 재시작하면 시스템 적용이 잘 되지 않는다. 

재부팅을 해줘야 제대로 설정이 완료되니 설정을 다한 후 꼭 재부팅 해준다. 







그냥 'Install'과 'Graphical Install'은 보여지는 화면의 차이일뿐 다르지 않습니다. 




한글로 설치하면 글씨가 깨지지 않도록 한글팩을 따로 설치해야 하는 번거로움이 있으며,

간혹 제대로 실행되지 않고 에러나 나는 경우도 있어서 영어로 설치합니다. 




시스템의 위치 및 시간 등은 칼리를 사용하는데 큰 영향이 없기에 그냥 기본 값으로 두고 넘어갑니다.




슈퍼유저인 root의 비밀번호는 반드시 설정해야 합니다. 

굳이 복잡하게 설정하지 않아도 되니 기억하기 쉬운 값으로 설정하세요.




필요에 따라 'apt-get' 명령어로 패키지를 설치하기도 하니 'yes'를 선택해주세요.




HTTP 프록시는 따로 설정하지 않습니다. (빈칸으로 둠)




마지막 화면에서 boot loader의 위치를 지정해주지 않으면 부팅이 되지 않으니

반드시 /dev/sda 를 선택해주셔야 합니다. 







정보보호/보안

 

가장 먼저, 보안이라는 말과 보호라는 단어에 대해서 알아보자.

단어는 거의 동일한 의미로 사용이 되고 있지만 약간의 어감의 차이는 있다. 우선 보안(Security)이란 가치있는 유무형 자산의 도난, 손실, 유출로부터 보호하는 것을 의미한다. 어떤 특정 객체에 대해 기술적인 방식으로 보호하는 것의 느낌이 강하다. 그리고 보호(Protection) 시스템의 전체적인 안정성을 확보하는 것을 의미하며, 주로 '보안'보다 광범위한 의미로 사용이 되고 추상적인 느낌이 있다.




정보보호 또는 정보보안이란, 정보의 수집, 가공, 저장, 검색, 송신, 수신 중에 정보의 훼손, 변조, 유출 등을 방지하기 위한 관리적, 기술적 수단(이하"정보보호시스템"이라 한다) 강구하는 이라고 정보화촉진기본법 2조에 정의되어 있다.

 

한마디로 정보가 수집되어 가공되고 저장되는 부터 송수신하는 것까지 모든 범위에서의 보안을 통틀어 얘기하고 있다보안 범위에 따라 물리적보안, 네트워크보안, 어플리케이션보안, 시스템보안, 데이터베이스보안 등으로 나누어  있으며, 모든 분야에 대해 대략적인 내용은 파악하고 있으면서 중에서 자신의 적성에 맞는 분야에 대해 깊이있게 공부할 필요가 있다.

 

블로그에서는 네트워크를 기반으로한 내용들로 구성되어 있기 때문에 

보안 역시 네트워크 보안에 대해서만 다루고자 한다.

 



네트워크 보안이란?

 

네트워크를 구성하고 있는 통신 장비들을 보호하고, 네트워크 통신을 통해 데이터가 안전하게 전달될 있도록 보호하는 것을 말한다. 일상생활에서 일어나는 가장 기본적인 대화의 메시지 전달부터 전자상거래 금융거래까지 네트워크 통신 없이 있는 것은 거의 없다. 그만큼 현재 우리 자체가 네트워크의 의존성이 높다는 것이다.

하지만 네트워크상에 우리의 개인정보와 중요한 사업문서들이 무방비로 그대로 노출이 된다면 굉장히 손실이 발생할 있는 위험에 처해질 수도 있다. 이러한 정보들의 보안을 위해 네트워크 보안은 굉장히 기본적이며 중요한 것이다.

 

 

 

정보보호의 3요소 (CIA)

 

정보 보안에서는( 넓게 통틀어 보안에서도) 전통적으로 가장 중요하게 고려하고 있는 가지의 주요 요소가 있는데, 이를 정보보호의 3요소라고도 한다. 아래와 같은 정보보호의 3요소가 보안의 주요한 목표가 된다.

 

1. 기밀성 (Confidentiality)

허가되지 않은 사용자가 정보의 내용을 없도록 하는 것을 말한다. 이를 위해 정보의 접근 권한을 부여하여 제어하거나, 정보를 암호화하여 중간에 누설이 되더라도 내용을 쉽게 알아보지 못하도록 설정할 있다.

2. 무결성 (Integrity)

허가되지 않은 사용자가 정보를 함부로 수정할 없도록 하는 것을 말한다. 이는 중간에 누군가로부터 정보가 조작되었다는 것을 확인할 있도록 하는 것이며, 이를 위해 단방향 함수(Hash) 사용할 있다.

3. 가용성 (Availability)

허가된 사용자가 특정 정보에 접근하거나 서비스를 이용하고자 언제든 접근 또는 사용할 있도록 하는 것을 말한다. 대중에게 많이 알려진 Dos/DDoS 공격이 가용성을 침해하는 공격기법이다.

 


 

sTerm

 : IP 스푸핑 공격에서 사용하는 프로그램이다. 보안 정책에 의해 관리자만 접근이 허용되어 있는 경우, 공격자 PC의 주소를 관리자 IP 주소로 변경하여 접근하는 공격툴이다.



sTerm 다운로드


사이트 www.oxid.it 로 들어가면 sTerm 프로그램을 다운받을 수 있다. 

공격툴이기 때문에 바이러스로 인식하여 다운로드가 되지 않는 경우도 있다.





sTerm 설정 순서


1. Spoofing에 사용할 주소정보 설정하기 

   화면 상단에 설정 아이콘을 눌러 설정창을 띄운다. 

   설정창에 통신에 사용되는 랜카드를 선택하고 (설정된 IP를 보면 구분이 쉽다) 

   아래 IP Spoofing 부분에 사칭하고자 하는 장비의 주소를 적어준다.





2. 공격 대상 장비에 접근하기

   화면 상단에 연결 아이콘을 눌러서 공격 대상의 IP주소를 적고 포트번호를 입력한다.

   포트번호는 연결시키고자 하는 서비스의 포트번호를 사용하면 되고,

   아래 그림에서는 Telnet 통신에서 Spoofing 공격을 실습하려고 하기 때문에 23번을 적어주었다.





3. 보안 정책을 우회하여 접속된 것을 확인하기

   스푸핑공격을 하지 않고 접근하면 보안 정책에 의해 차단이 되는데,

   sTerm 프로그램에서 IP Spoofing 공격을 하여 접근하면 관리자 PC에서 접근한 것 처럼 접속이 된다.






'Network > Nerwork_Security' 카테고리의 다른 글

Kali 2018.1 설치  (0) 2018.03.19
정보보안 / 네트워크 보안  (0) 2015.11.23
Spoofing Attack (ARP,ICMP,IP 스푸핑 공격)  (0) 2015.07.22
DAI (Dynamic ARP Inspection)  (0) 2015.07.21
스위치 Port Security (포트시큐리티)  (1) 2015.07.17

ARP Cache Poisioning

  • 목적 : 공격 타겟의 ARP table 내용을 변경시켜 패킷을 공격자의 PC 전달하도록 한다.
  • 공격원리
    • ARP Broadcast 사용하는 프로토콜로써, 인증절차가 존재하지 않는다.
    • Dynamic방식으로 학습한 주소정보는 쉽게 변경이 있다. (마지막 정보로 저장됨)
    • 공격자는 임의로 생성한 ARP Reply 지속적으로 전송하여 타겟의 ARP 정보를 변경한다.
  • 해결방안
    • Dynamic ARP Inspection (실습이 되지 않으니 이론적으로 설명만)

 

 

ICMP Redirect

  • ICMP 
    • 신뢰성이 없는 IP 대신해 통신의 이상유무를 알리기 위해 네트워크의 에러메시지를 전송하거나 네트워크 흐름을 통제하기 위한 프로토콜
  • 목적 : ICMP 메시지를 사용하여 타겟의 라우팅 경로를 변경하여 패킷의 흐름을 조정한다.
  • 공격원리
    • 네트워크에 여러 개의 라우터가 있는 경우, 효율적인 경로라고 판단되는 특정 라우터의 IP주소를 ICMP Redirect 메시지를 통해 보낼 있다.
    • ICMP Redirect 메시지를 받은 PC 패킷의 내용대로 라우팅 테이블을 변경하는데, 인증 메커니즘이 없기 때문에 스니핑의 공격의 방법으로 사용된다.
    • 공격자는 타겟에게 패킷을 자신으로 전달하도록 만든 라우팅 경로를 ICMP메시지로 만들어 전달한다.
  • 해결방안
    • XP에서는 ICMP설정에서 변경

 

 

IP Spoofing 이란

 

IP protocol 인증 취약점을 악용하여 공격자가 자신의 IP address 공격하고자 하는 네트워크의 호스트의 IP address 바꾸어 IP 기반의 인증을 무력화 시키는 공격을 의미한다.

IP Spoofing 공격을 하기 위해서는 Target system Client 신뢰관계(Trust relationship) 형성되어 있어야 한다. 여기서 신뢰관계란 Client Target system 접속할 사용자 ID Password 입력하지 않아도 되는 관계를 의미한다.

또한 IP protocol 취약점을 습득하기 위해서 기본적으로 Sniffing 공격이 선행되어야 한다.

 

IP Spoofing 공격에서 이용하는 IP protocol 취약점

  • 인증 : IP Source address 상대를 식별 인증한다.

=> 암호화 과정이 없고 IP헤더를 변경할 있다.

  • 세션보호 : IP Sequence number 세션을 인증

=> Sequence number 추측이 가능하게 설계되어있어 이를 이용하여 세션을 가로챌수있다.

 

 


원격지에서 IP Spoofing 공격

 

방화벽이나 라우터의 ACL 의해 필터링 되어 내부 네트워크와 통신이 되지 않을 , IP 변조하여 우회할 있다.

요즘의 OS환경에서는 TCP Sequence 랜덤하게 생성하여 사용하기 때문에 원격 IP Spoofing 거의 불가능하다.

 

Target system Client 서로 신뢰관계에 있다.

신뢰관계의 Target system Client 사이의 통신 패턴을 관찰하여 Sequence number 추측했다고 가정한다. (고난이도)

 


 

  1. 공격자는 클라이언트에 TCP SYN Floodinf (TCP 513번(rlogin) or TCP 514번(rsh)) 공격을 한다.
  2. 공격자는 클라이언트의 IP 로 속여 서버(타겟 시스템)에 연결을 요청 한다.
  3. 서버는 클라이언트에서 온 패킷으로 알고 클라이언트에 SYN/ACK 패킷을 보낸다.

하지만, 클라이언트는 TCP Syn Flooding 공격 때문에 연결이 되지 않기 때문에 연결이 이루어지지 않고, 서버가 보낸 SYN/ACK 패킷 은 사라지게 되어 SYN/ACK 패킷을 받았는지 확인 할 수 없게 된다.

  1. 공격자는 클라이언트에서 ACK 패킷을 보낸 것처럼 속이면서, IP Spoofing 명령어가 들어있는 패킷을 보내 신뢰 관계에 있는 클라이언트라고 속이면 연결이 이루어지게 된다.

 

 

단순히 Client IP address 바꾸기만 하면 공격자와 서버가 연결되지 않는다.

 

 

  1. 공격자가 클라이언트의 IP Address로 위장하고 서버에 연결을 요청하는 SYN을 보낸다.
  2. 서버는 IP Address를 보고 클라이언트가 보낸 SYN 패킷으로 판단하여 클라이언트에 SYN/ACK 패킷을 보낸다.
  3. 클라이언트는 자신이 SYN 패킷을 보내지 않았기 때문에 RST 패킷을 보내게 되며, 서버는 RST 패킷을 받아 연결이 이루어지지 않는다.

 

 

 

 

내부 네트워크에서 IP Spoofing 공격

 

 

 

  1. 서버에게 공격자를 Client 인식하도록 공격자가 서버에게 ARP Cache Poisoning 공격을 한다.
  2. 서버에게 SYN 패킷을 전송한다.
  3. 서버는 1.1.1.2라는 주소에게 응답을 하지만 ARP 공격으로 인해 MAC주소를 잘못 저장하고 있다. 따라서 Client 아닌 공격자에게 SYN/ACK 패킷을 전달한다.




Overview of Dynamic ARP Inspection

DAI 네트워크 내에서 ARP패킷의 정당성을 확인하는 보안 솔루션이다.

Untrust 설정된 인터페이스에서 통신되는 패킷을 가로채어 확인하여 옳지 않은 MAC-IP 쌍의 패킷은 로그를 남기고 버린다.

 기술은 MITM(Man In The Middle)공격으로부터 네트워크를 보호한다.

 

DAI 정확한 MAC주소와 IP주소의 정당성을 확인하기 위해 미리 데이터베이스를 만들어놓아야 하고이는 DHCP Snooping 의해 만들어져서 관리된다.

추가적으로 호스트를 제어하기 위해 정적인 MAC-IP 구성을   있다정적으로 ARP ACL 구성하면 DHCP Snooping 데이터베이스 내의 정보보다 우선한다예를 들어 ARP ACL에서 거부된 패킷은 DHCP Snooping 데이터베이스에 존재하더라도 거부된다.


Trust state and Untrust state

Trust 상태는 신용이 가는 인터페이스에 설정되며 설정이  인터페이스로 패킷이 도착하면 DAI 프로세스를 bypass한다. Untrust 상태인 인터페이스로 패킷이 전달되면 DAI 프로세스를 구동한다.

전형적으로 호스트와 연결된 포트는 Untrust 구성되고 스위치간 연결 포트는 Trust 구성된다.

 

예를 들어 스위치는 DAI 돌지만 다른 스위치는 돌지 않을  스위치는 Untrust 구성해야 한다. DAI 돌지 않는 스위치로부터의 패킷을 확인하기 위해 DAI 돌고 있는 스위치는 ARP ACL 사용한다만약 이것이 가능하지 않다면 스위치는 독립적으로 L3 DAI 함께 운영한다.

 

Logging of Dropped Packets

스위치가 패킷을 버릴   정보는 log buffer 남겨지고 system 메시지를 발생하고메시지를 발생한 수에 스위치는 log buffer 깨끗이 한다.

log 정보는 패킷을 받은 VLAN, Port number, 발생지와 목적지 주소발생지와 목적지 MAC주소와 같은 흐름정보를 포함한다.

 

Rate Limiting of ARP Packets

DAI CPU 사용해 패킷을 점검한다. DoS같은 공격을 막기위해 인터페이스로 들어오는 ARP 패킷을 제한하고 있다.

기본 값으로 Untrusted port 15pps 처리하며, Trusted port 제한하지 않는다.

들어오는 ARP 패킷 과잉시 포트는 errdisable 상태에 위치한다 포트는 관리자가 직접 개입하여 복구를 시켜주거나 errdisable recovery 명령어를 통해 일정 시간 뒤에 자동적으로 복구 되도록 설정할  있다.

 



Configuring Dynamic ARP Inspection


Step 1

 Switch# show cdp neighbors

 Switch 연결 상황 확인

 

Step 2

 Switch# configure terminal

 글로벌 구성모드로 들어 갑니다.

 

Step 3

 Switch(config)#[no] ip arp inspection vlan vlan-range

 Dynamic ARP inspection 기능을 어느 특정 VLAN에 활성화 합니다.

 기본적으로 이 기능은 모든 VLAN에서 비 활성화 되어 있습니다.

 

vlan-range는 VLAN ID에 의해 확인되며 연속된 VLAN 할당 시 "-"에 의해 연결 되며 연속되지 VLAN은 ","에 의해 할당합니다. VLAN 길이는 1에서 4094입니다.

 

Step 4

 Switch(config)# interface interface-id

 다른 Switch와 연결된 인터페이스 구성 모드로 들어 갑니다.

 

Step 5

 Swtich(config-if)# ip arp inspection trust

 Switch간 연결 인터페이스는 Trust로 구성합니다.

 기본적으로 모든 인터페이스는 untrust 상태입니다.

 

 Switch는 Trust된 인터페이스로 부터의 ARP packet의 요구 및 응답을 점검하지 않습니다. 

 단지 해당 패킷을 넘길 뿐입니다.

 untrust 인터페이스로 들어오는 ARP packet은 스위치가 가로채어 IP-to-MAC 주소 묶음을 확인하고 적정한 목적지로 보

 냅니다.

 해당 묶음 값이 충분하지 않을 경우 해당 packet을 버리고 log를 남깁니다.

 이 로그는 ip arp inspection vlan logging 명령을 따르면 해당 설명은 "configuring the Log Buffer"에서 설명합니다.

 

Step 6

 Switch# show ip arp inspection interfaces

 Switch# show ip arp inspection vlan vlan-range

 Dynamic ARP Inspection 구성을 확인합니다.

 

Step 7

 Switch# show ip dhcp snooping binding

 DHCP 묶음을 확인합니다.

 

Step 8

 Switch# show ip arp inspection statistics vlan vlan-range

 Dynamic ARP Inspection 상태를 점검합니다.

 




DHCP Snooping 기능을 사용할 수 없는 경우에는 ARP ACL을 설정하여 방어할 수 있다.


Configuring ARP ACLs for Non-DHCP Environments


Step 1

 Switch# configure terminal

 글로벌 구성 모드로 들어 갑니다.

 

Step 2

 Switch# arp access-list acl-name

 ARP ACL을 정의 합니다. 그리고 ARP access-list 구성 모드로 들어 갑니다.

 Note: ARP ACL의 마지막 줄엔 deny ip any mac any 명령이 암묵적으로 적용됩니다.

 

Step 3

 Switch(config-arp-nac)# permit ip host sender-ip mac host sender-mac [log]

 허용할 ARP packet을 상세히 합니다.

 - sender-ip 는 host 2의 IP 주소입니다.

 - sender-mac 또한 host 2의 MAC 주소입니다.

 

Step 4

 Switch(config)# exit

 글로벌 구성 모드로 돌아 갑니다.

 

Step 5

 Switch(config)# ip arp inspection filter arp-acl-name vlan vlan-range [static]

 ARP ACL을 VLAN에 허용합니다. 기본적으로 모든 ARP ACL은 어떠한 VLAN에도 할당되지 않습니다.

 - arp-acl-name는 step 2에서 만든 ACL 이름을 사용합니다.

 - vlan-range는 host가 할당될 VLAN을 상세히 합니다. 여기서도 "-", ","을 사용하여 다수의 VLAN을 할당 할 수 있습니다.

 ARP packet은 IP-to-MAC 주소를 포함하며 ACL과 대응 됩니다.

 패킷들은 오직 ACL에 의해 정의되고 허용된 패킷만을 허용합니다.

 

Step 6

 Switch(config)# interface interface-id

 Switch B와 연결된 인터페이스를 구성합니다.

 

Step 7

 Switch(config-if) no ip arp inspection trust <-- 이 명령은 상위에서 구성한 Trust 상태를 unTrust로 돌리기 위한 명령입니다.

 기본적으로 모든 포트는 unTrust 상태입니다.

 unTrust 상태 인터페이스는 ARP 요구 및 응답을 가로채어 IP-to-MAC이 적절한지를 확인합니다. 만약 적절하다면 걍 넘길 것이고 부적절하다면 버린 후 설정에 의해 로그를 남길 것입니다. 로그 이야기는 "Configuring the Log Buffer"에서 상세히 하겠습니다.

 

Step 8

 Switch# show arp access-list [acl-name]

 Switch# show ip arp inspection vlan vlan-range

 Switch# show ip arp inspection interfaces

 Dynamic ARP inspection 구성을 확인합니다.

 


+ Recent posts