[논문 리뷰] Intra-Section Code Cave Injection for Adversarial Evasion Attacks on Windows PE Malware File
이 논문은 머신러닝 기반 윈도우 PE 악성코드 탐지기들을 회피하기 위해 악성코드 파일의 .text, .data 또는 .rdata 섹션 내부에 적대적 편향을 임베딩하는 새로운 내부 섹션 코드 캐브 주입 기법을 제안한다. 경사하강법을 사용하여 MalConv2에 대해 최대 97.93%의 회피율을 달성하며, 첨부 기반 공격에 비해 뛰어난 성능을 보이며, 런타임에 원래 악성코드 동작을 복원하는 맞춤형 코드 로더를 통해 기능 유지 성능도 효과적으로 확보한다.
Windows malware is predominantly available in cyberspace and is a prime target for deliberate adversarial evasion attacks. Although researchers have investigated the adversarial malware attack problem, a multitude of important questions remain unanswered, including (a) Are the existing techniques to inject adversarial perturbations in Windows Portable Executable (PE) malware files effective enough for evasion purposes?; (b) Does the attack process preserve the original behavior of malware?; (c) Are there unexplored approaches/locations that can be used to carry out adversarial evasion attacks on Windows PE malware?; and (d) What are the optimal locations and sizes of adversarial perturbations required to evade an ML-based malware detector without significant structural change in the PE file? To answer some of these questions, this work proposes a novel approach that injects a code cave within the section (i.e., intra-section) of Windows PE malware files to make space for adversarial perturbations. In addition, a code loader is also injected inside the PE file, which reverts adversarial malware to its original form during the execution, preserving the malware's functionality and executability. To understand the effectiveness of our approach, we injected adversarial perturbations inside the .text, .data and .rdata sections, generated using the gradient descent and Fast Gradient Sign Method (FGSM), to target the two popular CNN-based malware detectors, MalConv and MalConv2. Our experiments yielded notable results, achieving a 92.31% evasion rate with gradient descent and 96.26% with FGSM against MalConv, compared to the 16.17% evasion rate for append attacks. Similarly, when targeting MalConv2, our approach achieved a remarkable maximum evasion rate of 97.93% with gradient descent and 94.34% with FGSM, significantly surpassing the 4.01% evasion rate observed with append attacks.
연구 동기 및 목표
- 기능을 유지하는 효과적이고 도드라지지 않는 적대적 회피 기법이 부족한 윈도우 PE 악성코드에 대해 이를 해결하고자 한다.
- 기존 PE 섹션 내부에(내부 섹션) 적대적 편향을 주입하는 것이 파일 끝에 첨부하는 것보다 더 효과적인지 조사하고자 한다.
- 적대적 편향 주입 후에도 악성코드 실행 가능성과 원래 동작을 유지하는 방법을 개발하고자 한다.
- 편향 크기와 위치가 최신 딥러닝 기반 악성코드 탐지기들에 대한 회피 성공률에 미치는 영향을 평가하고자 한다.
- 섹션 내부의 코드 캐브를 사용하는 것이 아니라, 섹션 간 또는 파일 끝에 주입하는 것보다 타당성과 효과성이 있는지 탐색하고자 한다.
제안 방법
- 윈도우 PE 파일의 .text, .data 또는 .rdata 섹션 내부에 존재하는 기존 코드 캐브에 적대적 편향을 주입함으로써, 파일 끝에 첨부하는 방식을 피한다.
- MalConv 및 MalConv2 모델을 대상으로 경사하강법과 빠른 기울기 부호 방법(Fast Gradient Sign Method, FGSM)을 사용해 적대적 편향을 생성한다.
- 24바이트의 코드 로더를 악성코드에 주입하여 런타임에 편향을 오버라이드함으로써 원래 악성코드 기능을 복원한다.
- 메모리 로딩의 예측 가능성을 확보하고 코드 로더 실행의 신뢰성을 높이기 위해 PE 헤더에서 주소 공간 레이아웃 무작위화(ASLR)를 비활성화한다.
- PE 파일의 구조와 무결성을 유지하면서 코드 캐브 삽입 및 섹션 헤더 수정을 위한 맞춤형 바이너리 조작 파이프라인을 활용한다.
- 런타임 오류나 충돌이 없는지 확인하기 위해 윈도우 가상 머신에서 실행하고 디버깅을 통해 기능성을 검증한다.
실험 결과
연구 질문
- RQ1기존의 윈도우 PE 악성코드 파일에 대한 적대적 편향 주입 기법은 회피 목적을 위해 충분히 효과적인가?
- RQ2편향 주입 후 공격 과정이 악성코드의 원래 동작과 실행 가능성을 유지하는가?
- RQ3특히 내부 섹션 코드 캐브와 같은, 아직 탐색되지 않은 주입 위치가 존재하는가?
- RQ4파일의 구조적 무결성을 손상시키지 않으면서 ML 기반 악성코드 탐지기들을 회피하기 위해 필요한 최적의 편향 위치와 크기는 무엇인가?
- RQ5내부 섹션 주입 방식이 전통적인 첨부 기반 공격 방법에 비해 회피율과 은폐성 측면에서 뛰어나지 않는가?
주요 결과
- 제안된 내부 섹션 코드 캐브 주입 기법은 경사하강법을 사용해 MalConv에 대해 92.31%의 회피율을 달성하였으며, 첨부 기반 공격의 16.17%에 비해 뚜렷이 뛰어난 성능을 보였다.
- MalConv2에 대해선 경사하강법을 사용해 최대 97.93%의 회피율을 기록하였고, 첨부 공격의 경우 단지 4.01%에 그쳤다.
- FGSM를 사용했을 경우, MalConv에 대해선 96.26%의 회피율, MalConv2에 대해선 94.34%의 회피율을 달성하여 다양한 공격 방법에 대해 높은 효과성을 입증하였다.
- 코드 로더의 주입은 런타임에 원래 악성코드 동작을 성공적으로 복원하여, 대규모 바이트 수정에도 불구하고 기능 유지가 효과적으로 이루어졌다.
- 내부 섹션 주입은 파일 끝이나 섹션 간 주입보다 더 효과적이고 은폐성이 뛰어나며, 편향이 정상 코드와 함께 공존하여 정적 분석에 덜 노출되기 때문이다.
- 하드코딩된 코드 로더와 ASLR 비활성화로 인해 32비트 x86 바이너리에 국한되지만, 소수의 조정만으로 다른 아키텍처로의 이식 가능성은 충분히 있다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.