IT

오늘:
535
어제:
1,622
전체:
288,196

방화벽 디자인

옛사랑 2020.11.08 15:25 조회 수 : 9

방화벽 시스템은 OSI 참조 모델과 관련하여 방화벽 시스템이 동작하는 프로토콜 레이어에 따라 분류가능하다. 3계층인 네트워크 계층과 4계층인 전송계층에서 패킷필터링 기능을 수행하는 스크린 라우터와 응용계층에서 패킷필터링 기능과 인증 기능을 수행하는 응용 계층 게이트웨이로 분류된다.

 

스크린 라우터(Screeing Router)

스크린 라우터는 OSI참조 모델의 계층 3과 계층 4에서 동작되며, IP(Internet Protocol), TCP(Transmission Control Protocol)혹인 UDP의 헤더에 포함된 내용을 분석해서 동작한다.

네트워크에서 사용하는 통신 프로토콜의 형태, 출발지 주소와 목적지 주소, 통신 프로토콜의 제어 필드 그리고 통신시 사용하는 포트 번호를 분석해서 내부 네트워크에서 외부 네트워크로 나가는 패킷 트래픽을 허가 및 거절하거나 혹은 외부 네트워크에서 내부 네트워크로 진입하는 패킷 트래픽의 진입 허가 및 거절을 수행하는 라우터이다.

 

이러한 진입 허가 혹은 거절 결정은 패킷필터 규칙에 따른 라우팅 테이블에 의해 결정된다. 일반 패킷과 특수한 프로토콜에 입각한 포트로 전송되는 패킷을 구별하는 능력 때문에 패킷 필터 라우터라고 한다.

스크린샷 2020-11-08 오후 3.22.26.png

 

패킷 필터의 동작

스크린라우터로 연결에 대한 요청이 입력되면, IP, TCP 또는 UDP 패킷 헤더를 분석하여 근원지/목적지의 주소와 포트 번호, 제어 필드의 내용을 분석하고, 이들을 패킷 필터 규칙에 적용하여 계속 진입시킬 것인지 아니면 거절할 것인지를 판별한다. 연결 요청 패킷의 진입이 허가되면 이 후 모든 패킷은 연결 단절이 발생할 때까지 모두 혀용된다.

스크린샷 2020-11-08 오후 3.24.54.png

 

패킷 필터 규칙

패킷 필터 규칙은 출발지 주소, 출발지 포트 번호, 목적지 주소, 목적지 포트 번호, 프로토콜 플래그, 행위(허가/거절) 등으로 구성된다.

이러한 패킷 필터 규칙이 정해지면 인터넷 주소에 적용하는 허가/거절하는 조건의 순차적인 접근 집합인 액세스 리스트를 정의 한다.

스크린 라우터는 이러한 액세스 리스트를 가지고 프로그램 되며, 패킷을 허가 혹은 거절할 것인지를 액세스 리스트에 있는 행위에 대해 순차적으로 결정하며, 패킷에 해당하는 액세스 리스트가 나타날 때까지 혹은 액세스 리스트에 도달할 때까지 순차적으로 점검한다.

 

  • 장점
  • 필터링 속도가 빠르고, 비용이 적게 든다.
  • 네트워크 계층에서 동작하기 때문에 클라이언트와 서버에 변화가 없어도 된다.
  • 사용자에 대해 투명성을 유지한다.
  • 하나의 스크린 라우터로 보호하고자 하는 네트워크 전체를 동일하게 보호할 수 있다.
  • 단점
  • 네트워크 계층과 트랜스포트 계층에 입각한 트래픽만을 방어할 수 있다.
  • 패킷 필터링 규칙을 구성하여 검증하기 어렵다.
  • 패킷내의 데이터에 대한 공격을 차단하지 못한다.
  • 스크린 라우터를 통과 혹은 거절당한 패킷에 대한 기록(log)를 관리하기 힘들다.
 

 

Bastion 호스트

Bastion 호스트는 통신망을 보호하는데 중요한 방화벽 시스템으로 사용되며, 네트워크 관리자가 정기적으로 주의 깊게 감시 및 점검하여야 한다. Bastion 호스트로는 상용 제품인 SPARCstation, IBM/AIX, NT Server 등이 사용될 수 있으며, 이들은 방어 기능이 철저히 구현된 호스트이다. 이러한 Bastion 호스트는 인터넷 등의 외부 네트워크와 내부 네트워크를 연결해 주는 방화벽 시스템 역할을 수행한다. 인터넷 사용자가 내부 네트워크로의  액세스를 원할 경우 우선 Bastion 호스트를 통과 하여야만 내부 네트워크를 액세스하여 자원 및 정보를 사용할 수 있다.

불법 침입자가 Bastion 호스트에 있는 중요한 정보를 악용하여 내부 네트워크로 접근하는 것을 방지하기 위해서는 Bastion 호스트 내에 존재하는 모든 사용자 계정을 지워야 하며, 중요하지 않은 파일이나 명령 및 유틸리티, IP forwarding 파일 그리고 라우팅 정보 등을 삭제해야 한다. Bastion 호스트로 입력시 강력한 인증 기법을 구현하여야 하며, Bastion 호스트는 내부 네크워크로의 접근에 대한 기록(log), 감사 추적을 위한 기록 및 모니터링 기능을 가지고 있어야 한다. 

 

스크린샷 2020-11-08 오후 9.59.25.png

 

 

 - 장점

  • 응용 서비스 종류에 보다 종속적이기 때문에 스크린 라우터 보다 안전하다.
  • 정보 지향적인 공격을 방어할 수 있다.
  • 각종 기록(log) 정보를 생성 및 관리하기 쉽다.

 - 단점

  • Bastion 호스트가 손상되면 내부 네트워크를 보호할 수 없다.
  • 로그인 정보가 누출되면 내부 네트워크를 보호할 수 없다.

 

Dual-Homed 게이트웨이

Dual-Homed 게이트웨이는 두개의 네트워크 인터페이스를 가진 Bastion 호스트를 말하며, 하나의 네트워크 인터페이스는 인터넷 등 외부 네트워크에 연결되며, 다른 하나의 네트워크 인터페이스는 보호하고자 하는 내부 네트워크에 연결되며, 양 네트워크간의 라우팅은 존재하지 않는다. 따라서 양 네트워크간의 직접적인 접근은 허용되지 않는다.

 

만약 라우팅이 가능하면 외부 네트워크로부터 네트워크로의 액세스가 가능하다. 라우팅이 없는 Dual-Homed 게이트웨이를 이용하여 인터넷 혹은 내부 네트워크의 정당한 사용자들이 응용 서비스를 제공받는 방법은 두 가지로 구분되는데, 첫째 방법은 Dual-Homed 게이트웨이상에서 실행되며 서비스를 제공하는 proxy서버를 사용하는 것이고, 두 번째 방법은 응용 서비스를 제공해주는 Dual-Homed 게이트웨이에 직접 로그인한 다음 다시 내부 네트워크로 접근하는 것인데, 이 경우 강력한 인증 방법이 게이트웨이에 구현되어야 한다.

따라서 해커나 불법 침입자가 악용할 소지가 있는 명령어(suid, sgid 등), 유틸리티 및 불필요한 서비스, 프로그래밍 도구(컴파일러 등)를 이들이 사용할 수 없도록 Dual-Homed 게이트웨이에서 삭제하여야 하며, 라우팅이 되지 않도록 하여야 한다. 또한 로그인에 대한 기록 정보 및 감시 추적에 필요한 기록을 정확히 유지 관리하여야 합니다. 외부 네트워크로부터 내부 네트워크로 진입하기 위해서는 Dual-homed 게이트웨이를 통과하여야 한다.

스크린샷 2020-11-08 오후 10.35.05.png

 

 

  • 장점
  • 응용 서비스 종류에 좀더 종속적이기 때문에 스크린 라우터보다 안전하다.
  • 정보 지향적인 공격을 방어할 수 있다.
  • 각종 기록 정보를 생성 및 관리하기 쉽다.
  • 설치 및 유지보수가 쉽다.
  • 단점
  • 제공되는 서비스가 증가할수록 proxy 소프트웨어 부가가 많이 걸린다.
  • 게이트웨이가 손상되면 내부 네트워크를 보호할 수 없다.
  • 로그인 정보가 누출되면 내부 네트워크를 보호할 수 없다.

 

 

 

스크린(Screened)호스트 게이트웨이

스크린 호스트 게이트웨이는 Dual-Homed 게이트웨이와 스크린 라우터를 혼합하여 사용한 방화벽 시스템이다. 방화벽 시스템의 구성 방법은 인터넷과 Bastion호스트 사이에 스트린 라우터를 접속하고, 스트린 라우터와 내부 네트워크 사이에서 내부 네트워크상에 Bastion 호스트를 접속한다.

 

인터넷과 같은 외부 네트워크로부터 내부 네트워크로 들어오는 패킷 트래픽을 스크린 라우터에서 패킷 필터 규칙에 의해 1차로 방어하고, 스크린 라우터를 통과한 트랙픽은 모두 proxy서버를 구동하는 Bastion 호스트에서 입력되는 트래픽을 점검하여, 스크린 라우터 혹은 Bastion 호스트를 통과하지 못한 모든 패킷 트래픽은 거절한다.

 

내부 네트워크로부터 인터넷 등으로 나가는 트래픽은 1차로 proxy서버를 구동하는 Bastion 호스트에서 점검한 후 통과된 트래픽을 스크린 라우터로 보내고 스크린 라우터는 Bastion 호스트로부터 받은 트래픽을 인터넷등의 외부 네트워크로 송신할 것인지 결정한다. Bastion 호스트와 스크린 라우터를 통과한 트래픽만이 외부 네트워크로 전달되게 된다. Bastion 호스트는 외부 네트워크로 또는 외부 네트워크로부터의 서비스 요청을 허용할 것인지 아니면 거절할 것인지를 결정하기 위해서 응용 계층의 Proxy서버를 구동한다.

 

스크린 라우터의 라우팅 테이블은 외부 트래픽이 Bastion 호스트로 입력되도록 구성되어야만 하며, 이 스크린 라우터의 라우팅 테이블은 침입자로부터 안전하게 보호되어야 한고 비인가된 변환을 허용해서는 안된다. 만약 라우팅 테이블이 변화되어 외부 트래픽이 Bastion 호스트로 입력이 되지 않고 곧바로 내부 네트워크로 진입할 수 있다면 해커 및 불법 침입자는 내부 네트워크의 자원 및 정보를 변환, 파괴 등을 할 수 있다.

 

스크린샷 2020-11-08 오후 10.35.45.png

 

  • 장점
  • 2 단계로 방어하기 때문에 매우 안전하다.
  • 네트워크 계층과 응용 계층에서 방어하기 때문에 공격이 어렵다.
  • 가장 많이 이용되는 방화벽 시스템이며, 융통성이 좋다.
  • Dual-Homed게이트웨이의 장점을 그대로 가진다.
  • 단점
  • 해커에 의해 스크린 라우터의 라우팅 테이블이 변경되면 이들을 방어 할 수 없다.
  • 방화벽 시스템 구축 비용이 많이 든다.

 

 

 

스크린 서브네트 게이트웨이

 

인터넷과 내부 네트워크를 스크린된 게이트웨이를 통해서 연결하며, 일반적으로 스크린된 서브네트에는 방화벽 시스템이 설치되어 있으며, 인터넷과 스크린된 서브네트 사이 그리고 서브네트와 내부 네트워크 사이에는 스크린 라우터를 사용한다. 이와 같은 방화벽 시스템의 구성도는 아래와 같다.

스크린샷 2020-11-08 오후 10.36.11.png

 

스크린 라우터는 인터넷과 스크린된 서브네트 그리고 내부 네트워크와 스크린된 사이에 각각 놓이며, 입출력되는 패킷 트래픽을 패킷 필터 규칙을 이용하여 필터링하게 되며, 스크린된 서브네트에 설치된 Bastion 호스트는 Proxy 서브(응용 게이트웨이)를 이용하여 명확히 진입이 허용되지 않는 모든 트래픽을 거절하는 기능을 수행한다. 이러한 구성에서 스크린된 서브네트에 대한 액세스는 Bastion호스트를 통해서만 가능하기 때문에 침입자가 스크린된 서브네트를 통과하는 것은 매우 어렵다.

 

만야 인터넷을 통해 내부 네트워크로 침입하려고 한다면 침입자는 자기가 자유롭게 내부 네트워크를 액세스 할 수 있도록 인터넷, 스크린된 서브네트 그리고 내부 네트워크의 라우팅 테이블을 재구성해야만 가능한다. 그러나 스크린 라우터가 존재하기 때문에 이는 힘들게 된다. 비록 Bastion호스트가 침해되더라고 침입자는 내부 네트워크상에 존재하는 호스트로 침입해야 하고, 그리고 스크린된 서브네트를 액세스 하기 위해서 스크린 라우터를 통과해야 한다.

 

  • 장점
  • 스크린된 호스트게이트웨이 방화벽 시스템의 장점을 그대로 가진다.
  • 융통성이 좋다.
  • 해커들이 내부 네트워크를 공격하기 위해서는 방화벽을 통과할 것이 많아 진다.
  • 매우 안전하다.
  • 단점
  • 다른 방화벽 시스템들 보다 설치하기 어렵고, 관리하기 어렵다.
  • 방화벽 시스템 구축 비용이 많이든다.
  • 서비스 속도가 느리다.

 

 

Proxy 서버/응용 게이트웨이

 

응용 게이트웨이 혹인 proxy 서버는 방화벽 시스템(일반적으로 Bastion 호스트)에서 구동되는 응용 소프트웨어를 말하는데 Store-and-forward트래픽뿐만 아니라 대화형의 트래픽을 처리할 수 있으며, 사용자 응용 계층(OSI참조 모델의 계층)에서 트래픽을 분석할 수 있도록 프로그램된다. 따라서 이것은 사용자 단계와 응용 프로토콜 단계에서 액세스 제어를 제공 할 수 있고, 응용 프로그램의 사용에 대한 기록(log)을 유지하고 감시 추적을 위해서도 사용될 수 있다. 응용 게이트웨이는 사용자 단계에서 들어오고 나가는 모든 트랙픽에 대한 기록을 관리하고 제어할 수 있으며, 해커 및 불법 침입자를 방어하기 위해서 강력한 인증 기법이 필요한다.

 

응용 게이트웨이는 사용되는 응용 서비스에 따라 각각 다른 소프트웨어를 구현하여 사용하기 때문에 고수준의 보안을 제공할 수 있다. 네트워크에 첨가되고 보호가 필요한 새로운 응응이 생기면 이를 위해 새로운 특수 목적용 코드를 생성해야 한다. 응용 레벨 게이트웨이를 사용하기 위해서 사용자는 응용 게이트웨이 장치에 로그인 하거나 서비스를 이용할 수 있는 특수한 클라이언트 응용 서비스를 실현해야 한다. 각각 응용에 따라 다르게 사용하는 특수한 게이트웨이는 제각기 내부에 관리 도구와 명령 언어를 가지고 있다.

 

응용 게이트웨이는 실제 서버의 관점에서 볼 때 클라이언트처럼 동작하며, 클라이언트 관점에서 볼 때는 실재 서버처럼 동작한다. 응용 게이트웨이의 실현 예는 텔넷 게이트웨이, FTP 게이트웨이, sendmail, NTP News Forwarder 등이 있다.

스크린샷 2020-11-08 오후 10.36.40.png

 

 

  • 장점
  • 응용 서비스마다 각각 다른 응용 게이트웨이를 구현 하므로 보다 안전하게 보호할 수 있다.
  • 응용 사용에 따른 기록 및 감시 추적을 유지관리 가능하다.
  • 융통성이 좋다.
  • 정보보호 서비스를 응용 게이트웨이 구현 가능하다.
  • 단점
  • 응용 서비스마다 제각기 다른 응용 게이트웨이가 필요하다.
  • 사용되는 응용 서비스가 증가할 수록 구축 비용이 증가한다.