본문 바로가기

IT/컴온

저번 링크 글에 이어 : 보안 제품을 볼 때

 

저번 링크 글 : [남의 글 - 링크] 무료 백신 종류 특징, 기초 보안수칙


안티바이러스 (백신)

먼저 안티바이러스(백신)의 기능에 대한 글로부터 시작하겠습니다.
이것이 글을 좀 줄이고 이해하게 하는데 더 도움이 될 듯 합니다.

백신이라고 쓰죠.

원래 백신은 바이러스만 잡았죠, 뒤에 바이러스만이 아닌 웜, 백도어 등도 포함되었지만, 기본적으로 그냥 악성코드 방어 정도로 일컬을 수 있겠습니다.

추가적인 기능들이 붙어가죠.
1) 휴리스틱
2) 네트워크 방어
3) 행동 방어

이런 기능들이 추가되었지만, 이것들도 제품에 따라 방식이 달랐습니다.
휴리스틱이 정립이 제대로 안 되었을 때 (행동 방어에 해당하는 것도 휴리스틱의 일부였습니다)

가. 휴리스틱

1) 사인 기반
2) 코드 기반
3) 행위 기반

1. 사인 기반
지나가다(?)님께서 언급하셨던 화이트리스트, 블랙리스트 방식입니다.
이것은 코모도에도 있습니다 (File Rating)
제작사, 배포자의 정보로 악성코드 여부를 판단하는 방법입니다.

2. 코드 기반
코드를 살펴보아서 이전 악성코드와의 유사성을 점검하죠. 유사성 정도에 따라 악성코드 여부를 판단합니다.

3. 행위 기반
프로그램이 어떤 행위를 하는지를 살펴서 판단합니다.



여기서 우리가 엄밀히 휴리스틱으로 볼 수 있는 것은 2. 코드 기반과 3. 행위 기반입니다.
이것은 행동 방어라는 항목으로 따로 명명되어지기 때문에 결과적으로 2. 코드 기반만이 휴리스틱이라고 해야하겠죠.
그러나, 그렇게 하다가는 시스템 속도가 느려지겠죠. 그래서 1. 사인 기반의 방법을 보충합니다. (행동 방어에서는 사용자의 편의를 위해서)




나. 네트워크 방어

이것은 초창기에는 방화벽과의 혼동도 있었던 것으로 압니다만, 아니죠.
방화벽이 통로 감시라면, 네트워크 방어는 백신의 하드디스크, 메모리에 대해 하던 기능을 네트워크를 통해 들어오는 데이타에 적용한 것입니다. 그래서 네트워크 방어를 한다는 백신 중에 실제 이 의미의 네트워크 방어를 하는 것은 초창기에 별로 없었습니다.

1. 가드류
각 사이트를 감시하여 위험 사이트, 안전 사이트를 구분해 놓는(리스트) 방식입니다.
실시간 작동이 아니죠.

한 사이트를 하루에 한 번씩(아마 주기가 더 길 것으로 여겨집니다) 살펴서 악성 코드 여부를 리스트로 만듭니다.
이 때 문제 (오진에 대해서는 넘어갑시다. 모두에 있는 것이니)
24시간 전에는 안전했지만, 23시간 전 부터 악성코드가 있다면? 이건 안전 사이트입니다.
24시간 전에는 악성코드가 있었지만, 23시간 전 부터 처리되었다면? 이건 위험 사이트입니다.

실제로는 저렇게 작동하지 않고 좀 더 복잡할 겁니다 (전과 시스템 같은 것도 있을 겁니다. 단축을 위해서)

그런데, 이것도 데이타가 특정 서버를 거쳐서 오게 하는 방법이 생긴 것 같더군요.



2. 네트워크 감시류

이것이 진정한 네트워크 방어라 볼 수 있지만, 여기서도 이름뿐인 것이 있습니다.
(요즘도 이름뿐인 녀석이 있는지는 모르겠습니다)

1) 그냥 백신
2) 네트워크 감시

1. 그냥 백신

웹서핑 등 네트워크 작업을 하면 네트워크를 통해서 데이타가 오갑니다. 그러면 이것을 감시하여 악성코드 여부를 판단하는 것이 주여야 하는데 엉뚱하게 일반 백신이 원래 하던 작업대로 하드에 기록되어지면 검사를 하는 겁니다.
이렇게 해놓는 분들이 있다면 그 분들의 논리는 네트워크를 통해서 들어온 데이타를 검사하는 것이니 네트워크 방어라고 하겠지만, 이런 것이라면 없어도 백신에서 방어합니다

2. 네트워크 감시

이것이 진정, 네트워크 감시이죠. 나가고 들어가는 것 모두를 감시하면 더 좋구요(그게 더 맞는 것이지만)
일단, 데이타가 들어오면 네트워크 방어 시스템이 데이타를 살펴보고 악성코드가 아니면 하드에 기록(들어오는 데이타이면) 또는 보내는 것입니다.

즉, 악성코드가 하드에 기록되기 전에 처리가 되므로 악성코드에 감염 될 위험성을 원천 봉쇄하게 되죠.
위의 백신류의 경우에는 이미 기록되어버렸기 때문에 처리가 곤란할 수도 있습니다.

이 방식을 쓰는 백신은 초창기에 악평도 같이 듣게 됩니다.
왜냐하면 네트워크 속도가 떨어지는 일이 있었기 때문에.



행동방어

이제 행동 방어로 들어가죠.
설명할 것이 별로 없습니다.

여기서 지나가다님이 쓰신 글처럼, 또 본 글 앞에서 언급했듯이 단지 사인기반 처리를 하면서 행동방어라 할 수 있습니다. 백신의 휴리스틱에서 그랬듯이... 그 부분을 지적해주셨죠.

그것이 아니라 행위 감시를 통해 행동 방어를 하더라도 제품에 따라 차이가 납니다.
1) 감시 대상 및 범위
2) 처리 방법


1. 감시 대상
파일 폴더, 레지스트리, 화면, 키보드, 메시지, 프로그램 실행/종료 등 등

2. 처리 방법
1) 자동 / 수동
2) 차단, 허락, 가상화

이런 것들을 모두 설명하고(언급을 시작했으니), 제품들도 언급을 했으니 각 제품들의 방식이나 범위 등도 쓰주시면 좋겠지만, 그 글은 그런 글이 아니었습니다.

그러니, 그 분의 글에 별 문제는 없을 것으로 생각하였고, 솔직히 기본적인 방법(지식이 아닙니다)을 쓰는 글에서 이런 것 까지 다루기는 좀 뭐 하죠?




Comodo Internet Security

코모도의 경우에도 행동방어가 완전히 정립되지 않았습니다. 아쉬운 부분도 있구요.

그냥 이 정도 까지만 쓰죠. 코모도의 행동 방어는
HIPS (감시 대상 및 범위 / 규칙) + File Rating (사인 및 클라우드 기반 감시) + BB (자동 처리) + SB (가상화 및 제한적 실행 정도)



참고
1) Sandbox의 Sandbox와 BB의 Sandbox는 조금 구분을 해야 할 듯.
2) AVG와 Comodo는 행동 방어에서 충돌하는 것을 보았음. (그 시스템에서만 그랬을 수도 있지만 ^^)
3) Comodo의 사인 기반 자동 처리 부분은 해제하는 것이 좋지만, 사용자들이 불편해지죠. 그래서 다른 방법들이 (자동 Sandbox) 있지만, 제한적 실행을 할 때 문제를 일으키는 프로그램들도 있죠. (지나가다 님의 모르는 것은 통과시키지 말아야 한다에 동의 하면서도 사용자 입장으로 들어가면)

아주 길 것 같았는데, 그렇게 길지는 않군요. 각 제품에 관한 글을 안 쓰니
(각 제품에 대한 글은 제가 쓰지 못합니다. 옛날에는 직접 설치해서 다 확인을 했지만, 시간이 흐른 지금 다시 최신 버전들 설치하고 테스트해보고 할 수가 ^^)



나중에 다시 좀 보기 좋게 정리할 지도 모르겠습니다.