검수요청.png검수요청.png

"방화벽"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
(3세대 방화벽: 애플리케이션 방화벽)
(오타 수정)
 
(사용자 6명의 중간 판 47개는 보이지 않습니다)
1번째 줄: 1번째 줄:
 +
[[파일:방화벽.png|썸네일|500픽셀|'''[[방화벽]]'''또는 '''파이어월'''(firewall)]]
 +
 
'''방화벽'''(防火壁) 또는 '''파이어월'''(firewall)이란 외부 [[인터넷]]에서 내부 네트워크으로 부정한 액세스가 들어오는 것을 방지하기 위한 [[네트워크 장비]]이다.
 
'''방화벽'''(防火壁) 또는 '''파이어월'''(firewall)이란 외부 [[인터넷]]에서 내부 네트워크으로 부정한 액세스가 들어오는 것을 방지하기 위한 [[네트워크 장비]]이다.
  
5번째 줄: 7번째 줄:
  
 
== 역사 ==
 
== 역사 ==
방화벽이라는 용어는 원래 건물 내 화재를 제한하기 위해 고안된 방벽을 의미했다. 나중에 이 용어는 1980년대 말 네트워크 기술에 적용되었는데, 전 세계적인 이용 및 연결 면에서 인터넷이 매우 새롭게 등장한 당시 등장하였다. 네트워크 보안을 위한 방화벽의 전신은 1980년대 말에 사용된 [[라우터]]였는데, 그 이유는 이들이 네트워크를 다른 네트워크와 분리시켰으므로 한 네트워크에서 다른 네트워크로 문제를 전파하는 것을 막아주었기 때문이다.
+
방화벽이라는 용어는 원래 건물 내 화재를 제한하기 위해 고안된 방벽을 의미했다. 나중에 이 용어는 1980년대 말 네트워크 기술에 적용되었는데, 전 세계적인 이용 및 연결 면에서 인터넷이 매우 새롭게 등장한 당시 등장하였다. 네트워크 보안을 위한 방화벽의 전신은 1980년대 말에 사용된 [[라우터]]였는데, 그 이유는 이들이 네트워크를 다른 네트워크와 분리시켰으므로 한 네트워크에서 다른 네트워크로 문제를 전파하는 것을 막아주었기 때문이다.<ref>〈[https://ko.wikipedia.org/wiki/%EB%B0%A9%ED%99%94%EB%B2%BD_(%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%82%B9) 방화벽 (네트워킹)]〉, 《위키백과》</ref>
 
=== 1세대 방화벽: 패킷 필터 ===
 
=== 1세대 방화벽: 패킷 필터 ===
 
* 패킷 필터링 방식은 OSI 7계층의 3계층(Network Layer)과 4계층(Transport Layer)에서 동작한다.
 
* 패킷 필터링 방식은 OSI 7계층의 3계층(Network Layer)과 4계층(Transport Layer)에서 동작한다.
13번째 줄: 15번째 줄:
 
* [[FTP]]와 같이 파생 세션을 만드는 일부 [[프로토콜]]을 지원하기 위해 모든 포트를 다 열어야 될 수도 있다.
 
* [[FTP]]와 같이 파생 세션을 만드는 일부 [[프로토콜]]을 지원하기 위해 모든 포트를 다 열어야 될 수도 있다.
  
=== 2세대 방화벽: 스테이트풀 익스펜션 ===
+
=== 2세대 방화벽: 스테이트풀 익스팬션 ===
 
* 패킷 필터의 단점을 해결하기 위해서 고안된 것이 패킷 단위의 검사가 아닌 세션 단위의 검사를 하는 스테이트풀 검사이다.
 
* 패킷 필터의 단점을 해결하기 위해서 고안된 것이 패킷 단위의 검사가 아닌 세션 단위의 검사를 하는 스테이트풀 검사이다.
 
* 기본적인 스테이트풀 검사는 다양한 파생 세션을 모두 처리하지 못하는 경우가 있다.
 
* 기본적인 스테이트풀 검사는 다양한 파생 세션을 모두 처리하지 못하는 경우가 있다.
23번째 줄: 25번째 줄:
 
다른 발전 방향으로는 [[IP]] 주소나 MAC 주소 같이 사용자가 기억하거나 이해하기 어려운 대상을 이용해서 방화벽 정책을 수립하던 과거의 방화벽과는 달리 새로운 방화벽들은 사용자에게 보다 친숙한 사람의 이름이나 도메인 주소를 이용해서 정책을 수립할 수 있게 하는 방화벽들도 속속 등장하고 있다.
 
다른 발전 방향으로는 [[IP]] 주소나 MAC 주소 같이 사용자가 기억하거나 이해하기 어려운 대상을 이용해서 방화벽 정책을 수립하던 과거의 방화벽과는 달리 새로운 방화벽들은 사용자에게 보다 친숙한 사람의 이름이나 도메인 주소를 이용해서 정책을 수립할 수 있게 하는 방화벽들도 속속 등장하고 있다.
  
==== 웹 방화벽(WAF) ====
+
==== 웹 방화벽 ====
일반적인 네트워크 방화벽과 달리 웹 어플리케이션 보안을 위한 솔루션이며 HTTP 트래피글 검사하여 보호 대상 홈페이지 서버로 유입되는 해킹을 차단하는 정보 보호 시스템이다.
+
일반적인 네트워크 방화벽과 달리 웹 어플리케이션 보안을 위한 솔루션이며 HTTP 트래픽을 검사하여 보호 대상 홈페이지 서버로 유입되는 해킹을 차단하는 정보 보호 시스템이다.
  
 
최근 웹 해킹으로부터 피해를 방지하기 위하여 홈페이지 서비스를 암호화하여 HTTPS로 서비스하는 홈페이지가 늘어나고 있다. 하지만 방화벽, [[IDS]], [[IPS]]와 같은 솔루션들은 암화된 통신내용을 복호화 할 수 없어 웹 방화벽의 역할이 중요해지고 있다.
 
최근 웹 해킹으로부터 피해를 방지하기 위하여 홈페이지 서비스를 암호화하여 HTTPS로 서비스하는 홈페이지가 늘어나고 있다. 하지만 방화벽, [[IDS]], [[IPS]]와 같은 솔루션들은 암화된 통신내용을 복호화 할 수 없어 웹 방화벽의 역할이 중요해지고 있다.
49번째 줄: 51번째 줄:
  
 
== 기능 ==
 
== 기능 ==
 +
=== 접근 통제 ===
 +
관리자가 방화벽에 통과시킬 접근과 그렇지 않은 접근을 명시하면, 방화벽은 이를 수행한다. 이러한 접근제어는 구현방법에 따라 두 가지로 나뉜다.
 +
==== 프록시 방식 ====
 +
* 세션에 포함되어 있는 정보의 유해성을 검사하기 위해서 방화벽에서 세션을 종료하고 새로운 세션을 형성하는 방식의 방화벽이며, 출발지에서 목적지로 가는 세션을 명시적으로 또는 암시적으로 가로채어서 출발지에서 방화벽까지의 세션과 방화벽에서 목적지까지의 두 세션으로 만든 다음 하나의 세션으로 정보를 넘겨주기 전에 검사를 수행하는 형태이다.
 +
 +
==== 패킷 필터링 방식 ====
 +
* 패킷을 다룬다는 측면에서 TCP/IP의 네트워크 계층에서 동작하는 방화벽이다. 방화벽 관리자는 보호할 네트워크에 적용할 규칙 또는 정책을 설정하여야 하고 설정 되어 있지 않다면 기본 정책이 적용된다. 흔히 커널 레벨에서 수행되고 프록시 방식에 비해 제한된 검사만을 수행하여 더 많은 트래픽을 처리할 수 있다는 장점이 있다.
 +
=== 로깅 및 감사 추적 ===
 +
접속 정보 기록, 네트워크 사용에 따른 통계정보를 남긴다.<ref name="방화벽">emzei, 〈[https://emzei.tistory.com/230 방화벽(Firewall):침입 차단 시스템]〉, 2016-07-06</ref>
 +
 +
=== 네트워크 주소 변환 ===
 +
내부 네트워크에서 사용하는 IP 주소와 외부에 드러나는 주소를 유지할 수 있기 때문에 내부 네트워크에 대한 어느 정도의 보안 기능을 한다. 또한 내부에서 사용하는 IP 주소 수보다 더 적은 외부 IP 주소 수만 사용할 수 있기 때문에 인터넷 통신을 위해서 사용하는 모든 컴퓨터 수 만큼의 IP 주소를 구매할 필요가 없어져 경제적이다.
 +
=== 데이터 암호화 ===
 +
한 방화벽에서 다른 방화벽으로 데이터를 암호화해서 보낸다.
 +
 +
=== 인증 ===
 +
다중 사용자 시스템 또는 망 운용 시스템에서, 시스템이 단말 로그인 정보를 확인하는 보안 절차이다.
 +
==== 메시지 인증 ====
 +
* 게이트웨이 투 게이트 웨이(Gateway-to-Gateway) 형태의 VPN 서비스 제공
 +
==== 사용자 인증 ====
 +
* 게이트웨이 사용시 전송 패킷의 데이터 부분을 제어할 수 있기 때문에 사용자의 인증 가능
 +
==== 클라이언트 인증 ====
 +
* 모바일 사용자를 비록한 특이한 형태의 사용자와 호스트는 IP Base로 제어가 불가능한 경우가 있는데, 이러한 경우 접속을 요구하는 호스트 자체 인증 가능
 +
 +
== 종류 ==
 +
=== 패킷 필터링 ===
 +
가장 초기적인 방화벽 방식으로 네트워크 계층과 전송계층에서 동작하는 방식이다. 패킷 필터링 방식은 데이터 링크 계층에서 네트워크 계층으로 전달되는 패킷을 가로채서 해당 안의 주소와 서비스 포트를 검색하여 정의된 보안 규칙에 따라 서비스의 접근 허용 여부를 결정하게 된다.<ref name="방화벽 방식">별의수다, 〈[https://blog.naver.com/wnrjsxo/221066364387 침입차단시스템(방화벽, Firewall)의 종류]〉, 2017-08-03</ref>
 +
==== 장점 ====
 +
* 다른 방식에 비해 처리속도가 빠름
 +
* 낮은 Layer에서 동작하므로 기존 어플리케이션과 연동이 용이
 +
* 사용자에게 투명한 서비스를 제공
 +
==== 단점 ====
 +
* TCP/IP 헤터는 조작이 쉬움
 +
* 모든 트래픽이 내부/외부 네트워크와 직접 연결되어 변형된 정보가 직접적 영향 줄 수 있음.
 +
* 패킷 헤더의 목적지 주소, 포트, 소스 등의 정보는 해석하지 않아 조작여부 판단 불가
 +
* 강력한 로깅(Logging) 및 사용자 인증 기능 불가
 +
* 트래픽의 접속제어방식과 접속량이 성능에 큰 영향 미침
 +
=== 어플리케이션 게이트웨이 ===
 +
OSI 모델 중 7계층 모델 중 어플리케이션 계층까지 동작하며 통과하는 패킷의 헤더안의 데이터 영역까지도 체크하여 통제한다. 해당 서비스별로 프록시라는 통신 중계용 데몬이 구동되어 각 서비스 요청에 대하여 방화벽 접근 규칙을 적용하고 연결을 대신하는 역할을 수행한다.<ref name="방화벽 방식"></ref>
 +
==== 장점 ====
 +
* 보안성 우수
 +
* 매우 높은 보안정책 실현 및 바이러스 검사 등 부가기능 제공
 +
* 프록시 서버를 활용하여 확정성이 우수
 +
==== 단점 ====
 +
* 속도가 느리며 일부 서비스의 투명도가 떨어짐
 +
* 프록시 사용으로 새로운 서비스에 대한 유연성 부족
 +
=== 서킷 게이트웨이 ===
 +
OSI 7계층 구조에서 5계층(세션계층)과 7계층(응용계층) 사이에서 접근제어를 실시하는 방화벽을 지칭하며, 어플리케이션 게이트웨이와는 달리 각 서비스별로 프록시가 존재하는 것이 아니고, 어느 서비스 프로토콜도 이용할 수 있는 일반적인 대표 프록시를 이용한다. 서킷 게이트웨이 방화벽을 통해서 내부 시스템으로 접속하기 위해서는 사용자측 PC에 방화벽에 위치한 대표 프록시와 통신하기 위한 수정된 클라이언트 프로그램이 필요하다.<ref name="방화벽 방식"></ref>
 +
==== 장점 ====
 +
* 전용 게이트웨이가 아닌 하나의 일반 게이트웨이로 모든 서비스 처리가 가능함.
 +
* 내부의 IP주소를 숨길 수 있음.
 +
==== 단점 ====
 +
* 게이트웨이의 사용을 위해 수정된 클라이언트 모듈이 필요함.
 +
* 지원 불가능한 프로토콜의 존재 가능성 있음.
 +
* 비표준 포트로 우회 접근해오는 접근에 대해서 방어를 못함.
 +
=== 하이브리드 ===
 +
하이브리드 방식은 패킷 필터링 방식과 어플리케이션 방식을 혼합한 것이다. 패킷 필터링의 장점과 어플리케이션 방식의 장점을 결합한 방식으로 패킷 레벨의 접근 제어 뿐만 아니라 응용 프로그램 사용자 제어의 장점을 가지고 있다.<ref name="방화벽 방식"></ref>
 +
==== 장점 ====
 +
* 속도가 빠르고, 투명
 +
* 보안 설정 수준이 높고 변경이 용이
 +
==== 단점 ====
 +
* 관리가 어렵고 복잡함.
 +
=== 상태추적 방식 ===
 +
방화벽의 초기 개념은 크게 두 가지 방식 즉, 패킷 필터링 방화벽과 어플리케이션 게이트웨이 방화벽으로 분류되었다. 하지만 이 두 가지 방식의 방화벽은 완벽한 방화벽 기능을 수행하지 못하거나 속도가 저하되는 등의 여러 가지 단점을 가지고 있었다. 상태추적(Stateful inspection) 방화벽은 이러한 두 가지 방화벽의 단점을 극복하고 장점만 구현한 새로운 개념의 방화벽이다.<ref name="방화벽 방식"></ref>
 +
==== 장점 ====
 +
* 모든 통신채널에 대해 추적 가능
 +
* 한 차원 높은 패킷 필터링 기능 제공
 +
* 응용프로그램 방화벽과 같은 성능 감소 발생하지 않음
 +
* UDP 와 RPC 패킷 추적 가능
 +
* 패킷 내의 데이터 상태와 저항(context)이 저장되고 지속적으로 갱신됨
 +
==== 단점 ====
 +
* 상태목록에 DOS나 DDOS 공격으로 인해 거짓 정보가 가득 차게 되면 장비가 일시적으로 정지하거나 재가동해야 함
 +
* 어떠한 이유로 방화벽을 재구동시 현재 연결에 대한 모든 정보를 잃어버리게 되고 정당한 패킷에 대해 거부 발생
 +
 +
== 형태 ==
 +
=== 스크리닝 라우터 ===
 +
스크리닝 라우터는 IP 필터링 기능이 추가된 라우터를 이용해서, 들어오거나 나가는 패킷에 대한 접근을 제어하는 방법이며, 보통 스크리닝 라우터와 베스션 호스트를 함께 운영한다
 +
==== 장점 ====
 +
* 필터링 속도가 빠름
 +
* 비용 절감
 +
* 네트워크 계층에서 동작하므로 클라이언트와 서버에 변환가 없어도 됨
 +
==== 단점 ====
 +
* 패킷 필터링 규칙을 구성하여 검증하기 어려움
 +
* 패닛 내의 데이터에 대한 공격을 차단하지 못함
 +
=== 베스션 호스트 ===
 +
베스션 호스트(Bastion host)는 중세 성곽의 가장 중요한 수비부분이라는 의미이며, 방화벽 시스템이 가지는 기능 중 가장 중요한 기능을 제공하고, 좀 더 정교한 네트워크 보안을 구현하기 위한 하나의 기본적인 모듈로써 이용된다.
 +
==== 장점 ====
 +
* 스크리닝 라우터 방식보다 안전
 +
* 정보 지향적인 공격의 방어가 가능
 +
* 각종 로깅 정보를 생성 및 관리하기 쉬움
 +
==== 단점 ====
 +
* 베스션 호스트가 손상되면 내부 네트워크를 보호할 수 없음.
 +
* 로그인 정보가 누출되면 내부 네트워크를 보호할 수 없음.
 +
=== 듀얼 홈드 게이트웨이 ===
 +
듀얼 홈드 게이트웨이는 내부 네트워크와 외부 네트워크 사이에 시스템 위치하여 두 개의 네트워크 인터페이스를 가지면서 외부망과 내부망 사이의 IP 트래픽을 안전하게 차단하는 방식이다. 하나의 네트워크 인터페이스는 정보와 연결되고, 다른 하나는 사설 네트워크 호스트 컴퓨터와 연결된다.
 +
==== 장점 ====
 +
* 스크리닝 라우터 방식보다 안전
 +
* 정보 지향적인 공격 방어
 +
* 설치 및 유지 보수와 각종 기록 정보를 생성 및 관리하기 쉬움.
 +
==== 단점 ====
 +
* 제공되는 서비스가 증가할수록 프록시 소프트웨어 가격이 상승
 +
* 로그인 정보 누출 시 네트워크 보호 힘듬.
 +
=== 스크린드 호스트 게이트 ===
 +
스크리닝 라우터와 베스션 호스트 두 개의 시스템을 결합한 형태이다. 침입자는 별개의 두 시스템을 침입해야 비로소 사설 네트워크 보안을 위협 할 수있다. 들어오는 트래픽은 오직 베스션 호스트만 접근 할 수 있게 하며, 내부 시스템으로의 접근을 차단한다.
 +
==== 장점 ====
 +
* 2단계 보안점검 기능
 +
* 네트워크계층과 응용계층에서 방어
 +
==== 단점 ====
 +
* 구축 소요 비용이 많이 듦
 +
* 해커에 의한 스크리닝 라우터의 라우팅 테이블 변경 가능
 +
* 단일 장애 지점(Single Point of Failure)<ref>〈[https://terms.naver.com/entry.nhn?docId=2754971&cid=50307&categoryId=50307 단일 쟁이 지점]〉, 《네이버지식백과》</ref>발생할 수 있음.
 +
* 네트워크 지연이 발생할 수 있음.
 +
=== 스크린드 서브넷 게이트웨이 ===
 +
두 개의 패킷 필터링 라우터와 하나의 베스션 호스트를 이용하여 외부 네트워크와 내부 네트워크 사이에 완충 지대를 두는 방식
 +
==== 장점 ====
 +
* 강력한 보안 기능
 +
* 스크린 호스트 게이트웨이 방식의 장점 계승
 +
* 다단계 방어로 매우 안전
 +
==== 단점 ====
 +
* 구축 소요 비용이 많이 듦
 +
* 서비스 속도가 느림
 +
* 다른 시스템보다 설치와 관리가 어려움
 +
=== 게이트웨이/ 프록시 서버 ===
 +
보안과 성능을 고려하여 서비스별로 게이트웨이를 설치 및 운영한다. 프록시 서버를 이용하여 접근 통제 및 캐싱 기능을 구현한다.
 +
==== 장점 ====
 +
* 강력한 보안 기능
 +
* 모니터링 및 분석 기능 강화
 +
==== 단점 ====
 +
* 방화벽 시스템 구축 비용 고가
 +
 +
== 문제점 ==
 +
=== 제한된 서비스 ===
 +
방화벽 시스템은 (출발지와 목적지의 IP와 Port를 기반으로) 보안 정책에 의해 설정된 접근 규칙에 의하여 단순히 허용과 차단을 결정할 뿐, 허용된 접근 트래픽이 악의적인 의도를 가진 트래픽인지 아닌지를 판단할 수 없다. 지급보다 인터넷이 발전하고, 또 그에 따른 추가적인 시브시 프로토콜들이 개발된다면 방화벽의 기능 또한 개선되고 업그레이드 되어야 한다.<ref name="방화벽 문제점">archiblue, 〈[https://archiblue.tistory.com/72 Firewall 시스템의 한계 및 문제점]〉, 2009-06-25</ref>
 +
 +
=== 우회경로 위협 ===
 +
방화벽의 침입 차단 기능은 방화벽을 통과하는 트래픽에 대해서만 유효하다. 만약 보호해야 할 네트워크내에 방화벽을 거치지 않고 외부 네트워크와 통신을 할 수 있는 경로가 존재한다면, 방화벽의 기능은 무용지물이 될 것이다. 만약 네트워크의 가용성과 안정성을 위해 의도된 이중 경로를 유지해야 한다면, 해당 경로에 대해서도 추가적인 방화벽 설치 등이 고려되어야 한다.
 +
네트워크 관리자나 보안 관리자들이 가장 경계해야 하는 것은 관리자들도 인지하지 못하고 있는 우회경로들이다. 모뎀의 사용은 우회 경로를 만들 수 있는 가장 대표적인 통신수단이다. 모뎀을 이용하면 어떠한 네트워크와도 통신이 가능하고, 또 소홀히 관리하는 모뎀을 통해 외부 침입자들이 방화벽을 우회해서 내부 네트워크로 접근이 가능하기 때문이다.<ref>Ms, Smith〈[http://www.itworld.co.kr/news/108992 "러시아가 라우터를 해킹하고 있다"...미국과 영국 경고]〉, 《아이티월드》, 2018-04-19</ref> 따라서 적절한 모뎀 사용에 대한 통제 정책을 미리 수립하고 전사 보안정책의 일환으로 강력히 추진하여야 한다.<ref name="방화벽 문제점"></ref>
 +
 +
=== 내부 사용자에 의한 보안침해===
 +
보안 전문기관의 통계에 의하면, 세계적으로 발행하고 있는 보안사고의 70%~80%가 내부자에 의해 이루어진다고 한다. 이렇듯 내부자에 의해 발생하는 보안사고가 높게 나타나는 이유는 방화벽의 침입 차단 기능이 앞에서도 언급했듯이 방화벽을 통과하는 트래픽에 대해서만 적용이 가능하기 때문이다. 내부 사용자와 내부사용자, 혹은 내부 사용자와 내부 시스템 간의 접속 트래픽은 방화벽에 전달되지 않는다. 아무리 강력한 접근규칙을 적용한다고 하더라도 방화벽 내부 네트워크 내에서 발생하는 불법 행위에 대해서는 방화벽에서 통제가 불가능하다. 내부 사용자에 의해 발생할 수 있는 보안 침해에 대해서는 별도의 대책이 수립되어야 한다.<ref name="방화벽 문제점"></ref>
 +
 +
== 전망 ==
 +
전통적인 방화벽은 트래픽이 출발하는 도메인과 트래픽이 도착하는 포트를 추적한다. 차세대 방화벽은 여기서 한 단계 더 나아가서 맬웨어 및 데이터 외부 유출에 대비해 메시지 콘텐츠를 감시하고, 위협을 실시간으로 대응하며 저지할 수 있다. 최신 방화벽 제품은 이보다도 더 나아간다. 행동 애널리틱스, 어플리케이션 보안, 제로-데이 멀웨어 검출, 클라우드 및 하이브리드 환경 지원, 심지어 엔드포인트 보호까지 아우른다. 가트너에 따르면 2020년까지 차세대 방화벽은 거의 100%의 POP(internet points of presence)에 도달할 것이다. 그러나 대다수 조직들은 차세대 기능 가운데 한두 개 정도만 사용할 것으로 전망된다.<ref>Maria Korolov, 〈[http://www.ciokorea.com/news/39408 차세대 방화벽이란? 클라우드와 복잡성이 주는 영향은?]〉, 《씨아이오코리아》, 2018-08-29</ref>
 +
 
{{각주}}
 
{{각주}}
 +
 
== 참고자료 ==
 
== 참고자료 ==
 +
* 〈[https://ko.wikipedia.org/wiki/%EB%B0%A9%ED%99%94%EB%B2%BD_(%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%82%B9) 방화벽(네트워킹)]〉, 《위키백과》
 +
* Tim Greene, Brandon Butler, 〈[http://www.ciokorea.com/news/115932 유형·기능·업체로 알아보는 '방화벽의 어제와 오늘']〉, 《CIOkorea》, 2019-01-29
 +
* 바닐라라떼, 〈[https://blog.naver.com/90600074/120147694895 WAF(웹-방화벽) vs FW(침입차단시스템) vs IPS(침입방지시스템)]〉, 2011-12-16
 +
* 차니, 〈[https://m.blog.naver.com/PostView.nhn?blogId=pgh7092&logNo=221148632964&proxyReferer=https%3A%2F%2Fwww.google.com%2F 방화벽(Firewall)의 개념과 주요 기능]〉, 2017-11-26
 +
* Flatinum, 〈[https://needjarvis.tistory.com/127 외부 침입을 차단하는 보안시스템, 방화벽(FIREWALL)]〉
 +
* emzei, 〈[https://emzei.tistory.com/230 방화벽(Firewall):침입 차단 시스템]〉, 2016-07-06
 +
* archiiblue, 〈[https://archiblue.tistory.com/72 Firewall 시스템의 한계 및 문제점]〉, 2009-06-25
 +
* ict-story, 〈[https://ict-story.tistory.com/30 차세대 방화벽 VS IPS]〉, 2017-09-11
  
 
== 같이 보기 ==
 
== 같이 보기 ==
57번째 줄: 212번째 줄:
 
* [[인트라넷]]
 
* [[인트라넷]]
  
{{하드웨어|토막글}}
+
{{하드웨어|검토 필요}}

2023년 8월 4일 (금) 17:25 기준 최신판

방화벽또는 파이어월(firewall)

방화벽(防火壁) 또는 파이어월(firewall)이란 외부 인터넷에서 내부 네트워크으로 부정한 액세스가 들어오는 것을 방지하기 위한 네트워크 장비이다.

개요[편집]

미리 정의된 보안 규칙에 기반한, 들어오고 나가는 네트워크 트래픽을 모니터링하고 제어하는 네트워크 보안 시스템이다. 방화벽은 일반적으로 신뢰할 수 있는 내부 네트워크, 신뢰할 수 없는 외부 네트워크간의 장벽을 구성한다. 서로 다른 네트워크를 지나는 데이터를 허용하거나 거부하거나 검열, 수정하는 하드웨어소프트웨어 장치이다.

역사[편집]

방화벽이라는 용어는 원래 건물 내 화재를 제한하기 위해 고안된 방벽을 의미했다. 나중에 이 용어는 1980년대 말 네트워크 기술에 적용되었는데, 전 세계적인 이용 및 연결 면에서 인터넷이 매우 새롭게 등장한 당시 등장하였다. 네트워크 보안을 위한 방화벽의 전신은 1980년대 말에 사용된 라우터였는데, 그 이유는 이들이 네트워크를 다른 네트워크와 분리시켰으므로 한 네트워크에서 다른 네트워크로 문제를 전파하는 것을 막아주었기 때문이다.[1]

1세대 방화벽: 패킷 필터[편집]

  • 패킷 필터링 방식은 OSI 7계층의 3계층(Network Layer)과 4계층(Transport Layer)에서 동작한다.
  • IP/PORT 기반으로 미리 정의해둔 룰을 기반으로 패킷을 필터링 하며 내부 세션은 관리하지 않는다.
  • 정책을 기반으로 하기에 느리고 우회접근, 패킷 헤더 조작, TCP 헤더의 데이터 영역을 확인하지 않기 때문에 바이러스에 감연된 메일에 취약하다.
  • 이 방화벽은 특정한 IP를 허용 또는 거부하거나 특정한 포트를 허용 또는 거부하는 용도로 사용된다.
  • FTP와 같이 파생 세션을 만드는 일부 프로토콜을 지원하기 위해 모든 포트를 다 열어야 될 수도 있다.

2세대 방화벽: 스테이트풀 익스팬션[편집]

  • 패킷 필터의 단점을 해결하기 위해서 고안된 것이 패킷 단위의 검사가 아닌 세션 단위의 검사를 하는 스테이트풀 검사이다.
  • 기본적인 스테이트풀 검사는 다양한 파생 세션을 모두 처리하지 못하는 경우가 있다.
  • FTP의 능동적/수동적 데이터 세션 등 복잡한 파생 세션을 별도의 정책 추가 없이 모두 처리할 수 있는 확장된 스테이트풀 검사를 하는 방화벽도 있다.

3세대 방화벽: 애플리케이션 방화벽[편집]

  • 패킷 필터 기반의 방화벽으로는 일상적인 트래픽과 같은 진화하는 공격 패턴을 방어하기 어려워지면서 패킷의 내용을 검사하고 더 나아가 애플리에키션에 어떤 영항을 미칠지를 분석하는 방화벽으로 출현하기 시작했다.
  • IPS, 웹 방화벽(WAF), UTM 등으로 불리는 네트워크 장비들이 애플리케이션 방화벽이라고 할 수 있다.

다른 발전 방향으로는 IP 주소나 MAC 주소 같이 사용자가 기억하거나 이해하기 어려운 대상을 이용해서 방화벽 정책을 수립하던 과거의 방화벽과는 달리 새로운 방화벽들은 사용자에게 보다 친숙한 사람의 이름이나 도메인 주소를 이용해서 정책을 수립할 수 있게 하는 방화벽들도 속속 등장하고 있다.

웹 방화벽[편집]

일반적인 네트워크 방화벽과 달리 웹 어플리케이션 보안을 위한 솔루션이며 HTTP 트래픽을 검사하여 보호 대상 홈페이지 서버로 유입되는 해킹을 차단하는 정보 보호 시스템이다.

최근 웹 해킹으로부터 피해를 방지하기 위하여 홈페이지 서비스를 암호화하여 HTTPS로 서비스하는 홈페이지가 늘어나고 있다. 하지만 방화벽, IDS, IPS와 같은 솔루션들은 암화된 통신내용을 복호화 할 수 없어 웹 방화벽의 역할이 중요해지고 있다.

OSI 7 Layer의 애플리케이션 Layer에 위치하고 SQL Injection, XSS등 과 같은 웹 공격을 탐지하고 차단하는 것이다. 직접적인 웹 공격 대응 이 외에도, 정보유출 방지 솔루션, 웹 사이트 위변조방지 솔루션 등으로 활용이 가능하며 웹 방화벽 또한 방화벽과 같이 진화를 거듭해왔다.

1세대 웹 방화벽[편집]
  • 블랙 & 화이트 리스트를 병행하는 방식으로 사용되었다.
  • 관리자가 직접 생성 및 관리를 해야했고, 매우 큰 관리 부담으로 다가왔다.
  • 공격유형이 다양해짐에 따라 등록된 시그니처의 수가 늘어나 성능이나 저하되는 문제도 발생한다.
2세대 웹 방화벽[편집]
  • 보호 대상 웹 어플리케이션을 몇 주간의 모니터링을 통해 분석하여, 화이트리스트 생성을 자동으로 처리해준다.
  • 관리자가 최종 검토 및 관리를 했기에 부담은 여전했다.
  • 빠르게 변화는 웹 환경에 존재하는 다양한 웹 공격 유형을 파악하지 못했기에, 성능 저하 및 오탐 이슈를 피할 수 없었다.
3세대 웹 방화벽[편집]
  • 웹 공격 유형별로 블랙리스트 탐지, 화이트리스트 탐지 및 웹 트래픽 컨텐츠 분석 등의 기업들을 결합하여 공격을 탐지하기에 오탐을 대폭 줄일 수 있다.
  • 특정 공격 유형의 새로운 변종 공격의 경우 최소한의 시그니처 추가 만으로 변종 공격의 방어가 가능하다.
  • 효율적인 관리가 가능하다.

필요성[편집]

  • 인터넷의 이용이 보편화되고, 홈네트워킹, 모바일, 인터네 전화(VoIP) 등의 새로운 네트워크 인프라와 기술이 지속적으로 발전하고 있는 가운데 국내·외의 보안 침해사고가 점점 지능화, 다양화
  • 과거의 단일 시스템을 대상으로 하는 공격에서 웹·바이러스, 스파이웨어처럼 네트워크 서비스 전체의 가용성을 침해하는 공격의 진화
  • 외부로부터의 침입방지
  • 내부로부터 나가는 네트워크의 IP주소 위장

기능[편집]

접근 통제[편집]

관리자가 방화벽에 통과시킬 접근과 그렇지 않은 접근을 명시하면, 방화벽은 이를 수행한다. 이러한 접근제어는 구현방법에 따라 두 가지로 나뉜다.

프록시 방식[편집]

  • 세션에 포함되어 있는 정보의 유해성을 검사하기 위해서 방화벽에서 세션을 종료하고 새로운 세션을 형성하는 방식의 방화벽이며, 출발지에서 목적지로 가는 세션을 명시적으로 또는 암시적으로 가로채어서 출발지에서 방화벽까지의 세션과 방화벽에서 목적지까지의 두 세션으로 만든 다음 하나의 세션으로 정보를 넘겨주기 전에 검사를 수행하는 형태이다.

패킷 필터링 방식[편집]

  • 패킷을 다룬다는 측면에서 TCP/IP의 네트워크 계층에서 동작하는 방화벽이다. 방화벽 관리자는 보호할 네트워크에 적용할 규칙 또는 정책을 설정하여야 하고 설정 되어 있지 않다면 기본 정책이 적용된다. 흔히 커널 레벨에서 수행되고 프록시 방식에 비해 제한된 검사만을 수행하여 더 많은 트래픽을 처리할 수 있다는 장점이 있다.

로깅 및 감사 추적[편집]

접속 정보 기록, 네트워크 사용에 따른 통계정보를 남긴다.[2]

네트워크 주소 변환[편집]

내부 네트워크에서 사용하는 IP 주소와 외부에 드러나는 주소를 유지할 수 있기 때문에 내부 네트워크에 대한 어느 정도의 보안 기능을 한다. 또한 내부에서 사용하는 IP 주소 수보다 더 적은 외부 IP 주소 수만 사용할 수 있기 때문에 인터넷 통신을 위해서 사용하는 모든 컴퓨터 수 만큼의 IP 주소를 구매할 필요가 없어져 경제적이다.

데이터 암호화[편집]

한 방화벽에서 다른 방화벽으로 데이터를 암호화해서 보낸다.

인증[편집]

다중 사용자 시스템 또는 망 운용 시스템에서, 시스템이 단말 로그인 정보를 확인하는 보안 절차이다.

메시지 인증[편집]

  • 게이트웨이 투 게이트 웨이(Gateway-to-Gateway) 형태의 VPN 서비스 제공

사용자 인증[편집]

  • 게이트웨이 사용시 전송 패킷의 데이터 부분을 제어할 수 있기 때문에 사용자의 인증 가능

클라이언트 인증[편집]

  • 모바일 사용자를 비록한 특이한 형태의 사용자와 호스트는 IP Base로 제어가 불가능한 경우가 있는데, 이러한 경우 접속을 요구하는 호스트 자체 인증 가능

종류[편집]

패킷 필터링[편집]

가장 초기적인 방화벽 방식으로 네트워크 계층과 전송계층에서 동작하는 방식이다. 패킷 필터링 방식은 데이터 링크 계층에서 네트워크 계층으로 전달되는 패킷을 가로채서 해당 안의 주소와 서비스 포트를 검색하여 정의된 보안 규칙에 따라 서비스의 접근 허용 여부를 결정하게 된다.[3]

장점[편집]

  • 다른 방식에 비해 처리속도가 빠름
  • 낮은 Layer에서 동작하므로 기존 어플리케이션과 연동이 용이
  • 사용자에게 투명한 서비스를 제공

단점[편집]

  • TCP/IP 헤터는 조작이 쉬움
  • 모든 트래픽이 내부/외부 네트워크와 직접 연결되어 변형된 정보가 직접적 영향 줄 수 있음.
  • 패킷 헤더의 목적지 주소, 포트, 소스 등의 정보는 해석하지 않아 조작여부 판단 불가
  • 강력한 로깅(Logging) 및 사용자 인증 기능 불가
  • 트래픽의 접속제어방식과 접속량이 성능에 큰 영향 미침

어플리케이션 게이트웨이[편집]

OSI 모델 중 7계층 모델 중 어플리케이션 계층까지 동작하며 통과하는 패킷의 헤더안의 데이터 영역까지도 체크하여 통제한다. 해당 서비스별로 프록시라는 통신 중계용 데몬이 구동되어 각 서비스 요청에 대하여 방화벽 접근 규칙을 적용하고 연결을 대신하는 역할을 수행한다.[3]

장점[편집]

  • 보안성 우수
  • 매우 높은 보안정책 실현 및 바이러스 검사 등 부가기능 제공
  • 프록시 서버를 활용하여 확정성이 우수

단점[편집]

  • 속도가 느리며 일부 서비스의 투명도가 떨어짐
  • 프록시 사용으로 새로운 서비스에 대한 유연성 부족

서킷 게이트웨이[편집]

OSI 7계층 구조에서 5계층(세션계층)과 7계층(응용계층) 사이에서 접근제어를 실시하는 방화벽을 지칭하며, 어플리케이션 게이트웨이와는 달리 각 서비스별로 프록시가 존재하는 것이 아니고, 어느 서비스 프로토콜도 이용할 수 있는 일반적인 대표 프록시를 이용한다. 서킷 게이트웨이 방화벽을 통해서 내부 시스템으로 접속하기 위해서는 사용자측 PC에 방화벽에 위치한 대표 프록시와 통신하기 위한 수정된 클라이언트 프로그램이 필요하다.[3]

장점[편집]

  • 전용 게이트웨이가 아닌 하나의 일반 게이트웨이로 모든 서비스 처리가 가능함.
  • 내부의 IP주소를 숨길 수 있음.

단점[편집]

  • 게이트웨이의 사용을 위해 수정된 클라이언트 모듈이 필요함.
  • 지원 불가능한 프로토콜의 존재 가능성 있음.
  • 비표준 포트로 우회 접근해오는 접근에 대해서 방어를 못함.

하이브리드[편집]

하이브리드 방식은 패킷 필터링 방식과 어플리케이션 방식을 혼합한 것이다. 패킷 필터링의 장점과 어플리케이션 방식의 장점을 결합한 방식으로 패킷 레벨의 접근 제어 뿐만 아니라 응용 프로그램 사용자 제어의 장점을 가지고 있다.[3]

장점[편집]

  • 속도가 빠르고, 투명
  • 보안 설정 수준이 높고 변경이 용이

단점[편집]

  • 관리가 어렵고 복잡함.

상태추적 방식[편집]

방화벽의 초기 개념은 크게 두 가지 방식 즉, 패킷 필터링 방화벽과 어플리케이션 게이트웨이 방화벽으로 분류되었다. 하지만 이 두 가지 방식의 방화벽은 완벽한 방화벽 기능을 수행하지 못하거나 속도가 저하되는 등의 여러 가지 단점을 가지고 있었다. 상태추적(Stateful inspection) 방화벽은 이러한 두 가지 방화벽의 단점을 극복하고 장점만 구현한 새로운 개념의 방화벽이다.[3]

장점[편집]

  • 모든 통신채널에 대해 추적 가능
  • 한 차원 높은 패킷 필터링 기능 제공
  • 응용프로그램 방화벽과 같은 성능 감소 발생하지 않음
  • UDP 와 RPC 패킷 추적 가능
  • 패킷 내의 데이터 상태와 저항(context)이 저장되고 지속적으로 갱신됨

단점[편집]

  • 상태목록에 DOS나 DDOS 공격으로 인해 거짓 정보가 가득 차게 되면 장비가 일시적으로 정지하거나 재가동해야 함
  • 어떠한 이유로 방화벽을 재구동시 현재 연결에 대한 모든 정보를 잃어버리게 되고 정당한 패킷에 대해 거부 발생

형태[편집]

스크리닝 라우터[편집]

스크리닝 라우터는 IP 필터링 기능이 추가된 라우터를 이용해서, 들어오거나 나가는 패킷에 대한 접근을 제어하는 방법이며, 보통 스크리닝 라우터와 베스션 호스트를 함께 운영한다

장점[편집]

  • 필터링 속도가 빠름
  • 비용 절감
  • 네트워크 계층에서 동작하므로 클라이언트와 서버에 변환가 없어도 됨

단점[편집]

  • 패킷 필터링 규칙을 구성하여 검증하기 어려움
  • 패닛 내의 데이터에 대한 공격을 차단하지 못함

베스션 호스트[편집]

베스션 호스트(Bastion host)는 중세 성곽의 가장 중요한 수비부분이라는 의미이며, 방화벽 시스템이 가지는 기능 중 가장 중요한 기능을 제공하고, 좀 더 정교한 네트워크 보안을 구현하기 위한 하나의 기본적인 모듈로써 이용된다.

장점[편집]

  • 스크리닝 라우터 방식보다 안전
  • 정보 지향적인 공격의 방어가 가능
  • 각종 로깅 정보를 생성 및 관리하기 쉬움

단점[편집]

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

듀얼 홈드 게이트웨이[편집]

듀얼 홈드 게이트웨이는 내부 네트워크와 외부 네트워크 사이에 시스템 위치하여 두 개의 네트워크 인터페이스를 가지면서 외부망과 내부망 사이의 IP 트래픽을 안전하게 차단하는 방식이다. 하나의 네트워크 인터페이스는 정보와 연결되고, 다른 하나는 사설 네트워크 호스트 컴퓨터와 연결된다.

장점[편집]

  • 스크리닝 라우터 방식보다 안전
  • 정보 지향적인 공격 방어
  • 설치 및 유지 보수와 각종 기록 정보를 생성 및 관리하기 쉬움.

단점[편집]

  • 제공되는 서비스가 증가할수록 프록시 소프트웨어 가격이 상승
  • 로그인 정보 누출 시 네트워크 보호 힘듬.

스크린드 호스트 게이트[편집]

스크리닝 라우터와 베스션 호스트 두 개의 시스템을 결합한 형태이다. 침입자는 별개의 두 시스템을 침입해야 비로소 사설 네트워크 보안을 위협 할 수있다. 들어오는 트래픽은 오직 베스션 호스트만 접근 할 수 있게 하며, 내부 시스템으로의 접근을 차단한다.

장점[편집]

  • 2단계 보안점검 기능
  • 네트워크계층과 응용계층에서 방어

단점[편집]

  • 구축 소요 비용이 많이 듦
  • 해커에 의한 스크리닝 라우터의 라우팅 테이블 변경 가능
  • 단일 장애 지점(Single Point of Failure)[4]발생할 수 있음.
  • 네트워크 지연이 발생할 수 있음.

스크린드 서브넷 게이트웨이[편집]

두 개의 패킷 필터링 라우터와 하나의 베스션 호스트를 이용하여 외부 네트워크와 내부 네트워크 사이에 완충 지대를 두는 방식

장점[편집]

  • 강력한 보안 기능
  • 스크린 호스트 게이트웨이 방식의 장점 계승
  • 다단계 방어로 매우 안전

단점[편집]

  • 구축 소요 비용이 많이 듦
  • 서비스 속도가 느림
  • 다른 시스템보다 설치와 관리가 어려움

게이트웨이/ 프록시 서버[편집]

보안과 성능을 고려하여 서비스별로 게이트웨이를 설치 및 운영한다. 프록시 서버를 이용하여 접근 통제 및 캐싱 기능을 구현한다.

장점[편집]

  • 강력한 보안 기능
  • 모니터링 및 분석 기능 강화

단점[편집]

  • 방화벽 시스템 구축 비용 고가

문제점[편집]

제한된 서비스[편집]

방화벽 시스템은 (출발지와 목적지의 IP와 Port를 기반으로) 보안 정책에 의해 설정된 접근 규칙에 의하여 단순히 허용과 차단을 결정할 뿐, 허용된 접근 트래픽이 악의적인 의도를 가진 트래픽인지 아닌지를 판단할 수 없다. 지급보다 인터넷이 발전하고, 또 그에 따른 추가적인 시브시 프로토콜들이 개발된다면 방화벽의 기능 또한 개선되고 업그레이드 되어야 한다.[5]

우회경로 위협[편집]

방화벽의 침입 차단 기능은 방화벽을 통과하는 트래픽에 대해서만 유효하다. 만약 보호해야 할 네트워크내에 방화벽을 거치지 않고 외부 네트워크와 통신을 할 수 있는 경로가 존재한다면, 방화벽의 기능은 무용지물이 될 것이다. 만약 네트워크의 가용성과 안정성을 위해 의도된 이중 경로를 유지해야 한다면, 해당 경로에 대해서도 추가적인 방화벽 설치 등이 고려되어야 한다. 네트워크 관리자나 보안 관리자들이 가장 경계해야 하는 것은 관리자들도 인지하지 못하고 있는 우회경로들이다. 모뎀의 사용은 우회 경로를 만들 수 있는 가장 대표적인 통신수단이다. 모뎀을 이용하면 어떠한 네트워크와도 통신이 가능하고, 또 소홀히 관리하는 모뎀을 통해 외부 침입자들이 방화벽을 우회해서 내부 네트워크로 접근이 가능하기 때문이다.[6] 따라서 적절한 모뎀 사용에 대한 통제 정책을 미리 수립하고 전사 보안정책의 일환으로 강력히 추진하여야 한다.[5]

내부 사용자에 의한 보안침해[편집]

보안 전문기관의 통계에 의하면, 세계적으로 발행하고 있는 보안사고의 70%~80%가 내부자에 의해 이루어진다고 한다. 이렇듯 내부자에 의해 발생하는 보안사고가 높게 나타나는 이유는 방화벽의 침입 차단 기능이 앞에서도 언급했듯이 방화벽을 통과하는 트래픽에 대해서만 적용이 가능하기 때문이다. 내부 사용자와 내부사용자, 혹은 내부 사용자와 내부 시스템 간의 접속 트래픽은 방화벽에 전달되지 않는다. 아무리 강력한 접근규칙을 적용한다고 하더라도 방화벽 내부 네트워크 내에서 발생하는 불법 행위에 대해서는 방화벽에서 통제가 불가능하다. 내부 사용자에 의해 발생할 수 있는 보안 침해에 대해서는 별도의 대책이 수립되어야 한다.[5]

전망[편집]

전통적인 방화벽은 트래픽이 출발하는 도메인과 트래픽이 도착하는 포트를 추적한다. 차세대 방화벽은 여기서 한 단계 더 나아가서 맬웨어 및 데이터 외부 유출에 대비해 메시지 콘텐츠를 감시하고, 위협을 실시간으로 대응하며 저지할 수 있다. 최신 방화벽 제품은 이보다도 더 나아간다. 행동 애널리틱스, 어플리케이션 보안, 제로-데이 멀웨어 검출, 클라우드 및 하이브리드 환경 지원, 심지어 엔드포인트 보호까지 아우른다. 가트너에 따르면 2020년까지 차세대 방화벽은 거의 100%의 POP(internet points of presence)에 도달할 것이다. 그러나 대다수 조직들은 차세대 기능 가운데 한두 개 정도만 사용할 것으로 전망된다.[7]

각주[편집]

  1. 방화벽 (네트워킹)〉, 《위키백과》
  2. emzei, 〈방화벽(Firewall):침입 차단 시스템〉, 2016-07-06
  3. 3.0 3.1 3.2 3.3 3.4 별의수다, 〈침입차단시스템(방화벽, Firewall)의 종류〉, 2017-08-03
  4. 단일 쟁이 지점〉, 《네이버지식백과》
  5. 5.0 5.1 5.2 archiblue, 〈Firewall 시스템의 한계 및 문제점〉, 2009-06-25
  6. Ms, Smith〈"러시아가 라우터를 해킹하고 있다"...미국과 영국 경고〉, 《아이티월드》, 2018-04-19
  7. Maria Korolov, 〈차세대 방화벽이란? 클라우드와 복잡성이 주는 영향은?〉, 《씨아이오코리아》, 2018-08-29

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 방화벽 문서는 하드웨어에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.