안녕하세요 방화벽에 대해 공부중인 보안어린이 입니다.
공부를 하다가 궁금한점이 있어서 문의드려요.
1.상태저장/비저장 방화벽
: 요즘 나오는 방화벽, 기업들이 사용하는 방화벽은 대부분 상태저장 인가요?
아니면 상황따라 비저장 형태를 쓰기도 하는지.. 편의 등 고려하면 상태저장 사용할것 같은데
현황이 궁금합니다.
2. 인바운드 all 차단하였음에도 악성 C&C 서버와 통신할 수 있는 이유?
: 제가 이해한 바로는 인바운드는 내부로 들어오는 트래픽, 아웃바운드는 나가는 트래픽 입니다.
그런데 인바운드를 all 차단하고, 아웃바운드만 열어놓아도 외부 악성코드가 내부로 들어올 수
있다고 들었습니다. 인터넷에 아웃바운드 악성코드 이렇게 검색해도 아웃바운드를 통해
악성코드가 다운로드 될 수 있다고 하고...
최초에 서버가 외부서버에 아웃바운드로 요청을 날리고, 그게 성공하면 그 Reply 값은
인바운드 차단정책이 있더라도 상태저장 방화벽 특성상 허용이 되는건가요?
그러면 인바운드가 차단되어있고, 아웃바운드만 허용되어 있는데 악성코드에 감염되는 경우는
서버가 외부에 안전하지 않은 서버에 잘못 요청을 날렸을 때 인가요?
방화벽 쉽게 생각햇는데 자세히 들어가니 어렵네요 ㅠ
전문가 분들의 도움 부탁드립니다.
감사합니다.
11개의 답변이 있습니다.
1. 요즘 기업들이 사용하는 방화벽의 대부분은 상태저장 방화벽 입니다.
왜냐하면, 보안성이 높고 정책 설정이 간편합니다.
최신 방화벽(UTM, NGFW)은 애플리케이션 레벨에서 분석해야 하므로 대부분 상태저장 방식을 사용합니다.
비저장 방화벽은 특정 환경(고속 라우팅, DDoS 방어)에서 보조적으로 사용합니다.
참고로, 고성능이 필요한 네트워크 환경(예:ISP, 대규모 데이터센터) 에서는 개별 패킷을 검사하므로 매우 빠른 처리가 가능합니다. 다만, 세션을 추적하지 않기 때문에 공격 방어에는 취약합니다.
2. 아웃바운드 트래픽이 허용되어 있다면, 내부에서 외부 악성 서버로 요청을 보내고, 이에 대한 응답이 들어올 수 있기 때문입니다.
다시말해, 상태저장 방화벽은 요청-응답 관계를 기억하므로, 내부에서 아웃바운드 요청을 보내면 인바운드가 차단되어 있어도 응답을 받습니다.
그리고, 악성코드 감염 후 내부에서 C&C 서버로 아웃바운드 요청을 보내면, 방화벽이 정상적인 트래픽으로 인식하여 허용할 수 있습니다.
이를 방어하려면 Egress Filtering, DNS 보안, NGFW 활용이 필수입니다.
참고하세요.
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입1.기업 환경에서 대부분 Stateful 방화벽을 많이 사용합니다.
ex) 정교한 트래픽 제어 가능 , 통신 세션을 효과적으로 관리, 보안성 및 편의성
2.감염 경로에 문제점이 악의적인 웹사이트 방문과 악성파일 다운로드, 취약한 외부서비스 접근으로
볼수 있겠네요 .. 방화벽 정책을 아무리 잘 적용하더라도 내부 직원들의 보안 관리가 필요합니다.
그래서ㅡ end point security 솔루션이 필요하죠
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입요즘 나오는 방화벽 장비 중에서 비저장 방화벽 장비도 있나요?? 엄청 싸구려 장비 아니면
거의 대부분 저장용 방화벽 장비 일텐데요
그리고 인바운드는 기본적으로 차단하고 있어도 피싱 사이트인 경우에는 사회적 공학 기법으로
사용자들을 속여서 스스로 자발적으로 악성 프로그램을 설치하게 만든 다음에 얼마든지 악성 C&C
서버랑 강제로 통신 가능하게 만들 수 있기에 악성 C&C 서버 IP 주소는 인 바운드 뿐만 아니라
아웃 바운드 모두 양쪽 다 차단하는 게 맞습니다.
추가로 답변드리면 인 바운드 차단이라는 것은 외부에서 요청이 들어올때에 막는다
라는 거지 내부에서 해킹 프로그램으로 인해 악성 C&C 서버로 아웃 바운드 통신할 가능성도
배제 할 수 없는 거죠
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입답변 참고합니다.
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입1. 상태저장/비저장 방화벽
-> 간단하게 설명드리면 상태저장하고 비저장 방화벽의 차이는 layer7단계의 애플리케이션 통신도 탐지하여 차단할수 있다고 생각하면 됩니다.
상태 비저장 방화벽은 단순히 네트워크단(layer2,3)의 단순한 통신만 차단한다고 생각하시면 되고,
상태저장 방화벽은 애플리케이션(layer7)의 통신도 차단 가능하다고 생각하면 됩니다.
옛날 방화벽은 단순 IP, Port를 허용 차단했다고 하면, 요즘 방화벽은 IPS의 기능을 추가로 탑재하여
UTM 장비로 사용하는 것처럼 요즘은 방화벽이 아닌 UTM(firewall + IPS)이 이 상태저장 방화벽이라고 생 각하면 됩니다.
2. 인바운드 all 차단하였음에도 악성 C&C 서버와 통신할 수 있는 이유?
-> 인바운드는 밖에서 안으로 들어오는 트래픽을 의미하는 것으로, 보통 3handshake라고 해서 상대방이
요청을 하고 그 요청에 대해 응답값을 보내고 서로 완료가 되면 세션을 맺고 통신을 합니다.
이 의미에서 사용자가 내부에서 외부로 요청하면 거기에 대한 세션은 인바운드 통신이 아니라 아웃바운드 통신으로 세션을 맺기에 인바운드 정책에 허용되지 않는 것입니다.
예를 들어, 내가 쉐어드IT 사이트를 접속하면 내가 쉐어드IT웹서버로 443포트를 요청하고 그 쉐어드IT웹서버는 응답을 주고 그럼 사용자는 쉐어드IT웹서버와 세션을 맺고 통신을 합니다. 그 과정에서 보내는 443포트가 통신이 되는것입니다.
추가로 만약에 쉐어드IT웹서버가 사용자에게 뭔갈 요청하고 그 응답값을 받는 경우엔 안되겠죠. 인바운드 정책이 전부 all로 차단되어 있기 때문에..
그래서 보통 아웃바운드 차단정책을 만들때 FTP포트나 원격포트등을 막는 이유가 그것입니다.
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입인바운드만 통제하고 아웃바운드를 통제하지 않으면 문제가 될 수 있습니다.
아무리 인바운드를 통제한다고 하더라도 PC는 여러 감염 경로를 통제 좀비화 될 수 있습니다.
이런 좀비 PC가 외부 C&C 서버와 통신하는 것은 방화벽 차단정책이 없기에 너무도 쉽게
정보 유출, 좀비 PC 확산과 봇넷될 수 있습니다.
따라서 방화벽의 아웃바운드 통제 또한 보안에 중요한 부분입니다.
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입1.상태저장/비저장 방화벽
최근에는 상태 저장 방화벽이 많은 것 같긴 합니다. 세션 정보로 패킷 흐름 인식하고, 트래픽 모니터링을 하는 게 목적이긴 하니까요 ! 보안적인 측면으로서는 더 낫기 때문에 많이들 사용합니다.
비저장 방화벽은 별도로 패킷 만들어주면 가능한걸로 알고 있는데, 세션 기반 공격에 취약할 수 밖에 없을 듯 하여 방화벽 성능에 엄청 민감한 기업이 아니라면 상태저장 방화벽이 낫지 않을까 싶습니다.
2. 인바운드 all 차단하였음에도 악성 C&C 서버와 통신할 수 있는 이유?
인바운드를 전체 차단하더라도 아웃바운드 트래픽이 허용되는 상태라면 통신 가능합니다.
아웃바운드가 허용된상태에서 아웃바운드로 악성 서버에 세션을 통해 통신하면 인바운드 응답은
허용으로 통신가능하다고 보시면 될 듯 합니다.
전체적으로 예방하고자 하는 거라면 아웃바운드 dns 등 모두 포함하여 정책 최소화 하고, 웹필터링, ids/ips, edr등을 혼합하여 방어하시는 게 안전합니다.
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입1번 : 저희도 그렇지만 다른 회사들도 상태저장을 사용하는 것으로 알고 있습니다.
비저장은 상대적으로 보안성이 떨어지기 때문에 번거롭더라도 상태저장을 사용 합니다.
2번 : 인바운드 트래픽을 모두 차단하더라도, 아웃바운드 트래픽이 허용되어 있다면 내부 시스템에서 외부로 나가는 요청이 가능할 수 있습니다.
악성 소프트웨어는 내부 시스템에서 외부 C&C 서버로 아웃바운드 요청을 보내고, 그 응답을 통해 명령을 받을 수 있습니다. 또한 상태저장 방화벽은 내부에서 시작된 합법적인 연결에 대한 응답을 허용 하기때문에 내부 시스템에서 외부 C&C 서버로의 아웃바운드 요청이 허용되면, 그 응답도 허용될 수 있습니다.
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입2. 보통은 사용자가 안전하지 않은 사이트, 서비스에 접속하여 발생합니다.
요상한 사이트에 접속하면 웹페이지 소스에 악성코드를 숨기는 방법이 있는데 요즘은 브라우져에서 많이 차단됩니다
블로그같은 곳에서 다운받은 파일에 악성코드가 숨겨져있는 경우가 매우 많습니다. 파일은 공홈에서 받거나 신뢰할 수 없는 곳에서 받은 파일은 바이러스토탈 같은 곳에서 검사를 하고 사용하세요
이런 문제로 인해 방화벽만 운영하지 않고, ips 같은 추가 보안솔루션을 같이 운영합니다.
서버는 보통 인/아웃 바운드 모두 차단하고, 서비스하는 최소한의 포트만 인바운드 개방하고, 업데이트 등에 필요한 최소 사이트만 아웃바운드로 개방하시거나 내부에 별도로 업데이트용 저장소를 별도로 운영하기도 합니다
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입2달 전 쯤 올린 아래 질문에 대한 추가 질문으로 보여 지네요.
https://www.sharedit.co.kr/qnaboards/27214
방화벽 장비에 따라 stateful/stateless 기본 설정은 다를 거라 생각되고요.
일반적으로 stateful이 기본이지 않을까 싶어 보이네요.
C&C 통신은 에이전트가 컴퓨터에 설치되어서 내부 컴퓨터 사용자가 인터넷을 사용하는 것 처럼 외부에 있는 서버와 통신하는 방식에 해당한다고 할 수 있겠고요.
해커의 에이전트가 설치된 상태라는 것은 이미 해킹을 당했다는 의미가 되겠죠.
이미 해킹 당해서 컴퓨터에 에이전트가 설치된 상태에서는 외부에서 내부로 들어 오는 인바운드를 모두 차단한다해도 에이전트가 내부 컴퓨터 사용자 처럼 해커가 명령을 내리는 컴퓨터에 접속해서 명령을 가져와서 실행시키는 행태가 되는 것이라 할 수 있겠고요.
파일 다운로드 또한 외부에서 내부로 집어 넣어 주는 형태가 아니라 내부 사용자가 해커가 준비해 둔 외부 서버에 접속해서 파일을 가져 오는 형태의 통신이 되기 때문에 파일을 가져 올 수 있는 상태라 할 수 있겠네요.
모든 통신은 상호 작용에 의해서 이루어 지게 되죠.
클라이언트에서 요청을 보내면 서버가 응답을 하는 방식으로...
즉, 클라이언트 요청이 아웃바운드로 나가게 되고, 응답하는 서버의 트래픽이 인바운드로 요청한 클라이언트에게 전달되어야만 한개 통신이 성공적으로 끝난다 할 수 있겠죠.
모든 인바운드를 차단 시켜두어서 외부에서 어떤 트래픽도 유입되지 않게 해두고, 모든 아웃 바운드를 열어 두었다 해도...
한개 통신이 완료되기 위해서 아웃바운드로 나간 요청 트래픽에 대한 결과 트래픽이 인바운드되어야 통신이 완료될 수 있는데, 인바운드가 차단되어 들어 올수가 없는 상태라면 통신이 성립되지 못해서 아웃바운드가 열려 있다는 것 자체가 무의미 한것이 되겠죠.
모든 인바운드를 차단해 두고, 모든 아웃바운드를 열어둔 상태에서 내부 사용자가 인터넷을 사용할 수 있다면 상태저장이기 때문에 가능한 것이라 할 수 있고... 동일한 조건에서 내부 사용자가 인터넷을 사용할 수 없다면 상태 비저장이기 때문에 차단 되는 것이라 할 수 있지 않을까 싶네요.
댓글 남기기
답변을 작성 하시려면 로그인이 필요합니다.
로그인 회원가입