[논문 리뷰] eXpose: A Character-Level Convolutional Neural Network with Embeddings For Detecting Malicious URLs, File Paths and Registry Keys
eXpose는 악성 URL, 파일 경로, 레지스트리 키를 원시 문자열에서 직접 감지하기 위해 임베딩을 가진 문자 수준 CNN을 학습시켜, 유사한 거짓 긍정률에서 수동으로 엔지니어링된 특징보다 성능이 우수하다.
For years security machine learning research has promised to obviate the need for signature based detection by automatically learning to detect indicators of attack. Unfortunately, this vision hasn't come to fruition: in fact, developing and maintaining today's security machine learning systems can require engineering resources that are comparable to that of signature-based detection systems, due in part to the need to develop and continuously tune the "features" these machine learning systems look at as attacks evolve. Deep learning, a subfield of machine learning, promises to change this by operating on raw input signals and automating the process of feature design and extraction. In this paper we propose the eXpose neural network, which uses a deep learning approach we have developed to take generic, raw short character strings as input (a common case for security inputs, which include artifacts like potentially malicious URLs, file paths, named pipes, named mutexes, and registry keys), and learns to simultaneously extract features and classify using character-level embeddings and convolutional neural network. In addition to completely automating the feature design and extraction process, eXpose outperforms manual feature extraction based baselines on all of the intrusion detection problems we tested it on, yielding a 5%-10% detection rate gain at 0.1% false positive rate compared to these baselines.
연구 동기 및 목표
- 원시 문자열 입력에 대해 딥러닝을 사용함으로써 보안 탐지기에서 수동 피처 엔지니어링의 필요성을 줄이는 것을 목표로 삼는다.
- 단일 아키텍처로 여러 아티팩트 유형(URLs, 파일 경로, 레지스트리 키)을 모두 탐지할 수 있는 통합 모델을 개발한다.
- 학습된 문자 임베딩과 컨볼루션 특징이 베이스라인보다 탐지를 향상시킴을 입증한다.
- 엔드 투 엔드 학습이 다양한 보안 아티팩트에 걸쳐 견고한 성능을 낸다는 것을 보여준다.
제안 방법
- 학습 가능한 문자 임베딩을 사용하여 입력 문자 시퀀스를 s x m 매트릭스로 임베딩한다 (s=200, m=32).
- 커널 크기 k∈{2,3,4,5}의 다중 1D 컨볼루션을 적용하고 이벤트당 t=256개의 필터를 사용한 다음 SumPool을 통해 고정 길이의 특징 벡터를 얻는다.
- 컨볼루션 출력을 1024차원 특징 벡터로 연결한 다음 이를 두 계층의 Dense 네트워크에 통과시키고 이진 분류를 위한 최종 DenseSigmoid를 사용한다.
- 엔드 투 엔드 학습 중 정규화를 위해 계층별 BatchNorm과 드롭아웃(0.5, 레지스트리 키에는 0.2) 을 사용한다.
- Adam 옵티마이저를 사용한 바이너리 크로스 엔트로피 손실로 학습하고 배치를 균형 있게 유지한다(배치당 256개 중 128 악성 및 128 정상).
- URL에 대한 1024차 해시 벡터를 갖는 n-그램 특징 및 전문가 특징 모델을 포함한 베이스라인과 비교한다.
실험 결과
연구 질문
- RQ1임베딩이 있는 문자 수준 CNN이 수작업으로 설계된 특징 없이도 원시 아티팩트 문자열에서 구분 가능한 특징을 자동으로 학습할 수 있는가?
- RQ2전통적인 n-그램 또는 전문가 특징 베이스라인과 비교하여 eXpose 아키텍처가 악성 URLs, 파일 경로 및 레지스트리 키에서 어떻게 성능을 발휘하는가?
- RQ3다중 보안 아티팩트 유형에 걸쳐 배포 시나리오에서 중요한 낮은 거짓 양성률에서 엔드투엔드 딥러닝이 탐지 성능을 향상시키는가?
- RQ4임베딩 차원수, 문자열 길이 처리 및 정규화가 성능에 미치는 영향은 무엇인가?
- RQ5학습된 문자 임베딩이 작업 간에 의미적으로 유사한 문자를 의미 있게 클러스터링하는가?
주요 결과
- eXpose는 세 가지 문제(URLs, 파일 경로, 레지스트리 키)에서 수동 특징 베이스라인을 능가한다.
- 거짓 양성률 10^-3에서 eXpose는 베이스라인보다 약 5%–10% 더 높은 탐지율을 달성한다.
- URLs의 경우, eXpose는 AUC 및 저-FPR 영역에서 n-그램 및 전문가 특징 베이스라인을 크게 능가한다.
- 파일 경로 및 레지스트리 키의 경우 라벨링 문제 및 데이터 양의 한계로 인해 결과가 제약되지만 eXpose는 베이스라인보다 탐지를 개선한다.
- 학습된 문자 임베딩이 의미적으로 유사한 문자를 클러스터링하여 의미 있는 표현을 나타낸다.
- 임베딩이 있는 엔드-투-엔드 CNN은 원시 문자열에서 판별 가능한 특징을 효과적으로 추출하여 수작업 특징의 필요성을 줄인다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.