2024 안티바이러스 기능 및 성능 분석 2부

2024년 안티바이러스 기능 및 성능 분석 1부 글에서 간략히 소개했던 것과 같이 개인 또는 공개 버전의 안티바이러스 제품을 대상으로 크게 아래 5가지 기준을 토대로 제품의 기능 및 성능 분석 연구를 진행하였습니다.

1) 개인 사용자를 위한 안티바이러스 제품 선정
2) 사용자 환경 중심의 기능 및 성능 분석 환경 구축
3) 악성코드 패밀리별 탐지 성능 분석
4) 실시간 탐지 정확도 측정
5) 생성형 AI 기반 악성코드 변종 탐지 성능 분석

생성형 AI를 이용한 변종 악성코드 생성

변종 악성코드를 생성하기 위해서 약 4년 전 공개된 MalRNN을 이용해 악성코드를 생성하고 테스트를 수행하였는데, MalRNN의 악성코드 생성 방식은 아래의 3단계로 이루어져 있습니다.

① 정상/악성코드의 바이너리 데이터를 16진수로 변환해 데이터 샘플링 수행
② 기존 악성코드의 바이트 시퀀스의 맨 끝에 새로운 바이트 시퀀스 생성
③ 자체 딥러닝 탐지모델을 이용해 탐지 여부를 확인하며 악성코드 생성

그림 1. MalRNN 생성 구조 및 개념도

MalRNN으로 생성한 변종 악성코드는 전체 원본 악성코드의 약 15%만 정상적으로 생성할 수 있었고(85%는 기술적 문제로 실행 불가 또는 생성 불가), 생성된 변종 악성코드는 변종 악성코드와 원본 악성코드의 해쉬값 비교를 통해 다른 파일임을 확인했습니다. 또한, 생성된 변종 악성코드가 실제 파일과 동일하게 동작하는지 직접 실행을 통해 확인했으며, 프로세스와 네트워크뿐만 아니라 파일 접근, 레지스트리 등 전체적인 동작이 같은지, 정상적으로 악성코드가 만들어졌는지 상세 분석하여 확인하였습니다.

그림 2. (상) 프로세스 및 네트워크 행위 비교, (하) 레지스트리 행위비교
안티바이러스 선정 및 테스트 방법

테스트에 사용할 PC 안티바이러스 제품은 개인 사용자 제품으로 선정하였으며, Windows 운영체제에 설치가 가능한 제품 그리고 실시간 탐지 기능이 지원하는 제품 중 15개 안티바이러스 후보 제품에서 10개를 선정하여 테스트를 진행했습니다. 기능 및 성능평가에 대상이 될 안티바이러스의 선택 기준은 다음과 같습니다.

• (기준1) 개인 사용자용 안티바이러스 제품
• (기준2) Windows 운영체제 설치 가능 제품
• (기준3) 실시간 탐지 기능 지원 제품

그림 3. 안티바이러스 성능 테스트 대상 선정 방법

안티바이러스 제품의 기능 및 성능을 효과적으로 평가하기 위해 활용될 악성코드는 다음과 같이 준비하였습니다.

첫 번째, 최근 1년 동안 무작위로 수집된 악성코드 20,000개 중에 패밀리별 10종(Trojan, Worm, Virus, Spyware 등)에 대해 200개씩 선택한 2,000개의 악성코드 샘플입니다. 이는 특정한 조건 없이 무작위로 선택하였으며, 악성코드가 PC에 다운로드 될 때 안티바이러스의 실시간 탐지 성능 테스트로 사용됩니다.

두 번째, 실행할 수 있는 421개 악성코드 샘플입니다. 실행할 수 있는 악성코드 확장자 중 EXE, HTML, PDF 등 확장자를 분류하였으며, JS, DLL, Bat 확장자는 제외하였습니다. 해당 샘플들은 격리된 환경에서 사전에 실행하고 분석하여 행위가 발생하는 악성코드임을 검증한 악성코드로 실행하였을 때 안티바이러스의 실시간 탐지 성능 테스트로 사용됩니다.

세 번째, 생성형 AI를 사용하여 생성된 변종 악성코드 샘플입니다. 이는 생성형 AI를 이용하여 악성코드의 변종을 생성하여 원본 악성코드와 비교해 탐지할 수 있는지에 대한 테스트로 사용됩니다.

• (샘플1) 최근 1년 이내 수집된 20,000개 중 무작위로 선정한 패밀리별 악성코드 2,000개
• (샘플2) 실행할 수 있는 악성코드 421개
• (샘플3) 생성형 AI를 활용한 생성된 변종 악성코드 149개

그림 4. (상) 테스트 베드 환경 구축, (하) 시나리오별 테스트 도구 및 시스템 개발

기능 및 성능 평가에 사용될 테스트 PC는 모두 동일한 제품규격의 하드웨어와 OS를 사용했고, 카카오톡/알집/문서편집 등 개인 사용자가 많이 사용하는 응용프로그램을 설치하여 실제 개인 사용자 PC와 최대한 비슷하게 구성하였으며, 자체 개발한 Controller와 Agent를 이용하여 사용자개입을 최소화하여 테스트를 진행하였습니다.

안티바이러스 제품의 기능 및 성능 분석 결과는 그림 5에서 확인할 수 있듯이 각 안티바이러스 제품에 따라 탐지 편차가 발생하는 것을 알 수 있습니다. 보다 상세한 분석 결과에 대해서는 발간 예정(`24년 9월 발간 후 논문명/링크 게시)의 논문을 참고해 주시기를 바랍니다.

그림 5. 다운로드 악성코드 탐지(상좌), 악성코드 실행 탐지(상우), 패밀리별 악성코드 탐지(하)
글을 마치며

본 글에서는 생성형 AI 기반 변종 악성코드와 패밀리별 악성코드를 이용하여 안티바이러스 제품의 기능 및 성능 분석 방법과 결과를 살펴보았습니다. 생성형 AI를 이용하여 안티바이러스를 효과적으로 우회하기에는 아직 부족함이 있는 것을 알 수 있었지만, 기술의 발전 속도가 빠르기 때문에 지속적인 연구할 필요성이 충분하다고 판단되었습니다. 또한 안티바이러스 제품별 탐지 엔진의 특성에 따라 탐지 편차가 나타남을 패밀리별 악성코드 탐지률로 확인할 수 있었습니다. 이후 연구팀에서는 다양한 테스트 방법을 개발하여 안티바이러스 기능 및 성능 분석 연구를 진행하고 결과를 나누고자 하오니, 많은 관심 부탁드립니다.

참고문헌

[1] https://csrc.kaist.ac.kr/blog/2024/03/04/안티바이러스-기능-및-성능-분석-1부/
[2] https://github.com/johnnyzn/MalRNN

1 명이 이 글에 공감합니다.

2 thoughts on “2024 안티바이러스 기능 및 성능 분석 2부

  • 안녕하세요.
    점점 악성코드나 랜섬웨어 등 갈수록 진화해가는 바이러스 등으로 정보보안의 중요성이 더 중요해지는 것 같습니다.
    그래서 업무용으로 백신을 사용하려고 하는데 정확하게 비교한 자료가 없어서 어려움이 있습니다.
    좀 더 객관화된 자료를 얻고 싶은데 혹시 분석하셨던 자료를 전체는 아니더라도 사용자 입장에서 비교하고 결정하는데 도움이 될수 있는 자료를 공유해 주실수 있으실지 문의드립니다.

    감사합니다.

    • 안녕하세요. 답글로 자세한 내용을 전달해드리기 어렵습니다.

      문의 및 요청은 저희 공식 메일인 csrc@kaist.ac.kr 로 부탁드립니다.

      또한, 업무용으로 사용한다고 하셨는데 내용에 소속 및 직책을 작성하시거나 신분을 확인 할 수 있는 메일(회사 도메인 등)로 요청 해주세요.

      감사합니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다