1. 네트워크 보안의 개념과 필요성

보안은 크게 컴퓨터 보안과 네트워크 보안으로 구분할 수 있다.

쉽게 말해, 컴퓨터 보안은 컴퓨터 자체의 데이터를 보호하는 것이고, 네트워크 보안은 컴퓨터 간에 데이터를 안전하게 전송하는 것이다.


* 보안 위협 요소

- 전송 차단

> 송신측에서 수신측에 메시지 전송 시 제 3자가 데이터의 전송을 차단


- 가로채기

> 송신측에서 수신측에 메시지 전송 시 제 3자가 도청


- 변조

> 송신측에서 수신측으로 전송할 데이터를 제 3자가 가로채서 데이터의 일부 또는 전부를 변경하여 잘못된 데이터를 수신측에 전송


- 위조

> 제 3자가 마치 송신측이 메시지를 전송한 것처럼 수신측에 전송


* 네트워크 보안

> 방화벽은 인터넷과 내부 네트워크 간에 일종의 세관 역할을 수행한다. 외부 네트워크에서는 네트워크 전면에 있는 방화벽만 보이고, 그 뒤에 놓인 내부 네트워크는 보이지 않는다.

> 따라서 해커가 침입하더라도 갈 수 있는 한계는 방화벽까지며, 내부 네트워크는 격리된다.


* 네트워크 보안의 요구사항

- 비밀성( Privacy )

> 데이터의 소유자가 원하는대로 비밀이 유지되어야 한다.

> 데이터는 소유자의 인증을 받은 사람만 접근이 가능해야 한다.

> 인증되지 않은 데이터는 공개가 불가능해야 한다.


- 무결성( Data Integrity )

> 인증되지 않은 사용자가 데이터를 임의로 변경, 수정, 삭제하지 못하게 해야 한다.

> 데이터의 정확성과 완전성을 보장해야 한다.


- 가용성( Data Availability )

> 정당한 방법으로 권한을 받은 사용자가 데이터 또는 자원을 필요로 할 때 아무런 방해를 받지 않고 데이터에 접근하고 사용할 수 있음을 보장해야 한다.


* 바이러스의 이해

> 컴퓨터 동작에 피해를 주는 프로그램이다.

> 다른 일반 프로그램과 동일한 누군가에 의해 제작된다.

> 네트워크 공유 및 이메일, P2P 프로그램에서의 파일 다운로드, 메신저 프로그램 등을 통해서 전파 및 감염 된다.

> 바이러스 감염 증상

- 컴퓨터 부팅 시 시스템 관련 파일을 찾을 수 없다는 에러 메시지가 나오는 경우

- 윈도우 자체가 실행되지 않는 경우

- 프로그램 실행 속도가 현저히 저하되고 시스템이 자주 멈추는 경우

- PC 사용 중 비정상적인 그림이나 메시지가 뜨거나 소리가 나는 경우

- 사용자 의사와 상관없이 프로그램이 실행되거나 마우스가 스스로 움직이는 경우

- 폴더에 알 수 없는 파일이 생기는 경우


* 바이러스 예방과 제거

> 백신 프로그램 또는 개인 방화벽 등 보안 프로그램 설치 운영

> 윈도우 업데이트가 자동으로 실행될 수 있도록 설정

> 소프트웨어는 정품만 사용

> 중요한 프로그램이나 데이터는 수시로 백업

> 새로운 프로그램을 사용할 때 하나 이상의 최선 버전 백신 프로그램으로 검사

> 정기적으로 디스크 검사 수행


* 웜

> 실행 코드 자체로 번식하는 유형주로 컴퓨터 내에서 실행된다.

> 웜과 바이러스는 감염 대상 유무와 자기 복제 능력 유무에 따라 분류된다.


- 공격 유형

1) 백 도어 기능을 이용한 정보 유출

> 최근에는 해킹을 하기 위해 해커들이 직접 웜을 제작하는 경우가 많아졌다.

> 개인의 아이디나 패스워드는 물론 개인 금융 정보까지 위협받고 있다.


2) 서비스 거부 공격

> 시스템의 정상적인 서비스를 방해하기 위한 목적으로 대량의 데이터 전송

> 시스템 또는 네트워크의 성능을 급격히 저하시키는 공격 유형이다.

> 웜에 감염된 불특정 다수의 컴퓨터들은 주기적으로 특정 사이트에 접속한다.

> 해커의 명령이 없다면 웜은 아무 기능도 수행하지 않는다.

> 만약 해커가 공격 명령을 전달하면 감염된 웜이 동시에 특정 시스템을 공격한다.

> 불특정 다수 시스템에게 동시 공격을 받기 때문에 전체 네트워크 마비 위험


- 전파 유형

1) 이메일을 통한 전파

> 웜이 실행되면 자신을 윈도우 폴더 또는 주요 시스템 폴더에 복사

> 재부팅이 되더라도 자동으로 실행 가능하게 레지스트리에 자신을 등록

> 컴퓨터에 저장된 주소록이나 브라우저의 임시 디렉터리에서 이메일 주소를 추출해 하드디스크에 저장

> 수집된 이메일 주소로 웜을 첨부하여 발송

> 이메일을 받은 사용자가 이메일을 읽거나 첨부 파일을 실행ㅎ면 동일한 일들이 반복되어 웜이 전파된다.


2) P2P 공유 프로그램을 통한 전파

> 지정된 폴더에 웜을 복사

> 사용자들이 많이 검색하는 이름으로 파일 이름을 변경

> 공유 폴더에 있는 파일을 다운로드하여 실행함을써 웜이 전파되는 악순환 반복


* 악성 코드( malware )

> 악의적인 소프트웨어의 약자

> 시스템 파괴 및 작업 지연, 정보 유출 등 악의적 활동을 위해 의도적으로 제작된 소프트웨어

> 자기 복제와 파일 감염이 특징인 바이러스의 개념까지 포함한다.

> 악성코드 감염증상

- 웹 브라우저를 실행할 때마다 특정 웹사이트로 이동하는 경우

- 수시로 음란광고 같은 팝업이 뜨는 경우

- 사용자가 변경하지 않았는데도 윈도우 설정이 자동으로 바뀌는 경우

- 실행하지 않은 파일이 저절로 삭제되거나 변형되는 경우

- 컴퓨터의 속도나 인터넷 속도가 갑자기 느려지는 경우

- 부팅 속도가 느려지는 경우

- 컴퓨터를 사용하지 않는데도 하드디스크 드라이브가 작업 중일 경우


* 트로이 목마( Trojan horse )

> 자료 삭제, 정보 유출, 해킹 기능이 있다.

> 인터넷을 통해 감염된 컴퓨터의 정보를 외부로 유출하는 악성 프로그램이다.

> 주로 인터넷에서 파일을 다운로드할 때 전파된다.

> 유용한 프로그램으로 가장하여 사용자가 그 프로그램을 실행하도록 속인다.

> 사용자가 그 프로그램을 실행하게 되면 실제 기대했던 기능을 수행한다.

> 트로이 목마는 자기 복제 능력이 없어 한 프로그램 내에서만 존재


* 스파이웨어

> 스파이와 스프트웨어의 합성어

> 광고나 마케팅을 목적으로 배포하므로 애드웨어라고도 한다.

> 최근에는 컴퓨터 사용자 동의 없이 설치되어 컴퓨터 사용에 불편을 끼치거나 정보를 가로채는 악성 프로그램을 일컫는다.

> 보통 인터넷에서 무료로 공개되는 소프트웨어 다운로드 시 함께 설치된다.


* 해킹

> 사용이 허락되지 않은 컴퓨터에 불법으로 접속 및 저장된 파일 또는 정보를 취득하거나 임의로 수정하는 행위

> 운영체제나 정상적인 프로그램을 손상시키는 행위


* 쿠키

> 사용자가 방문한 인터넷 웹 사이트에서 추후에 어떤 용도로든 사용하기 위해서 사용자의 하드디스크에 남기는 정보를 의미한다.

> 사용자와 웹 사이트를 연결해 주는 정보

> 사용자가 특정 홈페이지 접속 시 생성되는 정보를 담은 4KB 이하 임시 파일


* 피싱

> 개인정보와 낚시의 합성어

> 웹 상에서 계좌번호, 신용카드번호, 주민등록번호 등과 같은 개인정보를 입력하도록 유도함으로써 개인정보를 불법적으로 알아내는 사기 수법


* 파밍

> 사용자 컴퓨터에 트로이목마 프로그램을 심어 은행의 공식 인터넷 뱅킹 주소를 변경함

> 고객이 거래 은행의 주소를 입력하면 해커가 만든 위장 사이트로 접속됨

> 고객들은 위장 사이트인 줄 모르고 자신의 금융 정보를 입력하고 해커는 이를 가로챔

> 인터넷 뱅킹 사용 시 평소에 묻지 않던 정보를 모두 입력하라는 화면이 나오면 파밍 가능성을 의심해야 한다.


* IP 스푸핑

> 자신이 공격하고자 하는 컴퓨터를 무력화시키기 위해 자신이 그 컴퓨터인 것처럼 IP 주소를 속이는 행위를 말한다.

> 외부 네트워크 공격자가 임의로 웹사이트를 구성해 일반 사용자의 방문을 유도하여 사용자 시스템 권한을 획득한 뒤 정보를 빼가는 해킹 수법이다.


> 스푸핑  차단 방법

1) 액세스 제어

내부 네트워크에 존재해야 하는 송신지 주소를 가진 외부 네트워크의 패킷은 모두 거부하도록 한다.

2) 필터링

내부 네트워크의 IP 주소 범위에서 송신지 주소를 보유하지 않은 패킷이 외부로 나가는 것을 차단한다.

3) 암호화

IP 스푸핑을 차단하는 가장 좋은 방법은 패킷을 암호화 하는 것이다.


* IP 스니핑

> 네트워크를 통해 전송되는 데이터를 엿듣는 일종의 도청 행위

> 보안의 기본 요소 중 비밀성을 해치는 공격 방법이다.

- TCP/IP 프로토콜은 인터넷이 시작되기 전에 설계된 프로토콜이므로 패킷에 대한 암호화, 인증 등을 고려하지 않아 데이터 통신 보안의 기본 요소 중 비밀성, 무결성 등을 보장할 수 없다.


2. 시스템 보안 방법

입출력 패킷 분석을 통한 트래픽 제어 또는 차단용 방화벽 시스템 사용

> 인터넷과 같은 외부 네트워크와 연결된 내부 네트워크 보호 목적

 침입 탐지 시스템( IDS )과 침입 방지 시스템( IPS )

> 단순한 접근 제어 수준의 방화벽 기능의 한계를 보완하기 위해 등장했다.


1) 방화벽

> 내부 네트워크의 자원 및 정보를 보호하기 위한 시스템이다.

> 기본 구성 요소

* 네트워크 정책

- 제한된 네트워크로부터 서비스 허용 여부를 정의하는 정책

- 실질적인 액세스 제한 방법 및 상위 레벨에서 정의한 서비스 필터링 방법 제시


*  방화벽 사용자 인증 시스템

- 스마트 카드, 인증 토큰, 소프트웨어 매커니즘, 일회용 패스워드 사용


* 패킷 필터링

- 패킷 필터링 라우터로 라우터 인터페이스를 지나는 패킷을 필터링


* 응용 계층 게이트웨이

- 축적 전달 방법 사용하는 경우가 많음

- 게이트웨이는 송신자 서비스가 보내는 정보를 그대로 전달

- 프록시 서버 기능 제공


> 방화벽 종류

* 스크리닝 라우터( Screening Router )

- 네트워크에서 사용하는 프로토콜의 형태

- 송수신지 주소, 프로토콜의 제어 필드, 통신 시 사용하는 포트 번호를 분석

- 내부 네트워크에서 외부 네트워크로 나가는 패킷의 진입을 허가 또는 거절

- 외부 네트워크에서 내부 네트워크로 딘입하는 패킷의 진입을 허가 또는 거절

- OSI 참조 모델의 3계층과 4계층에서 동작하기 때문에 3계층과 4계층에서 동작하는 프로토콜인 IP, TCP 또는 UDP의 헤더에 포함된 내용을 분석한다.



- 장점

> 필터링 속도가 빠르고, 비용이 적게 듦

> 네트워크 및 전송 계층에서 동작하기 때문에 클라이언트와 서버에 변화가 없어도 된다.

> 하나의 스크리닝 라우터로 보호하려는 네트워크 전체를 동일하게 보호할 수 있다.


- 단점

> 네트워크 계층과 전송 계층의 트래픽만 방어할 수 있다.

> 패킷 필터링 규칙을 구성하여 검증하기 어렵다.

> 패킷 내의 데이터 공격을 차단하는 것은 불가능하다.

> 스크리닝 라우터를 통과하거나 거절당한 패킷의 기록을 관리하기 힘들다.


* 베스천 호스트

- 보호된 네트워크에서 유일하게 외부의 공격에 노출된 컴퓨터 시스템을 말한다.

- 내부 네트워크와 외부 네트워크 사이의 게이트웨이 역할을 한다.

- 네트워크 보안상 가장 중요한 위치를 차지하므로 관리자에 의해 철저하게 감시한다.

- 불법적인 침입 의도로 접속한 모든 시스템 기록에 대해서 주기적으로 검사를 실행한다.

- 장점

> 응용 서비스의 종류에 종속적이므로 스크리닝 라우터보다 안전성이 높다.

> 데이터 공격을 확실하게 방어할 수 있다.

> 로그 정보의 생성 및 관리가 용이하다.


- 단점

> 모든 보안 기능이 베스천 호스트에 집중되어 있으므로 베스천 호스트가 손상되면 내부 네트워크를 전혀 보호할 수 없다.

> 각종 로그인 정보가 누출되면 방화벽 역할이 불가능하다.


3. 방화벽 시스템 방식

1) 패킷 필터링 방식

> OSI 참조 모델의 네트워크 계층과 전송계층에서 패킷의 송신지 및 목적지 IP 주소정보, 각 서비스의 포트 번호를 이용한 접속을 제어한다.

2) 응용 프로그램 게이트웨이

> 응용 프로그램 게이퉤이는 OSI 참조모델의 응용 계층에 방화벽 기능이 들어 있다.

> 각 서비스별 프록시를 이용하며, 패킷 필터링 방식처럼 IP 주소 및 TCP 포트를 이용하여 네트워크의 접근을 제어할 수 있다.

3) 회로 레벨 게이트웨이

> OSI 참조모델에서 5계층과 7계층 사이에 있으며, 응용 프로그램 게이트웨이와는 달리 각 서비스별로 프록시가 있는 것이 아니고 어느 응용 프로그램이든 이용할 수 있는 일반적인 프록시만 있다.

4) 혼용 방화벽

> 때에 따라 여러 유형의 방화벽을 복합적으로 구성할 수도 있다.


4. 방화벽 구축 시 고려 사항

> 보호하고자 하는 하드웨어나 소프트웨어, 각종 중요한 정보나 시스템관리에 대한 문서 등을 정의하고 방화벽 시스템 구축 시 고려해야 한다.

> 보호하고자 하는 자원 및 정보들에 대한 위협이 어떤 것들이 있는지 분석해야 한다.

> 사용자 계정을 가진 사용자만이 네트워크를 사용하도록 할 것인지 비인증자라도 제한된 자원을 사용하도록 할 것인지 결정해야 한다.

> 해커와 같이 불법 침입자가 시스템 내부를 공격했을 때 취할 대응책을 마련해야 한다.

> 구매하는데 드는 비용과 구현에 드는 비용을 정확하게 산축해야 한다.


5. 침입 탐지 시스템( IDS )


* 기초 자료의 종류에 따른 분류

- 단일 호스트 기반

> 침입 탐지 시스템을 설치한 단일 호스트에서 생성되고, 수집된 감사 자료를 침입 탐지에 활용하는 방식


- 다중 호스트 기반

> 단일 호스트 기반과 동일한 방식이지만 여러 호스트의 자료를 활용한다.


- 네트워크 기반

> 해당 네트워크 전체의 패킷 관련 자료를 수집하여 침입 탐지에 활용하는 방식


* 침입 행위의 기준에 따른 분류

- 정상적인 행위의 탐지

> 정상적으로 시스템을 사용한 행위의 프로파일을 보유하고 있다가 프로파일의 기준에서 벗어나면 즉시 탐지 작업을 수행하는 방식


- 잘못된 행위의 탐지

> 시스템의 잘 알려진 취약점을 공격하는 행위의 프로파일을 보유하고 있다가 해당 공격이 취해지면 즉시 탐지 작업에 들어가는 방식



6. 침입 방지 시스템( IPS )


'NCS보안3기 > 네트워크' 카테고리의 다른 글

[Network] 라우팅  (0) 2017.04.17
[Network] 라우터  (0) 2017.04.17
[Network] TCP/IP 모델  (2) 2017.04.06
[Network] MAC 계층과 데이터링크 계층  (0) 2017.04.05
[Network] 네트워크 기술  (0) 2017.04.05
Posted by Imp3rio