일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 로드밸런서
- metasploit
- 공개키
- ISMS-P
- 정보보안
- 로그분석
- EC2
- 클라우드
- 클라우드서비스
- azure
- isms
- 정보보호
- RDS
- 클라우드보안
- 개인정보보호법
- 클라우드 자격증
- 보안컨설팅
- AWS SSA
- Iam
- 파일시그니처
- 클라우드자격증
- 인스턴스
- 네이버클라우드
- AWS SAA
- Burp Suite
- ncp
- 와이어샤크
- 취약점
- mysql
- AWS
- Today
- Total
처음 만나는 클라우드 보안
침입탐지 시스템(IDS) - snort, suricata, 패턴 읽기 본문
침입탐지 시스템(IDS)이란?
: 시스템과 네트워크 작업을 분석하여 악의성 있는 작업을 찾아내는 장치를 말한다. 가장 많이 사용되는 유형으로 호스트 기반(host-based)과 네트워크 기반(network-based) IDS가 있다.
침입탐지 시스템(IDS) 주요 기능
1. 오용 탐지(Misuse)
: 공격 또는 악성코드의 패턴을 모아놓은 Signature DB를 기반으로 탐지한다.
ex) 'or 1=1 # 등과 같은 SQL 인젝션 패턴 수집 DB = Signature DB
- 패킷이 들어오면 데이터 부분과 패턴들을 비교해본다 (Patern Matching)
- 패턴 일치 시 관리자에게 Alarm을 보낸다.
- 오탐이 거의 없음, 미탐(공격 탐지를 못함)은 있을 수 있다.
- 패턴을 많이 모아놓았기 때문에 이것을 지식기반(Knowlege Base)라고 한다.
2. 이상 탐지(Anomaly Detection)
: 정상 트래픽 파악을 위해 약 2주간 트래픽을 수집해 기준점을 수립한다. --> 통계기반(Statistical Based)라고 한다.
- 패킷이 기준점에서 크게 벗어나면 이상으로 탐지 => 관리자에게 알림
- 미탐(공격탐지를 못함)은 거의 없지만, 오탐이 많다. => 관리자들이 Alarm을 무시하는 현생 (양치기 효과) 발생
최근의 트래픽을 기준점에 반영 ---> 신경망 기법
새로운 트래픽을 스스로 학습하는 방법을 도입 --> Machine Learning
- 이상 행위를 판단하기 때문에 행위 기반(Behavior)라고 한다.
참고) 네트워크 기반의 IDS (NIDS) 설치 위치 => 방화벽 뒤에 바로
침입탐지 시스템(IDS) VS 침입방지 시스템(IPS)
IDS(Intrusion Detection System): 탐지 후 관리자에게 보고한다.
IPS(Instrusion Prevention System): 탐지 후 스스로 차단한다.
ex) Suricata: IDS설치를 한 후 설정에서 스스로 차단하는 기능이 있다면 IPS
SNORT
IDS의 원조격 시스템, Snort의 감지 패턴 포맷은 다른 IDS 시스템에서도 동일하게 호환된다.
[snort 공식 홈페이지] https://www.snort.org/
1) 패턴 해석 주요 사항
- msg: " " : 관리자의 Alert창에 보이는 내용
- $출발지_NET 포트 -> $도착지_NET:
- flow: 방향
- content:" ": 패턴 (공격 패턴, 악성코드 패턴)
- classtype: 악성 행위의 분류
- sid: 패턴의 고유번호
- reference: 공식 취약점 번호, 취약점 분석도구의 고유번호, 참조 URL
- pcre: 악성코드 패턴 정규표현식
2) Snort감지 패턴 분석
- VNC탐지
alert tcp $EXTERNAL_NET any -> $HOME_NET any ( msg:"APP-DETECT VNC server response"; flow:established; content:"RFB 0", depth 5; content:". 0", depth 2, offset 7; metadata:ruleset community; classtype:misc-activity; sid:560; rev:9; )
APP-DETECT VNC server response: 외부 공격저에 의해 원격 접속 APP-DETECT VNC server response
- 웹 취약점
alert tcp $EXTERNAL_NET any -> $HOME_NET $HTTP_PORTS ( msg:"APP-DETECT Acunetix web vulnerability scan attempt"; flow:to_server, established; flowbits:set, acunetix-scan; http_header; content:"Acunetix-", fast_pattern, nocase; metadata:policy max-detect-ips drop, ruleset community; service:http; reference:url, www.acunetix.com; classtype:web-application-attack; sid:25358; rev:5; )
nocase: 대소문자 구분 X
- 랜섬웨어
alert tcp $EXTERNAL_NET any -> $HOME_NET $HTTP_PORTS ( msg:"INDICATOR-COMPROMISE Revil Kaseya ransomware log clearing http upload"; flow:to_server,established; file_data; content:"Server.CreateObject"; content:"KComWExec.execCmd",fast_pattern,nocase; metadata:impact_flag red,policy balanced-ips drop,policy connectivity-ips drop,policy max-detect-ips drop,policy security-ips drop,ruleset community; service:http; reference:url,doublepulsar.com/kaseya-supply-chain-attack-delivers-mass-ransomware-event-to-us-companies-76e4ec6ec64b; reference:url,www.huntress.com/blog/rapid-response-kaseya-vsa-mass-msp-ransomware-incident; classtype:web-application-attack; sid:57879; rev:2; )
- Hex Code
alert tcp $EXTERNAL_NET any -> $HOME_NET 749 ( msg:"INDICATOR-SHELLCODE kadmind buffer overflow attempt"; flow:to_server,established; content:"|00 C0 05 08 00 C0 05 08 00 C0 05 08 00 C0 05 08|",fast_pattern,nocase; metadata:ruleset community; reference:bugtraq,5731; reference:bugtraq,6024; reference:cve,2002-1226; reference:cve,2002-1235; reference:nessus,15015; reference:url,www.kb.cert.org/vuls/id/875073; classtype:shellcode-detect; sid:1894; rev:14; )
- Trojan
alert tcp $HOME_NET $HTTP_PORTS -> $EXTERNAL_NET any ( msg:"DELETED SERVER-WEBAPP Potential hostile executable served from local compromised or malicious WordPress site"; flow:to_client,established; http_uri; content:"/wp-content/"; pkt_data; content:".exe|20|HTTP/1.",fast_pattern,nocase; http_uri; pcre:"/\/\d+\.exe$/"; metadata:ruleset community; reference:url,blog.avast.com/2013/05/03/regents-of-louisiana-spreading-sirefef-malware; classtype:trojan-activity; sid:26618; rev:4; )
alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS ( msg:"DELETED MALWARE-CNC Win.Trojan.Crysis variant outbound connection"; flow:to_server,established; http_header; content:"|0D 0A|Content Length|3A 20|88|0D 0A|",fast_pattern,nocase; http_client_body; content:"+",depth 1,offset 71; content:"+",within 1,distance 3; metadata:ruleset community; classtype:trojan-activity; sid:26481; rev:4; )
$출발지_NET 포트 -> $도착지_NET: Reverse connection
- Wannacry
alert tcp any any -> $HOME_NET 445 ( msg:"OS-WINDOWS Microsoft Windows SMB remote code execution attempt"; flow:to_server,established; content:"|FF|SMB3|00 00 00 00|",depth 9,offset 4; byte_extract:2,26,TotalDataCount,relative,little; byte_test:2,>,TotalDataCount,20,relative,little; metadata:policy balanced-ips drop,policy connectivity-ips drop,policy max-detect-ips drop,policy security-ips drop,ruleset community; service:netbios-ssn; reference:cve,2017-0144; reference:cve,2017-0146; reference:url,blog.talosintelligence.com/2017/05/wannacry.html; reference:url,isc.sans.edu/forums/diary/ETERNALBLUE+Possible+Window+SMB+Buffer+Overflow+0Day/22304/; reference:url,technet.microsoft.com/en-us/security/bulletin/MS17-010; classtype:attempted-admin; sid:41978; rev:5; )
참고) Virus Total
: Anti-Virus의 포털 사이트, 악성코드 여부 확인 가능
[공식 홈페이지] https://www.virustotal.com/gui/home/upload
추가) 정규표현식 (PCRE)
: Perl Compatible Regular Expression, 펄 호환 정규 표현을 뜻한다. 전화번호, IP, Email에 대한 특정 형식의 패턴을 추출하기 위해 사용되며, 각 언어 또는 스크립트에 따라 조금씩 다르다.
- ^ (캐럿) // 문자열이 시작되는 패턴 =>
- $ (달라) // 문자열이 끝나는 패턴
- [] (대괄호) // '[a-zA-Z00-9]' // 영문 대소문자 및 숫자
- [^] // '[^0-9']' // 숫자가 아닌 패턴
- . (닷) // 'a..d' a와 d사이의 아무 2개 문자가 오는 패턴
- A* //A를 0번 이상 반복한다 => " ", "A", "AAAAA", "AB"
- \{n, m\} // A\{4, 8\} B A가 4번 이상, 8번 이하로 반복되며, 이후에 B가 오는 패턴
ex) 처음이 127.0.0.1로 시작하는 로그 고르기
=> cat access.log | grep -v "^127\.0\.0\.1"
Suricata 설치
: Snort와 같이 IDS뿐 아니라 IPS로 동작 가능한 무료 설치 프로그램, 설치와 사용이 용이하다.
[공식 홈페이지]https://suricata.io/
'정보보안' 카테고리의 다른 글
CSRF공격을 활용한 사용자 패스워드 변경하기 (0) | 2022.05.17 |
---|---|
웹서버 구축 & 웹방화벽(Modsecurity) 올리기 (0) | 2022.05.16 |
Check Point: Smart View 둘러보기 (Record, Smart dashboard) (0) | 2022.05.13 |
Check Point 설치 및 기본적인 SPI방화벽 구성하기 (0) | 2022.05.12 |
방화벽 (Firewall)이란? 기본 구성, 배치 방법 (0) | 2022.05.12 |