Search

vAIscan Box

개요
멀웨어 탐지 스토리지 서비스
상태
완료
프로젝트 분류
경진대회 프로젝트
날짜
2022/12/01 → 2023/02/28
개발 인원 : 3명
기여도 : 40% (PE)
프로젝트 목적 : AI기반 멀웨어 탐지 기능 통합 클라우드 스토리지 서비스 제공
수상 : 2022 하반기 프로젝트 경진대회 최우수상

개요

vAIscan Box는 AI 기술을 활용하여 멀웨어를 탐지하는 서비스로 비회원일 시에는 파일 검사 기능만 회원일 시에는 추가적으로 AWS S3 클라우드 스토리지 저장 옵션을 사용할 수 있습니다. 본 서비스는 기존 시그니처 기반 탐지 방식 뿐 아니라 신규 유형의 멀웨어 탐지도 가능한 서비스로 파일의 해시 값을 이용하여 이미 검사된 파일은 DB에서 즉시 결과를 제공하고, 신규 파일은 AI 서버에서 위험도를 분석한 후 결과를 전달합니다.

담당 역할

Capstone을 이용한 N-gram 방식의 어셈블리 코드 분석 및 특징 분류
Keras를 사용한 멀웨어 탐지 CNN/DNN Model 개발 및 비교
Vue.js를 사용한 멀웨어 탐지 결과 시각화
Docker를 이용한 Application 배포

기술 스택 (I used)

언어 : Python JavaScript TypeScript
프레임워크 : Vue.js Quasar FastAPI Nest.js
데이터베이스 : MongoDB MariaDB
AWS : EC2 S3 RDS
ETC DevOps : Git/Github Docker NGINX Zeplin Atlas

구조

실험

문제 & 목표

문제
기존의 시그니처 기반의 멀웨어 탐지 방식은 새로운 유형의 멀웨어를 탐지하는 데 한계가 있다.
새로운 유형의 멀웨어는 기존에 존재하지 않는 패턴을 가지고 있어서 시그니처 방식만으로는 탐지가 어렵다.
목표 : AI 모델을 활용하여 새로운 멀웨어 패턴도 탐지할 수 있게 한다.

가설

AI 기반 탐지 모델이 기존의 시그니처 기반 탐지 방식보다 새로운 유형의 멀웨어 탐지에 더 효과적일 것이다.
PE Header 정보와 Code Section의 특징을 활용하면, 멀웨어 탐지의 정확도가 향상될 수 있다.

실험 설계

1.
데이터 수집
여러 멀웨어 샘플을 크롤링하여 PE Header와 Code Section 정보를 추출.
추출한 정보를 바탕으로 68개의 PE Header 특징과 100개의 Code Section 특징을 수집하여 학습 데이터로 활용.
2.
모델 개발
수집한 데이터를 기반으로 합성곱 신경망(CNN) 모델을 설계.
N-gram 방식의 어셈블리 코드 분석을 통해 패턴을 학습시킴.
3.
모델 학습
멀웨어 라벨링 데이터를 학습하여, 정상 파일과 멀웨어 파일을 구분하는 분류 모델 학습.
손실 함수로 Cross-Entropy를 사용하고, 최적화 기법으로 Adam을 적용.
4.
실험 조건 설정
기존 시그니처 방식과 AI 모델의 성능 비교.
Precision, Recall, F1 Score 등 다양한 평가지표를 사용하여 모델의 성능을 측정.

실험 및 검증

크롤링한 파일 정보 분석
1000개 이상의 파일을 수집하고, 각 파일의 PE Header와 Code Section을 분석하여 특징을 벡터화한다.
모델 학습 및 검증
CNN/DNN 모델을 학습한 후, 성능 검증.

활용방안 및 기대 효과

새로운 유형의 멀웨어에 대한 탐지율을 크게 향상시킬 수 있으며, 시그니처 기반 탐지 방식의 한계를 보완.

정량적 성과

모델 멀웨어 탐지 정확도 95.78%
2022 하반기 프로젝트 경진대회 최우수상

정성적 성과

Vue3 Composition API 환경에서 컴포넌트, 레이아웃 설계 및 분리 개발 경험
데이터 정렬 알고리즘에 대한 관련 지식을 습득

피드백