security onion custom rule 만들기(제로데이 공격 악성코드 탐지)

통합 인프라 보안|2020. 12. 16. 13:48

 

제로데이 (Zero-day)

알려지지 않은 취약점들을 전부 제로데이

 

 

 

취약점에 대해 탐지를 할떄

기본적으로 해당 멀웨어 - 시그니처 코드

여러가지 패턴

 

시그니처 코드, 페이로드(내용)를 가지고

 

cve-2015-4852 payload

취약점

 

 

http 프로토콜로 통신을 하니까 tcp

이바이러스에 대한 burpsuite 의 intercept내용이다

 

해더를 넣고 (옵션)
(meg content1[범위]content2[범위]content3[범위]{sid 또는 nocase 또는 classtype) 이런식으로

스노트 룰을 만들어본다.

 

 

 

vi /etc/nsm/rules/local.rules

 

 

 

 

 

alert tcp any any -> any 1880 (msg:"Apache commons collection library WebSphere Attack";

content:"POST"; offset:0; depth:5;

content:"SOAPAction|3A| |22|urn|3A|AdminService|22|"; distance:0; within:140;

content:"ObjectName|22|>r00AB"; sid:3000002; rev:0; classtype:custom-pattern;)

 

 

 

 

이바이트는 패킷을 보고 바이너리코드를 보고 위치를 계산을하면된다 distance ,within 140은 패킷을 볼수없으므로 나와있는것을 넣는다

post방식의  soap action방식으로 통신하기때문에 적고  3A =:  22=" 3a=: 22="   바이너리 코드로안적고 그냥 문자로적으면

가동성이 떨어진다.

보통 content 단위로 끈는다 

)

 

 

검사를 더빨리하기위해서 작은비트부터 하는거 past-pattern)

content1      10초

content2      2초

content3      5초

 

past-pattern은 가장 검사가 빨리된것을 먼저 판단한다

content2->content3->cocntent1순서로

 

 

 

 

 

테스트해봐야하지만 악성코드를 구하기힘들어서 테스트는해보지못했다

 

 

하지만 이러한 custom-rule을 만들수있다는것을 알수있다

 

 

(패턴기반 web 악성코드 멀웨어 등등)

바이트 데이터에 근거해서 시그니처를 가지고

패턴매칭을 시켜서 일치하는 것만 탐지를했다)

 

 

 

 

댓글()