▶ 보안 제품 리뷰/:: Symantec

Norton 360 5.0 리뷰 (4) - PC 보안 : 악성코드 진단 (세부 분석)

물여우 2011. 3. 13. 16:22
반응형
노턴의 악성코드 진단 마지막 글입니다.




4-4. 세부 사항 - 심층 분석

이번 글에서 살펴볼 부분은 압축 파일 검사에 관한 것, 재부팅 과정을 요하는 작업들, 악성코드 진단 시 나타나는 작업량에 대한 것, 그리고 진단 기능의 단점과 버그 등에 관하여 살펴봅니다.


(1) 압축 파일 검사


먼저 노턴의 실시간 감시에서는 압축 파일 검사를 지원하지 않습니다. 이는 퍼포먼스를 위한 일종의 제한 사항입니다. 물론 실시간 감시 기능이 허술하지 않아서 경우 압축이 해제될 때 일반적으로 진단이 가능하지만, 다운로드시에 바로 차단이 가능한 것을 선호하기 때문에 다소 아쉽습니다.

노턴도 다른 제품처럼 압축 포맷에 따라 치료 작업이 다릅니다. 먼저 ZIP의 경우 압축 파일 내의 악성코드만 제거가 가능하지만, 7z나 RAR같은 포맷의 경우 압축 파일 자체를 삭제하게 됩니다.

알아두어야할 것은 환경 설정 항목의 '감염된 압축 파일 제거' 항목이 비활성화 된 경우에도 일반적으로 자동 치료가 이루어진다는 점입니다. 이 설정이 존재하는 이유는 7z나 RAR처럼 압축 파일 내부에서 악성코드만 삭제할 수 없는 포맷의 경우 자동으로 제거를 할 것인지 아닌지를 결정하기 위함입니다.

일반적으로 7z나 RAR 포맷내에 악성코드만 있을 경우 자동으로 제거가 되지만, 정상 파일과 악성 파일이 혼재한 경우 아래처럼 사용자 처리를 요구합니다.


비록 사용자 처리를 요구하지만 결과적으로 정상 파일과 악성 코드가 함께 삭제됩니다. 

7z 파일 자체가 삭제된 경우의 예


정상 파일이 중요한 파일인 경우 "닫기"버튼을 클릭하여 일단 검사를 종료하고, 사용자가 압축을 직접 해제해서 정상 파일을 살리는 것이 필요합니다. 매우 불편하지만 일반적으로 7z와 RAR 포맷의 경우 타 제품도 비슷한 상황입니다.


(2) 사용자 처리 및 재부팅 과정을 요하는 작업


이 부분은 아래 3번째 항목과 연관된 부분입니다. 노턴을 사용하다보면 위에서 살펴본 것외에도 사용자 처리를 요구할 때가 있습니다. 예를 들어 아래와 같이 특정 휴리스틱 진단이 발생한 경우가 그렇습니다.


위와 같이 특정 악성코드의 경우 진단 이후에 사용자 처리를 요구합니다. "해결"버튼을 클릭하면 아래와 같이 사용자 처리창이 활성화 됩니다.


여기서 "해결"을 설택하면 치료(삭제)와 검역소 저장이 이루어집니다.


위와 같이 사용자 처리를 요구한 객체의 경우 대부분 재부팅을 요구하게 됩니다. 아래는 재부팅 요구창의 모습입니다. 재부팅 시간을 설정할 수 있습니다.


압축 파일 때의 작업과는 다른 것이 위와 같은 경우는 자동 보호가 강제로 활성화됩니다. 즉, 시스템에 위험 요소가 있다고 보고 자동 보호의 사용자 설정과 상관없이 자동으로 활성화되어 사용자가 비활성화할 수 없게 됩니다.

그런데 여기서 중요한 점은 위 진단은 암호가 걸린 압축 파일에서 악성코드 파일을 생성했을 때 나타난 결과라는 점입니다. 즉, 파일 자체가 활성화된 것도 아니고 단순히 생성된 상태이기 때문에 그냥 삭제만 하면 될 뿐 재부팅 과정이 필요하거나 사용자 처리가 필요한 경우가 아닙니다. 왜 이런 처리가 이루어지는 지 다음 항목에서 예상해봅니다.

참고로 해결 버튼을 클릭하지 않고 그냥 넘어가면 아래와 같이 메인 화면에서 위험 표시가 나타납니다. 처리는 "보안 기록 확인"에서 아래와 같이 할 수 있습니다.





(3) 악성코드 진단시 노턴의 작업 처리 항목


아직은 다루지 않은 "보안 기록 확인"에서 진단된 악성코드의 세부 정보를 살펴보면 재밌는 것을 확인할 수 있습니다.



위 경우를 살펴보면 wma.exe와 Test1.exe는 모두 압축 파일이 해제되며 시스템에 생성된 악성코드입니다. 즉, 활성화 상태가 아니라 시스템에 파일이 생성되기만 한 상태이나 노턴의 치료 항목의 세부 정보는 위와 같이 시스템에 '존재하지 않는' 파일을 제거 또는 제거하기 위해 재시작을 요구하는 것을 알 수 있습니다.

아래 그림을 보면 더 일목 요연합니다. 아래 그림도 마찬가지로 압축 상태를 해제만 했을 뿐, 해당 파일은 실행되지 않은 상태에서 치료(삭제)된 것입니다.


시스템에 존재하지도 않는 파일과 레지스트리를 치료하고 복구(변조된 것을 되돌림)한 것을 확인할 수 있습니다. 파일 하나에 대한 작업 내용이 무려 '81'가지 입니다.
(※ 참고로 tmp 파일은 악성코드의 생성 파일이 아니고 노턴의 작업 내용이 담긴 임시 파일입니다. )


여기서 유추할 수 있는 것은 단순 생성된 파일에 대해 사용자 처리나 재부팅 과정을 요구하는 것은 해당 악성코드에 대한 치료 패턴이 일괄적으로 적용되기 때문에 나타나는 현상이라는 점입니다.

사실 노턴 뿐만 아니라 카스퍼스키나 다른 제품들에서도 악성크도를 단순히 다운로드를 받거나 압축에서 해제했을 때 뜬금없이 재부팅을 요구하는 경우가 많습니다. 이런 경우 대부분 위와 같은 상황이 아닐까 합니다.

보안 제품의 중요 성능 지표 중 첫 번째는 사전 진단 및 대응 능력이지만, 두 번째 중요한 것은 악성코드에 대한 치료 성능입니다. 따라서 위와 같은 현상은 치료 성능을 높이기 위한 방법으로 인해 나타난 것이라고 봅니다. 안티버는 실시간 진단시 루트킷 진단을 포함한 시스템 검사를 수행해서 치료 패턴에 포함된 악성코드를 모두 진단 제거하려는 시도까지 하고 있습니다.

그러나 재부팅 요구든 강제 시스템 검사든 사용자 입장에서는 불편한 것이 사실입니다. 치료 성능 향상을 위한 것이라는 점에서 어느 정도 양보를 해야겠지만, 좀 더 시스템상으로 개선이 이루어져서 재부팅이 필요한 상황인지 시스템 검사가 필요한 상황인지를 정확하게 파악하고서 적용하는 것이 사용자 입장에서 필요하다고 봅니다.



(4) SONAR 진단과 오진

결론부터 이야기하자면 파일 감시에 한해서 노턴은 외국 제품임에도 불구하고 매우 안정적이라고 봅니다. 또 평판(Reputation) 기능도 사용자가 비교적 적음에도 어느 정도는 잘 활용된다고 봅니다. 물론 아래처럼 아쉬운 경우가 없지 않아 있습니다.....



하지만 Behavioral Blocker류의 행동 기반 진단 기능인 SONAR 기능은 비록 노턴이 자랑하는 기능이지만, 오진 부분에 있어서는 조금 민감한 편이라고 봅니다. 오진이 많다는 것이 아니라 다른 노턴의 기능에 비해 오진이 상대적으로 많다는 뜻입니다. 사용자와 숨바꼭질을 하고 있는 것 같은 제외 설정과 검역소 항목을 생각해보면 일반 사용자들에게 소나의 오진은 다소 불편함을 안겨주는 감이 없지 않아 있습니다.

SONAR 오진의 예


개인적으로 SONAR 항목 만큼은 사용자 처리가 필요하지 않을까 싶습니다.


(5) 휴리스틱 설정 최고 단계에서의 진단 (11.03.07)


일반적으로 노턴의 실시간 감시는 파일에 접근만 해도 진단을 하게됩니다. 하지만 휴리스틱 설정(지능형 보호)을 최고 민감하게 설정(통합)했을 때에 나타나는 일부 휴리스틱 진단은 파일에 접근할 때에는 진단이 이루어지지 않습니다. 단, 파일을 수정하거나 복사 또는 이동 등의 작업이 이루어지면 정상적으로 진단이 이루어집니다. 

아래의 동영상은 두 개의 샘플을 이용하여 위의 상황을 나타낸 것입니다.

Test1.exe는 'Suspicious.Cloud.5.A'라는 진단명으로 휴리스틱 진단되는 샘플이고, Test2.exe는 정식 진단 샘플입니다. 녹화시 진단 팝업창이 녹화가 안되는 문제가 발생해서 다소 이해하기 어렵지만 실시간 감시를 활성화하면 test2.exe는 삭제되나 test1은 남는 것은 확인할 수 있습니다. 그리고 test1을 다른 폴더로 복사하면 복사한 개체에 대해서는 진단이 이루어져 삭제되는 것을 확인할 수 있습니다. 



파일을 실행시켰을 때에는 자동 보호가 아닌 SONAR에서 진단이 이루어 졌는데, SONAR의 진단 패턴에 걸려서 진단된 것이지 휴리스틱 진단과 연계되어 진단된 것은 아니기 때문에 다소 문제가 있어 보입니다.


아래의 문제와 함께 제 시스템에서 나타나는 버그인지 애초에 설계가 그렇게 된 것인지는 모르겠습니다.


(6) 제외 설정이 추가된 복원 작업시 문제 (2011.03.07)


의심 진단되거나 위험성이 낮게 측정된 악성코드를 복원할 때 생기는 문제가 하나 있습니다.



위 상황은 의심 진단이기에 검역소에서 복원과 함께 제외 설정을 할 수 있는 객체를 가지고 복원과 제외 설정을 동시에 한 상태입니다. 그러나 제외 설정이 되어 실시간 감시와 수동 검사에서 진단이 되지 않음에도 불구하고, 실제 환경 설정의 제외 설정 항목에는 추가가 안된 것을 확인할 수 있습니다.

이는 재부팅 이후에도 적용되는 문제로 사용자가 실수로 제외 설정을 추가하여 복원을 한 경우 이후에는 노턴을 통해서는 진단 및 치료를 할 수 없다는 것을 의미합니다.

동영상에서 보여지듯이 혹시라도 실시간 보호 기능의 캐싱 기능에서 제외된 것이 아닌가 하여 해당 기능을 비활성화 했습니다. 메인 화면이 활성화되어 있어 기록이 추가 안된 것이 아닌가 하여 메인 화면을 종료 후 다시 실행하여 확인하였지만 역시 제외 설정에는 추가되지 않았습니다.

또한, 아래의 그림처럼 평판 DB에서 신뢰도가 있어 진단에서 제외되는 것도 아닙니다.


노턴의 도움말에서는 복원시 제외 설정이 환경 설정의 제외 목록에 추가하는 역활을 하는 지가 적혀있지 않아 버그라고 불러도 되는 것인지는 모르겠습니다.

그러나 의심진단이든 위험성이 낮은 객체이든 일단 진단한 것을 사용자가 제외하였다 하더라도 이후 상황 변화에 따라 다시 진단이 필요할 수 있습니다. 이러한 이유로 제외 설정에는 편집 기능과 제거 기능이 존재한다고 봅니다.

따라서 버그이든 시스템 상의 문제이든 이 문제는 개선이 반드시 필요합니다.





악성코드 진단 항목을 모두 다루었습니다. 다음 편에서는 네트워크 보안 기능을 다룹니다.

- 이상입니다.
반응형