네트워크 보안솔루션 악성코드 탐지기술은 시그니처, 휴리스틱, 행위기반으로 분류할 수 있습니다. 이 문서에서는 각 탐지기술의 특징 및 감염시 대응방법을 알아보겠습니다. 네트워크 보안을 위한 하드웨어 솔루션 IDS, IPS에 대해서는 이전의 글을 참고 바랍니다.
악성코드 탐지기술
탐지기술유형 | 분석기술 |
시그니처 기반 | – 스트링 시그니처 – 명령어 빈도수 – CFG 시그니처 – 바이트시퀀스 |
휴리스틱 기반 | – 프로파일링 기법 – 네거티브 휴리스틱 – 유전 알고리즘 |
행위 기반 | – 무결성 검사 – 행위차단 기술 |
1. 시그니처 기반
기존에 알려진 패턴을 Signature라는 방식으로 표현하고 이와 일치되는 패턴을 비교하여 탐지하는 방법입니다. 이는 알려진 악성코드는 대응이 쉽지만 변형되거나 신종 유형에는 취약하여 Zero Day Attack과 같은 공격을 방어하기 어렵습니다.
(1) 스트링 시그니처
파일에 들어있는 ascii 코드나 유니코드로 변환되는 문자열 스트링을 하나의 패턴으로 인식하여 분석하는 기법입니다. DLL 안의 API 이름이나, .section 명 등의 스트링을 말합니다.
(2) Instruction 코드 패턴
기존의 코드에서 많이 사용된 명령어의 배열 패턴 정보를 참고하여 그 빈도수를 이용해 판단하는 방법
(3) CFG 시그니처
코드 section의 흐름과 구조를 표현하는 CFG 패턴을 기반으로 판단하는 방법
2. 휴리스틱 기반
시그니처 기반의 약점은 기존에 알려지지 않은 패턴을 탐지하기 어렵다는 것입니다. 이를 보완하는 방법으로 악성코드의 특징을 프로파일링하여 이를 통해 탐지하는 방법입니다. 가령 파일 입출력, 레지스트리 키 생성, 네트워크 통신방식과 같은 주요 특징을 설정하고 유사도를 기반으로 탐지하는 방식입니다.
(1) 프로파일링 방식
범죄 수사에 이용되는 프로파일링 기법을 이용한 탐지 방식입니다. 최근에는 AI를 학습시켜 악성코드의 공격방식을 분석해 탐지해내는 솔루션이 출시되기도 하였습니다.
(2) 네거티브 휴리스틱
악성코드의 동작 방식을 추적하는 것이 아니라 반대로 정상적인 프로그램에 프로파일링을 하고, 이에 해당하지 않는 경우를 탐지하는 방식입니다 (화이트 리스트 방식)
3. 행위기반
System 내에서 발생하는 다양한 유형의 행동들을 무결성 검사나 Behavior Block(행위 차단) 기법을 통해 탐지하는 기술입니다.
(1) 무결성 검사방식
데이터나 파일이 원본 그대로 변조되지 않은 상태인지를 체크하여 시스템의 변화 유무에 따라 판단하는 것으로 주기적으로 무결성 체크를 통해 공격을 감지할 수 있습니다.
(2) 행위 차단기법 (Behavior Block)
평소에는 단순히 시스템에서 발생하는 모든 상황을 모니터링하고 있습니다. 이때 비슷한 패턴의 동작이 발견되면 이를 추적하여 더 이상 실행되지 않도록 막고 사용자에게 알리는 방식입니다.
악성코드 대응방법
악성코드를 사전에 예방하는 방법과 만약 감염되었더라도 가능한 안전하게 대처하는 방법에 대해서 알아보겠습니다. 만약 랜섬웨어와 같은 악성코드에 감염이 의심되는 경우 다음의 무료 툴을 사용해보는 것도 좋겠습니다.
사전 예방 방법
- 정품 소프트웨어의 사용 및 불법 소프트웨어 다운로드 금지
- 송신자가 불분명한 이메일 및 의심되는 첨부파일 실행 금지
- 백신 프로그램의 사용 및 주기적인 시스템 체크
- 중요 데이터의 주기적 백업 (랜섬웨어 감염 시 대처목적)
- 컴퓨터 로그인 비밀번호 설정 (복잡한 암호 설정)
- 문서 공유 시 한정된 사용자 및 폴더에 한해 지정
감염시 대응 방법
- PC 전원종료 금지: 랜섬웨어의 경우 재부팅시 파일을 지우기도 함
- 인터넷 및 외부 USB장치 차단 (2차 감염 확산방지)
- 백신 등으로 치료전 파일을 백업 (복구 실패시 재시도 목적)
- 무료 복구 프로그램으로 복구시도 (안랩 랜섬웨어 복구 툴)
이상으로 악성코드 탐지기술 및 대응방법에 대해서 알아보았습니다.