컴퓨터 보안 - [Firewall]

윤형·2024년 12월 6일

Security

목록 보기
12/14

Firewall

외부망과 내부망은 별개의 네트워크를 가지고 있다. 이렇기 때문에 방화벽은 외부망과 내부망 사이에 존재하며, 외부망 사용자가 내부망에서 제공하는 서비스를 사용하려면 반드시 방화벽 시스템을 통과해야 한다.

Firewall 서비스

  • Traffic Monitering

  • Traffic Control
    : 오고가는 트래픽을 모니터링하고 이상이 생기면 조절할 수 있다. 따라서 공격의 시간을 Delay시키고, 관리자가 대응할 수 있는 시간을 만들며 공격을 어렵게 한다.

  • NAT (네트워크 주소 변환)
    : 내부 네트워크 사설 IP를 공인 IP로 변환하는 기술 => 외부와 통신 가능
    : 내부 네트워크가 노출되지 않도록 해준다.

  • VPN
    : 공용 네트워크를 통해 개인 혹은 기업의 내부 네트워크에 안전하게 연결해 주는 기술
    : 내부 traffic 노출을 차단한다.


방화벽의 기능

1. Denial of Service(Dos)를 막는다

네트워크 서비스가 의도한 사용자에게 제공되지 않도록 하는 악의적 공격으로, 일반적으로 많은 트래픽 요청으로 서버를 과부하 상태로 만든다.

  • SYN flooding
    : 공격자가 다수의 TCP연결 요청을 보내지만 이를 완성하지 않아 서버가 반응을 대기하게 만든다. 많은 트래픽으로 과부하 상태로 만든다. -> 정당한 사용자의 접속을 방해한다.

  • 방지 전략
    : 서버가 연결 요청의 정당성을 확인할 수 있도록 SYN 쿠키와 같은 기술을 사용한다.
    : 단일 IP 주소에서 발생할 수 있는 연결 수를 제한한다.
    : IDS,IPS를 활용하고, 속도에 제한을 둔다.

2. 내부 데이터 불법 수정 또는 접근 방지

민감한 내부 데이터가 무단으로 변경되거나 접근되는 것을 방지하여 기밀성, 무결성 및 가용성(CIA)을 유지하는 것

  • 방지 전략
    : 사용자 장치를 철저하게 제한하고, 로그를 자세히 기록하여 변경을 추적하고 감시한다.
    : 민감한 데이터를 암호화 하여 해독하기 어렵게 한다.

3. 내부 네트워크에 대한 권한 있는 접근 허용

인증된 사용자나 장치만 내부 네트워크에 접근할 수 있도록 제어를 구현하는 것.


방화벽 종류

Stateless packet filter

패킷의 상태를 보지 않고 필터링한다 -> 조건을 따지지 않고 전체 패킷을 다 검사하겠다는 뜻

  • 빠르다.
  • 구현이 쉽다
  • IP 주소, 포트 번호등과 같은 고정된 특징만을 기반으로 검사
  • 패킷 내용에 대한 깊은 분석이 되질 않아 한계가 있다.
  • 사용자 별 서비스 제공이 불가능
  • IP주소 위변조 여부 판단 불가능

ACL

Access Control List : 특정 패킷의 허용 또는 차단을 결정하는 규칙의 집합 - stateless packet filter시 사용하는 지표

Stateful packet filter

패킷의 상태를 추적하여 그 상태에 따라 검사하고 결정하는 방화벽
=> 패킷의 상태: 요청, 응답 등

  • 더 정교한 방어가 가능하다
  • 상태 정보를 알아야 하기 때문에 메모리와 CPU 자원의 소모가 크다.
  • 대량의 요청이 있으면 성능이 저하된다.
  • 트래픽 특성을 필터하기 위한 조건을 세우기 까다롭고 설정과 유지보수가 복잡하다.

Aplication gateway(프록시 방화벽)

애플리케이션 계층에서 동작하며, 특정 애플리케이션 서비스의 요청과 응답을 필터링한다.

  • 작동 방식
    : 서버와 사용자 사이에 위치해 양쪽의 트래픽을 중개한다. 클라이언트의 요청을 검토한 후 서버에 전송한다.

  • 패킷 내부의 콘텐츠를 검사하여 악성 소트프웨어나 비정상적인 요청을 차단한다.(application layer protocol 공격을 차단)

  • 사용자 인증이 가능하다

  • 모든 트래픽을 중개하기 때문에 지연이 발생할 수 있다.

  • 구현이 복잡하고 비용이 많이 든다.

방화벽의 한계점

IP Spoofing

IP 스푸핑은 공격자가 스푸핑된 IP 주소(가짜 주소)를 사용하여 패킷을 보낼 때 발생한다. 즉, 원래의 출처를 숨기고 다른 송신자처럼 보이도록 하는 기술이다.

라우터의 한계

확연한 출처 불명확성: 라우터는 데이터 패킷이 실제로 주장하는 출처에서 온 것인지 확인할 수 없다. 공격자는 일반적으로 공용 네트워크에서 IP 주소를 쉽게 스푸핑하여 방화벽을 우회할 수 있다.

어플리케이션과 게이트웨이 한계

  • 애플리케이션별 특수 처리 필요: 여러 개의 애플리케이션이 동시에 실행 중인 경우, 각각의 애플리케이션에 대해 별도의 게이트웨이가 필요할 수 있다. 이는 복잡성을 추가하고 관리가 어려워질 수 있다.

  • 클라이언트 소프트웨어의 요구: 클라이언트는 게이트웨이에 접속하기 위해 프로키시 설정을 해야 하며, 이 과정에서 사용자는 웹 브라우저에 프록시의 IP 주소를 수동으로 설정해야 한다.

내부 공격자 방어 취약성

  • 내부 공격자의 위험: IP 스푸핑은 외부로부터의 공격뿐 아니라 내부에서의 공격에도 취약하다. 즉, 내부의 악의적인 사용자가 스푸핑된 IP 주소를 사용하여 시스템에 침입할 수 있다.

데이터 내용 확인의 취약성

  • 문서 내 악성코드: IP 스푸핑을 통해 공격자는 데이터를 조작하거나 출처를 위장하여 악성 코드를 포함한 문서를 전달할 수 있다. 이로 인해 데이터의 진위 여부를 확인하기가 더 어려워진다.
profile
제가 관심있고 공부하고 싶은걸 정리하는 저만의 노트입니다.

0개의 댓글