다양한 방법의 보안기술을 이용하여 침입이 일어나기 전에 실시간으로 침입을 막고, 유해 트래픽을 차단하기 위한 능동형 보안 솔루션 IPS는 예방적이고 사전에 조치를 취하는 기술이며, 반면에 IDS 는 탐지적이고 사후에 조치를 취하는 기술이다. 또한 IPS는 기존의 트래픽 유통에 직접 관여하며이러한 방식을 InLine 방식
Signature Based IPS (지식기반)
각각 공격에 대하여 정확한 Signature를 정의, 해당 공격 패턴에 매칭이 되어야만 차단 시행
알려지지 않은 공격의 경우 정확한 Signature List가 업데이트 되어 있지 않으면 차단이 불가능한 단점이 있으나, 오탐 가능성은 적다.
Heuristics Based IPS (행위기반)
Anomaly Detection / Prevention 방식이라고도 한다.
알려지지 않는 공격을 수집하여 정보를 이용하여 오탐을 줄이고 능동적으로 대처하는 방식
ZPS(Zero Trust Protection System)
제로 트러스트 보안 모델을 기반으로 하며, 네트워크 내의 모든 사용자와 기기를 신뢰하지 않고 기본적으로 의심하는 접근 방식을 취합니다.사용자 인증과 권한 검증을 강화하여, 내부와 외부의 위협 모두에 대응할 수 있도록 설계되었습니다.
SVA(Security Vulnerability Assessment)
보안 취약점 평가를 의미하며, 시스템이나 네트워크에서 잠재적인 취약점을 식별하고 분석하는 과정입니다.이를 통해 보안 위험을 사전에 발견하고, 적절한 대응 방안을 마련할 수 있습니다.
SVA는 보안 취약점을 평가하고 시스템의 보안 상태를 분석하는 과정
IPsec VPN (Internet Protocol Security Virtual Private Network) - (VPN은 터널링이라고 하는데 암호화 시켜서 데이터를 전송함)
인터넷을 통해 안전한 데이터 전송을 제공하는 기술입니다. IPsec은 IP(Internet Protocol) 패킷의 보안을 강화하기 위해 사용되는 프로토콜 모음
암호화: 전송되는 데이터를 암호화하여 외부에서 접근할 수 없도록 보호합니다. 이를 통해 기밀성을 유지할 수 있습니다.
인증: 데이터의 출처를 확인하고, 데이터가 전송 중에 변경되지 않았음을 보장합니다. 이를 통해 무결성을 유지할 수 있습니다.
터널 모드: 전체 IP 패킷을 암호화하여 새로운 패킷으로 캡슐화합니다. 주로 VPN 게이트웨이 간의 연결에 사용됩니다.
트랜스포트 모드: 패킷의 페이로드만 암호화하며, 헤더는 그대로 유지합니다. 주로 호스트 간의 통신에 사용됩니다.
IPsec VPN은 높은 보안성을 제공하여 기업의 데이터 통신을 안전하게 보호하는 데 중요한 역할을 합니다.
IDS/IPS 정책
탐지 정책(Signature)이 등록되어 있는 경우에만 탐지하고, 그 이외의 패킷은 무시
오탐율이 매우 높으므로 최적화 시키기 위해서 충분한 시간동안 커스터마이징이 필요
RawData 정책을 어떻게 사용하느냐가 승패를 좌우
웹 방화벽 이해
443 포트 들어올 수 있으니까 SVA 들어가야하고
다른 외부 기관까지 가야한다면 VPN 장비도 넣어야함
인터넷을 통한 웹 기반 서비스가 발전하면서 항상 개방되어 있는 웹을 이용한 공격이 일반화, 집중화 되고 있는 상황에서 단순한 홈페이지 변조사고부터 웹 서버를 통한 악성코드 유표까지 사고가 발생하고 있다. 이와 같은 이유로 웹 전용 보안시스템 구축이 필요하게 되었으며, 그 시스템이 웹 방화벽이다.
이벤트 대응 및 분석
이벤트 대응처리 프로세스
보안장비 로그 수집
이벤트 탐지 : 공격 발생 시 경보 발생 및 관제 인원에게 Mail을 발송하여 탐지 할 수 있다.
이벤트 1차 분석
공격자 IP 차단 및 이벤트 탐지 보고서 작성
담당자 통보
침해사고 조치지원(CERT)
OSI 7 Layer별 이벤트 유형
FTP PASV
FTP PASV(패시브 모드)는 파일 전송 프로토콜(FTP)에서 클라이언트와 서버 간의 연결을 설정하는 방식 중 하나입니다. FTP는 두 가지 모드(액티브 모드와 패시브 모드)를 지원하는데, PASV 모드는 다음과 같은 방식으로 작동합니다:
PASV 모드의 작동 방식
클라이언트 연결: 클라이언트가 FTP 서버에 연결을 요청합니다.서버 응답: 서버는 클라이언트에게 패시브 모드로 전환할 것을 알리며, 사용할 포트 번호를 제공합니다.클라이언트 연결: 클라이언트는 서버가 제공한 포트 번호로 새로운 연결을 수립합니다.데이터 전송: 이 새로운 연결을 통해 파일 데이터가 전송됩니다.
PASV 모드의 장점
방화벽 우회: PASV 모드는 클라이언트가 서버에 연결을 요청하고, 서버가 클라이언트의 요청에 따라 데이터 전송을 위한 포트를 열기 때문에 방화벽을 우회하는 데 유리합니다.클라이언트의 IP 주소 노출 감소: 클라이언트가 서버에 연결을 요청하는 방식이므로, 클라이언트의 IP 주소가 서버에 직접적으로 노출되지 않습니다.
PASV 모드는 특히 클라이언트가 NAT(네트워크 주소 변환) 뒤에 있을 때 유용하게 사용됩니다.
(시험)주요 공격 이벤트 및 영향
SQL Injection
웹 클라이언트의 반환 메시지를 이용하여 불법 인증 및 정보를 유출하는 공격 방법으로 웹 응용 프로그램이나 파라미터 값에 강제로 SQL 질의문을 삽입하여 응답값을 통해 내부 데이터베이스(DB) 서버의 데이터를 유출 및 변조하고 관리자 인증을 우회하는 공격기법
웹 서버로 전달된 SQL 질의문은 데이터베이스(DB) 정보가 일치할 경우 질의문에 해당하는 ‘True’ 값을 반환하고 일치하지 않을 경우 ‘False’ 값을 반환, 이때 에러메시지를 통해 2차 공격을 시도할 수 있다.
공격 영향
인증절차 우회 기능
데이터베이스(DB)에 저장된 데이터 값을 열람/삭제/수정 가능
시스템 명령어 조작으로 운영 시스템에 영향
Webshell 공격
웹페이지인 웹(Web)과 서버에 명령을 내려 실행하기 위한 인터페이스 역할의 쉘(Shell)의 합성어로써 웹 페이지에서 서버에게 명령을 실행하기 위해 만들어진 프로그램
웹 서버(PHP, ASP, JSP 등)의 다양한 취약점 등을 타깃으로 공격하여 웹 서버에 Webshell을 업로드 한 후 웹 브라우저를 통해 업로드한 Webshell을 실행하여 침투한 서버상의 정보유출 및 변조, 악성코드 유포 등 웹 공격에 활용됨
대표적인 공격형태로 확장자 우회공격, 자바스크립트 우회공격, MIMI Type 우회, 그림파일을 이용한 한 줄 웹쉘 등이 있다.
공격 영향
관리자 권한 탈취 및 내부망 접근하여 내부 자료 및 개인정보 유출 가능
웜 / 바이러스 배포서버로 악용
대응 방안
확장자 제어: 허용된 확장자 외에는 업로드 금지, 정의된 확장자 차단
Directory List 취약점 제거 : 서버 내 파일 / 폴더 등을 확인하여 소스코드, 웹 페이지 구조가 노출 되는 것을 사전 제거
Command/Code Injection(Execution)
시스템 명령어를 호출하는 어플리케이션의 인자 값을 조작하여 의도하지 않은 시스템 명령어를 실행시키는 공격 기법
주로 취약한 함수를 사용하거나 변수 입력 값 미 검증으로 인해 발생되며 과거에 발생된 Bash Shell Shock가 대표적이다.
공격 영향
해당 공격이 유효성이 있을 경우, 웹 어플리케이션을 구동하고 있는 시스템 계정의 Shell 권한(관리자 권한 등) 을 획득하는 것과 같음
대응 방안
지정되어 있는 변수 입력 값 외에 다른 값들이 들어왔을 경우 차단
운영체제의 시스템 명령어가 사용자 입력에 의해 존재하는지 확인하고 불필요한 요청 시 차단
확인되지 않은 사용자 입력을 파이프라인, open() 명령 등으로 전달하지 않음
XSS(Cross Site Scripting)
컨텐츠를 암호화/검증하는 절차 없이 사용자가 제공하는 데이터를 어플리에킹션에서 받아들이거나 웹 브라우저로 보낼 때 발생되는 공격
JavaScript, VBScript 등과 같이 CSS(Client Side Script) 특징을 가진 언어로 작성된 악성 스크립트를 웹 페이지/게시판/메일 등에 포함시켜 사용자에게 전달하고 이를 사용자가 열람하였을 때 악성 스크립트가 실행됨
공격 영향
악성 스크립트가 삽입된 게시판에 접근한 사용자를 대상으로 웜/바이러스 배포
사용자의 세션 정보를 탈취하여 재사용 가능(사용자가 관리자일 경우 관리자 계정 탈취 기능)
대응 방안
쿠키 값에 인증/권한 등의 중요 정보가 기록되지 않게 하거나 쿠키 인증 방식이 아닌 세션 인증 방식으로 변경
스크립트 코드에 사용되는 특수문자에 대한 적절한 필터링
사용자가 게시판에 사용할 수 있는 HTML 포맷만을 허용
공격 이벤트 분석 방법
GET / POST 이벤트
GET
URL에 Query String 형식으로 전달
POST
BODY 에 포함해서 전송하는 방식
POST 방식 이벤트 분석
주의할 사항 : 확인하려는 파라미터 값이 서버나 데이터베이스(DB)에 영향을 주려는 값이라면 테스트 보다는 담당자에게 통보를 하는 것이 나을 수 있음 - > 문제가 될 수 있다.
IBM AI 솔루션
IBM의 AI 솔루션은 다양한 산업과 용도에 맞춰 설계된 여러 제품과 서비스를 포함합니다. 주요 IBM AI 솔루션은 다음과 같습니다:
IBM Watson:IBM의 대표적인 AI 플랫폼으로, 자연어 처리(NLP), 머신러닝, 데이터 분석 등의 기능을 제공합니다.다양한 산업에 적용할 수 있는 API와 툴을 제공하여, 고객 맞춤형 AI 솔루션을 개발할 수 있게 합니다.
MSSQL 포트 1433
통합보안관제시스템의 이해
Web Servers
common mode
combine mode
웹 서버의 common mode와 combine mode는 웹 서버의 요청 처리 방식과 관련된 용어로 보입니다. 이 두 가지 모드의 차이를 간단히 설명하겠습니다.
Common Mode
정의: 일반적으로 사용되는 기본적인 요청 처리 방식입니다.특징: 클라이언트의 요청을 순차적으로 처리하며, 각 요청이 독립적으로 처리됩니다.장점: 구현이 간단하고, 상태 관리가 용이합니다.단점: 동시에 여러 요청을 처리하는 데 한계가 있어, 고부하 상황에서는 성능 저하가 발생할 수 있습니다.
Combine Mode
정의: 여러 요청을 결합하여 처리하는 방식입니다.특징: 여러 클라이언트의 요청을 하나의 처리 단위로 묶어서 효율적으로 처리합니다.장점: 서버 자원을 보다 효율적으로 사용할 수 있으며, 성능 향상에 기여합니다.단점: 구현이 복잡할 수 있으며, 상태 관리와 오류 처리에 더 많은 주의가 필요합니다.
이러한 모드는 서버의 목적과 요구 사항에 따라 선택될 수 있으며, 성능과 효율성을 고려하여 적절한 모드를 선택하는 것이 중요
보안 장비로부터 수집된 이벤트를 분석하고, 이를 통해 보안 정책과 비교하여 이상 징후나 공격을 탐지하는 과정
SIEM 운영
SIEM(보안 정보 및 이벤트 관리)은 보안 장비라기보다는 보안 솔루션의 일종입니다. SIEM은 다양한 보안 장비와 시스템에서 수집한 로그와 이벤트를 통합하여 분석하고, 실시간으로 모니터링, 경고 및 보고 기능을 제공합니다.
(시험) SIEM 구성 및 이해
Manager
경보 감사 데이터 발생 시, 다양한 알람 기능을 처리(Sound, Email, SMS, 스크립트, SNMP)
감사 데이터 및 설정 데이터 저장을 위한 데이터베이스 백업 및 삭제관리를 스케쥴링 처리
모든 자체 감사 데이터를 생성하고, 데이터베이스에 저장
Console
사용자 및 에이전트 그룹 관리, 구성관리, 수집조건, 연관성 분석, 데이터베이스 백업 및 삭제 관리 등 모든 설정 화면을 제공
Agent
관리대상 장비로부터 수집한 로그를 정해진 규칙에 따라 정규화하고, 수집조건 규칙과 비교하여 매니저로의 전송 여부를 결정
매니저로 전송 전에 동일 패턴으로 구분되는 이벤트는 축약 처리하여 네트워크 및 데이터베이스 등의 부하를 최소화
Agent 방식 - Agent설치 됌
각 장비마다 Agent(데이터 수집 및 판단) 가 있어야함
Agentless 방식 - Agent설치가 안되고 sys로그만 던져주는 방식
SIEM 구성 3가지 요소
Agent - Manager(Back-end) - Console(front-end)
로그
로그는 컴퓨터나 서버등에서 유저의 플레이 정보를 시간에 따라 남기는 기록
데이터 로그는 연속 데이터의 기록을 뜻한다.
로그 → 시간 → 관련된 포트는 NTP(Network Time Protocol) 123포트 에서 사용
로그의 시간 정보를 정확하게 동기화하기 위해 NTP(Network Time Protocol)를 사용하며, 이때 사용하는 포트가 123번입니다. NTP는 네트워크를 통해 시간 동기화를 수행하여 시스템 간의 시간 차이를 최소화하는 데 도움을 줍니다.
파싱(Parsing)
로그는 한줄로 쭉 들어오는데 이해하기 힘들다. 원본로그를 필드 별로 구분하는 것
SIEM 이상 그래프 확인 방법
SIEM에서 연동된 각 보안장비에 대해 일일 그래프 또는 30분별 그래프 등을 만들어 해당 장비의 상태 및 이벤트 수치를 한눈에 확인하기 쉽도록 만들 수 있다.
이상 그래프를 탐지하였을 경우 해당 그래프에 대해서 발생시간, 출발지, IP목적지, IP Port 등 더 자세하게 어떠한 이벤트가 수집이 되었는지 확인이 필요하며, 확인된 정보를 바탕으로 이상 유무를 판단해 낼 수 있어야 한다.
→ 그래프를 프로파일로 저장하여 그떄 그떄 확인하고 싶은 여러 가지 그래프를 매번 생성하지 않고 저장시킨 프로파일을 불러 들어와 빠르게 확인하여 보다 효율적으로 관제할 수 있도록 한다.
번들룰 생성
번들룰은 가용성 체크를 위한 경보이다. 장애로 인한 이벤트 미 수집 / 보안장비 펌웨어 업데이트로 인한 로그필드 변경 시 미 수집 등이 발생할 수 있다. NMS와 같이 Ping Check를 통한 가용성도 확보할 수 있다.
번들룰 종류: 핑 체크, 프로세스 체크, 미 수집 체크
단일경보 생성
Object는 단일 경보 생성 시 각 필드에 해당되는 탐지 상세 조건이다. SIEM에서 수집되는 로그를 기반으로 필드를 선택한 뒤 조건을 충족하여 경보가 발생하도록 운영자가 설정할 수 있다. 연산자(AND, OR, Like)를 통하여 해당 조건에 따라 발생 건수가 달라지며, 정/오탐 고도화가 진행된다.
경보를만들때 조건을 만드는게 중요 → 옵션은 오브젝트 - > 값을 정의하고 어떤 칼럼으로 파싱 되는지를 알아야한다. - > 이를 통해 where 조건을 다 만들 수 잇다.
단일 경보를 생성할 때 조건을 설정하는 것은 매우 중요합니다. 이를 통해 경보의 정확성과 유용성을 높일 수 있습니다. 다음은 단일 경보 생성을 위한 기본적인 단계입니다:
옵션 정의: 경보를 설정할 오브젝트를 선택합니다. 예를 들어, 특정 로그 유형이나 이벤트 소스를 선택할 수 있습니다.
값 정의: 오브젝트에 대한 조건을 설정합니다. 특정 값이나 상태를 기준으로 경보를 트리거할 수 있도록 합니다. 예를 들어, 특정 IP 주소나 사용자 계정 등입니다.
칼럼 파싱: 어떤 칼럼에서 값을 추출할지를 결정합니다. 로그 데이터의 구조를 이해하고, 필요한 정보를 올바르게 파싱할 수 있도록 해야 합니다.
WHERE 조건 작성: 위의 정보들을 바탕으로 SQL과 같은 쿼리 언어를 사용하여 WHERE 조건을 작성합니다. 이 조건은 경보가 발생할 기준을 설정하게 됩니다.
테스트 및 검증: 설정한 경보 조건이 올바르게 작동하는지 테스트하고, 필요에 따라 조정합니다.
이러한 과정을 통해 효과적인 경보를 생성할 수 있으며, 보안 이벤트를 신속하게 탐지하고 대응할 수 있는 기반을 마련할 수 있습니다.
상관분석
단일 경보의 조합으로 생성된다. Step 별로 경보 단계가 진행되기 떄문에 고도화를 위한 경보 생성 시 적합하다. 상관분석은 생성된 단일 경보를 기반으로 단계별 탐지 설정이 가능하며, 전 단계에 대한 상세 조건을 설정할 수 있다.
대법원 보안관제 사례
(시험)외부 침입으로부터의 방안
공격자
1단계 대량트래픽차단시스템 (DDOS) → 패킷 많이 들어오면 네트워크 과부하, 시스템한테 가는거니까 서비스가 안되는 것
서비스 자원 고갈, 서비스 거부 공격방어
2단계 침입방지시스템 IPS (In-line mode (IPS), sniffing (IDS) 미러링 떠서 데이터만 탐지할 수 있게 하는것)
비정상 패킷 차단
3단계 침입차단시스템 (방화벽)
비정상 세션 차단, IP,PORT 제어
4단계 악성메일차단 (URL, 악성 첨부파일을 차단)
스펨메일 차단, 악성 유포지 경로, 악성 첨부파일 차단
5단계 웹 안전도 검사 시스템 (홈페이지 바탕화면 바꾸는것, 기존이랑 변경된 사항이 있는지 확인하고 차단한다. )