외부망과 내부망은 별개의 네트워크를 가지고 있다. 이렇기 때문에 방화벽은 외부망과 내부망 사이에 존재하며, 외부망 사용자가 내부망에서 제공하는 서비스를 사용하려면 반드시 방화벽 시스템을 통과해야 한다.
Traffic Monitering
Traffic Control
: 오고가는 트래픽을 모니터링하고 이상이 생기면 조절할 수 있다. 따라서 공격의 시간을 Delay시키고, 관리자가 대응할 수 있는 시간을 만들며 공격을 어렵게 한다.
NAT (네트워크 주소 변환)
: 내부 네트워크 사설 IP를 공인 IP로 변환하는 기술 => 외부와 통신 가능
: 내부 네트워크가 노출되지 않도록 해준다.
VPN
: 공용 네트워크를 통해 개인 혹은 기업의 내부 네트워크에 안전하게 연결해 주는 기술
: 내부 traffic 노출을 차단한다.
네트워크 서비스가 의도한 사용자에게 제공되지 않도록 하는 악의적 공격으로, 일반적으로 많은 트래픽 요청으로 서버를 과부하 상태로 만든다.
SYN flooding
: 공격자가 다수의 TCP연결 요청을 보내지만 이를 완성하지 않아 서버가 반응을 대기하게 만든다. 많은 트래픽으로 과부하 상태로 만든다. -> 정당한 사용자의 접속을 방해한다.
방지 전략
: 서버가 연결 요청의 정당성을 확인할 수 있도록 SYN 쿠키와 같은 기술을 사용한다.
: 단일 IP 주소에서 발생할 수 있는 연결 수를 제한한다.
: IDS,IPS를 활용하고, 속도에 제한을 둔다.
민감한 내부 데이터가 무단으로 변경되거나 접근되는 것을 방지하여 기밀성, 무결성 및 가용성(CIA)을 유지하는 것
인증된 사용자나 장치만 내부 네트워크에 접근할 수 있도록 제어를 구현하는 것.
패킷의 상태를 보지 않고 필터링한다 -> 조건을 따지지 않고 전체 패킷을 다 검사하겠다는 뜻
Access Control List : 특정 패킷의 허용 또는 차단을 결정하는 규칙의 집합 - stateless packet filter시 사용하는 지표
패킷의 상태를 추적하여 그 상태에 따라 검사하고 결정하는 방화벽
=> 패킷의 상태: 요청, 응답 등
애플리케이션 계층에서 동작하며, 특정 애플리케이션 서비스의 요청과 응답을 필터링한다.
작동 방식
: 서버와 사용자 사이에 위치해 양쪽의 트래픽을 중개한다. 클라이언트의 요청을 검토한 후 서버에 전송한다.
패킷 내부의 콘텐츠를 검사하여 악성 소트프웨어나 비정상적인 요청을 차단한다.(application layer protocol 공격을 차단)
사용자 인증이 가능하다
모든 트래픽을 중개하기 때문에 지연이 발생할 수 있다.
구현이 복잡하고 비용이 많이 든다.
IP 스푸핑은 공격자가 스푸핑된 IP 주소(가짜 주소)를 사용하여 패킷을 보낼 때 발생한다. 즉, 원래의 출처를 숨기고 다른 송신자처럼 보이도록 하는 기술이다.
확연한 출처 불명확성: 라우터는 데이터 패킷이 실제로 주장하는 출처에서 온 것인지 확인할 수 없다. 공격자는 일반적으로 공용 네트워크에서 IP 주소를 쉽게 스푸핑하여 방화벽을 우회할 수 있다.
애플리케이션별 특수 처리 필요: 여러 개의 애플리케이션이 동시에 실행 중인 경우, 각각의 애플리케이션에 대해 별도의 게이트웨이가 필요할 수 있다. 이는 복잡성을 추가하고 관리가 어려워질 수 있다.
클라이언트 소프트웨어의 요구: 클라이언트는 게이트웨이에 접속하기 위해 프로키시 설정을 해야 하며, 이 과정에서 사용자는 웹 브라우저에 프록시의 IP 주소를 수동으로 설정해야 한다.