[컴퓨터 보안] 방화벽(firewall) 이란 무엇일까?
방화벽(firewall) 이란 무엇일까?
방화벽의 특징, 종류 등을 알아보자.
방화벽을 왜 사용할까?
화재가 나면 방화벽을 내려 불이 방화벽 뒤로 오지 못하도록 한다. 컴퓨터, 네트워크 보안 측면에서 방화벽은 기업, 대학교 등 거대한 조직에서 사용하는 네트워크를 외부로부터 공격을 감시하고 보안을 강화해 준다.
방화벽의 목적
1. 내부 에서 외부, 외부에서 내부로 가는 모든 트래픽은 방화벽을 거쳐야만 연결이 된다.
2. 내부 보안 정책에 따라 인증 받은 트래픽만 통과 할 수 있다.
3. 방화벽 시스템은 해킹, 침투하기 힘들어야 한다.
방화벽의 기능
1. IP 주소와 프로토콜 값 : 외부나 내부로부터 접근 가능한 인터넷 서비스의 종류를 결정한다.
2. 응용 프로토콜 : 특정 서비스 요청이 어느 방향으로 흐를지 결정해준다.
3. 사용자 식별 : 사용자의 권한을 지정하여 권한마다 특정 서비스에 접근 허가를 결정한다.
4. 네트워크 활동 : 서비스가 어떻게 사용 될 지를 정의한다.
방화벽의 한계
1. 방화벽을 회피하는 침입은 대처가 어렵다.
2. 외부 공격자와 내통하고 있는 내부 공격자의 공격을 막지 못한다.
3. 무선 랜은 보안이 불완전한데, 무선 랜을 사용하여 내부 네트워크에 접근 할 수 있다.
4. 감염된 노트북 같은 이동 저장 장치가 네트워크에 연결되어 사용 될 수 있다.
네트워크 보안에서 방화벽 하나만 사용하는 것이 아닌 다른 보안 기법들과 함께 사용한다.
방화벽의 종류
1. 패킷 필터링 방화벽
들어오고 나가는 IP 패킷에 미리 정해진 규칙들을 적용하여 그 결과에 따라 전달하거나 제거한다. 주로 내부로 들어오거나 나가는 방향 총 2 방향을 검사하도록 세팅한다.
아래 용어를 사용해서 규칙을 만든다.
출발지 IP 주소 : 패킷이 시작된 시스템 IP 주소
도착지 IP 주소 : 패킷이 수신되어야 하는 시스템 IP 주소
출발지, 도착지 전송 계층 주소 : 전송 계층 프로토톨(TCP, UDP) 포트 번호
IP 프로토콜 필드 : 전송 계층 프로토콜 표시
interface : 패킷 도착하거나 출발한 인터페이스
패킷 필터링은 IP 헤더나 TCP헤더의 필드를 비교하는 여러가지 규칙으로 이뤄져 있다. 규칙이 맞으면 통과시켜주고 규칙 중 하나라도 맞지 않으면 아무런 대응을 하지 않는 식으로 사용 된다.
장점
- 단순해서 규칙을 짜기 쉽다.
- 속도가 빠르다
단점
- 패킷 필터 방화벽은 상위 계층을 검사 하지 않는다. 따라서 특정 프로그램의 취약점을 완전히 막을 수 없다.
- 방화벽에 접근 할 수 있는 정보가 제한되어 로그를 남겨 기록하기 제한적이다.
- ip 주소 spoofing 같은 프로토콜 스택 공격에 약하다.
2. 상태 유지 검사 방화벽
패킷 필터링 방화벽 기능 + 연결 상태 확인 = 상태 유지 검사 방화벽
상태 유지 검사 방화벽은 패킷 필터링 방화벽과 똑같은 패킷 검사 기능을 가지는데 추가적으로 TCP 연결에 대한 정보를 기록한다.
더 까다로운 규칙을 만들기 위해서도 있고 추적하기도 쉽다.
3. 응용 레벨 게이트웨이(Application level gateway)
응용 프로그램의 트래픽을 중계하는 역할을 한다.
순서를 아래와 같다.
1. 사용자가 TCP/IP 응용프로그램으로 gateway에 접속
2. gateway는 호스트의 이름을 물어본다.
3. 사용자는 ID, 인증정보를 보낸다.
4. gateway는 호스트의 응용프로그램에 접속하여 데이터를 중간에서 전달하는 역할만 한다.
만약 호스트의 응용프로그램에서 gateway에서 제공하는 proxy 코드를 구현하지 않았다면 방화벽을 통해 지원하지 못한다.
4. 회선 레벨 게이트웨이(Circuit level gatewat)
회선 레벨 게이트웨이도 응용 레벨 처럼 직접적인 연결을 하지 않는다.
회선 레벨 게이트웨이는 2개의 TCP 연결을 설정한다.
1. 회선 레벨 게이트웨이와 내부 시스템의 TCP 사용자 사이 연결
2. 회선 레벨 게이트위에와 외부 시스템의 TCP 사용자 사이 연결
연결이 되면 2개의 TCP사이의 세그먼트를 전달 해준다.
댓글
댓글 쓰기