메모리에서만 : 파일리스 맬웨어 – 애매한 TTP

레거시 AV, 화이트리스트, 샌드 박스 및 기계 학습 방법조차 파일리스 공격으로부터 보호 할 수없는 경우’s 왼쪽? 조직은 여러 방법을 결합한 통합 접근 방식을 취함으로써 스스로를 보호 할 수 있습니다.

요약:

파일리스 맬웨어라고도하는 메모리 전용 맬웨어는 Target Data Heist와 같은 최근 데이터 유출로 인해 주목을 받고 있습니다. 이러한 유형의 맬웨어 프로그램은 RAM에 자신을로드하고 하드 드라이브에 스스로 설치하지 않으므로 감지하기가 어렵습니다. 그러나 메모리 전용 맬웨어가 큰 관심사가되어서는 안되는 몇 가지 이유가 있습니다.

키 포인트:

  1. 대부분의 메모리 전용 맬웨어는 재부팅을 통해 지속될 수 없으므로 정리하기가 더 쉽습니다.
  2. antimalware 프로그램은 하드 드라이브 또는 SSD를 스캔하는 것보다 메모리 스캔에 더 효율적입니다.
  3. 메모리 전용 맬웨어가 다른 유형의 맬웨어보다 감지하기 어렵다는 증거는 없습니다.
  4. 메모리 전용 맬웨어는 오랫동안 주변에 있었으며, antimalware 프로그램은이를 쉽게 감지 할 수 있습니다.

질문:

  1. 메모리 전용 맬웨어와 관련된 핵심 요점은 무엇입니까??
    메모리 전용 맬웨어와 관련된 주요 요점은 대부분의 메모리 전용 맬웨어가 재부팅에서 살아남을 수없고, 안티 맨웨어 프로그램이 메모리를 스캔하는 데 어려움이 없으며, 메모리 전용 맬웨어가 감지하기 어렵다는 증거는 없으며 메모리 전용 맬웨어가 오랫동안 주변에 있음을 암시하는 증거는 없습니다.
  2. 메모리 전용 맬웨어를 정리하는 것이 더 쉬운 이유는 무엇입니까??
    재부팅을 통해 지속되지 않으므로 컴퓨터를 재부팅하여 메모리 전용 맬웨어를 쉽게 정리할 수 있습니다.
  3. 메모리를 스캔하는 데 항구 프로그램이 더 효율적 인 이유는 무엇입니까??
    스캔 메모리는 하드 드라이브 또는 SSD를 스캔하는 것보다 훨씬 빠르며 디스크 공간에 비해 스캔 할 RAM이 적습니다.
  4. 메모리 전용 맬웨어가 감지하기가 더 어렵다는 증거가 있습니까??
    아니요, 메모리 전용 맬웨어가 감지하기가 더 어렵다는 증거는 없습니다. antimalware 프로그램은 메모리 전용 맬웨어를 쉽게 감지 할 수 있습니다.
  5. 메모리 전용 맬웨어가 오랫동안 주변에있었습니다?
    예, 메모리 전용 맬웨어는 오랫동안 주변에있었습니다. 2003 년 SQL Slammer Worm은 메모리 전용 맬웨어의 예입니다.
  6. 메모리 전용 맬웨어의 이점은 무엇입니까??
    메모리 전용 맬웨어의 이점에는 재부팅을 통한 더 쉽게 정리하고, 항정웨어 프로그램에 의한 더 빠른 스캔 및 탐지에 어려움이 증가한다는 증거가 없습니다.
  7. 메모리 전용 맬웨어에 대한 일반적인 오해는 무엇입니까??
    메모리 전용 맬웨어에 대한 몇 가지 일반적인 오해는 다른 유형의 맬웨어보다 감지하기 어렵고 위험하다는 것입니다.
  8. 메모리 전용 맬웨어는 다른 유형의 맬웨어와 어떻게 비교됩니까??
    메모리 전용 맬웨어는 본질적으로 다른 유형의 맬웨어보다 더 위험하거나 감지하기 어렵지 않습니다.
  9. 메모리 전용 맬웨어 감지에 대한 연구가 있습니까??
    메모리 전용 맬웨어가 감지하기가 더 어렵거나 잘못된 부정이 증가했음을 나타내는 연구는 없었습니다.
  10. 조직이 메모리 전용 맬웨어에 대해 걱정하지 않는 이유는 무엇입니까??
    조직은 메모리 전용 맬웨어가 쉽게 정리할 수 있기 때문에 걱정하지 않아야하며, antimalware 프로그램은 효율적으로 감지 할 수 있으며, 탐지에 어려움이 증가한다는 증거는 없습니다.

답변:

  1. 메모리 전용 맬웨어는 다음과 같은 주요 포인트로 요약 할 수 있습니다. 대부분의 메모리 전용 맬웨어는 재부팅에서 살아남을 수없고, 메모리를 스캔하는 데 효율적이며, 감지의 어려움이 증가하고 메모리 전용 맬웨어가 오랫동안 임시 있다는 증거는 없습니다. 이러한 핵심 사항은 메모리 전용 맬웨어가 큰 관심사가되어서는 안된다는 확신을 제공합니다.
  2. 재부팅을 통해 지속될 수 없기 때문에 메모리 전용 맬웨어가 더 쉽게 정리할 수 있습니다. 초기 진입 점을 닫고 컴퓨터 재부팅을 통해 메모리 전용 맬웨어는 광범위한 검색 및 정리없이 효과적으로 제거됩니다.
  3. antimalware 프로그램은 하드 드라이브 또는 SSD를 스캔하는 것과 비교하여 메모리 스캔에 더 효율적입니다. 스캔 메모리는 상당히 빠르고 리소스가 훨씬 적으므로 안티 맨웨어 프로그램이 메모리 전용 맬웨어를 신속하게 감지하고 제거 할 수 있습니다.
  4. 메모리 전용 맬웨어가 다른 유형의 맬웨어보다 감지하기 어렵다는 증거는 없습니다. antimalware 프로그램은 메모리 전용 맬웨어를 쉽게 감지하며 탐지의 어려움이 증가하거나 오 탐지가 더 높은 연구는 없었습니다.
  5. 메모리 전용 맬웨어는 오랫동안 주변에 있었으며 2003 년 SQL Slammer Worm과 같은 예제가 있습니다. 급속한 확산과 잠재적 영향에도 불구하고 메모리 전용 맬웨어는 antimalware 프로그램에 의해 쉽게 감지 될 수 있습니다.
  6. 메모리 전용 맬웨어의 이점에는 재부팅을 통한 더 쉽게 정리하는 것이 포함됩니다. 재부팅을 통해 메모리 전용 맬웨어가 지속될 수 없으므로 컴퓨터를 다시 시작하면 맬웨어의 흔적이 제거되어 복잡한 정리 절차가 필요하지 않습니다.
  7. 메모리 전용 맬웨어에 대한 몇 가지 일반적인 오해는 다른 유형의 맬웨어보다 감지하기 어렵고 위험하다는 것입니다. 그러나 antimalware 프로그램은 메모리 전용 맬웨어를 감지하는 데 어려움이 없으며 다른 유형의 맬웨어에 비해 위험이 높아지는 증거는 없습니다.
  8. 메모리 전용 맬웨어는 본질적으로 다른 유형의 맬웨어보다 더 위험하거나 감지하기 어렵지 않습니다. 특정 탐지 방법을 피하는 것과 같은 공격자에게 특정 이점을 제공하지만, 메모리 전용 맬웨어를 효과적으로 식별하고 제거 할 수있는 항구 프로그램이 장착되어 있습니다.
  9. 메모리 전용 맬웨어가 감지하기가 더 어렵거나 잘못된 부정이 증가했음을 나타내는 연구는 없었습니다. antimalware 프로그램은 메모리 전용 맬웨어를 안정적으로 감지 할 수 있으며 현재 감지 방법이 불충분하다는 증거는 없습니다.
  10. 조직은 메모리 전용 맬웨어를 쉽게 정리할 수 있기 때문에 메모리 전용 맬웨어에 대해 걱정하지 않아야하며, 방해제 프로그램은이를 감지하는 데 효율적이며 탐지에 어려움이 증가한다는 증거는 없습니다. 여러 보안 방법을 결합한 통합 접근 방식을 채택함으로써 조직은 메모리 전용 맬웨어로부터 효과적으로 보호 할 수 있습니다.

이 이야기는 “메모리 전용 맬웨어에 대해 걱정해야합니다?,”원래 InfoWorld에서 출판되었습니다.com. Network Security의 최신 개발을 계속하고 InfoWorld의 Roger Grimes의 보안 보좌관 블로그를 더 읽어보십시오.com. 최신 비즈니스 기술 뉴스를 보려면 InfoWorld를 따르십시오.트위터에서 com.

메모리에서만 : 파일리스 맬웨어 – 애매한 TTP

CTA (Cyber ​​Threat Actors)의 파일리스 맬웨어 및 토지에서의 생활 (LOTL) 기술의 사용은 수년에 걸쳐 증가 해 왔습니다. WatchGuard의 Endpoint Tools의 데이터는 2020 년에 2020 년 파일리스 또는 LOTL 공격의 약 80 %가 이미 2021 년 말까지 이미 감지되었음을 나타냅니다. Symantec의 데이터는 또한 2019 년부터 2020 년까지 CTA의 합법적 인 도구를 악의적으로 사용하는 것이 크게 증가했습니다. Endpoint Risk Management를 담당하는 Ponemon Institute의 IT 전문가에 대한 설문 조사는 엔터프라이즈 환경에서 파일리스 맬웨어 및 LOTL 사용의 증가를 추가로 확인합니다.

참조 :

그림 1 : 그림 1 합법적 인 도구의 악의적 인 사용을 묘사 한 2019-2020의 데이터. (출처 : Symantec)

2005 년부터 보안 칼럼니스트 인 Roger Grimes는 40 개가 넘는 컴퓨터 인증을 보유하고 있으며 컴퓨터 보안에 관한 10 권의 책을 저술했습니다.

저작권 © 2014 IDG Communications, Inc.


메모리에서만 : 파일리스 맬웨어 – 애매한 TTP

레거시 AV, 화이트리스트, 샌드 박스 및 기계 학습 방법조차 파일리스 공격으로부터 보호 할 수없는 경우’s 왼쪽? 조직은 여러 방법을 결합한 통합 접근 방식을 취함으로써 스스로를 보호 할 수 있습니다.

메모리 전용 맬웨어에 대해 걱정해야합니다?

4 천만 개가 넘는 신용 카드 기록의 최근 대상 데이터 습격은 메모리 전용 맬웨어의 영향에 대해 많은 걱정하고 있습니다. Blackpos의 변형 인 Target Malware는 Trojan으로 알려진 트로이 목마 가족의 일부입니다.POSRAM. 초기 착취 후,이 프로그램은 단순히 RAM에 자신을로드합니다. 하드 드라이브에 스스로 설치하지 않습니다.

“소프트웨어 발자국”의 부족으로 인해 RAM 전용 맬웨어 프로그램이 애매하게. 어떤 사람들은 진정으로 두려워해야한다고 말합니다. 다른 맬웨어 프로그램보다 그들에 대해 더 걱정해야합니다?

[또한 Infoworld : 컴퓨터 보안에 대한 13 가지 어려운 질문. | InfoWorld의 Security Central 뉴스 레터의 주요 보안 문제를 해결하십시오. ]]

메모리 전용 트로이 목마에 대한 공황은 루트 키트 맬웨어에 대한 모든 종말 예언을 상기시켜줍니다.”로빙 봇 벌레, 이메일 첨부 파일 바이러스, 부츠 바이러스 및 DNS 납치범에 대한 과거의 히스테리를 떠올리게합니다. 새로 발견 된 맬웨어 유형은 처음에는 무섭게 들렸지 만, 이제 antimalware 프로그램은 이제 그들 모두를 쉽게 감지합니다. Antimalware 소프트웨어에 대한 유일한 과제는 매일 나타나는 수많은 새로운 맬웨어 프로그램을 따라 잡는 것입니다. 전체를 감지합니다 유형 맬웨어의 문제는 거의 문제가되지 않았습니다.

사실, 메모리 전용 맬웨어는 몇 가지 이유로 일종의 축복입니다.

첫째, 대부분의 메모리 전용 맬웨어는 재부팅을 통해 살 수 없습니다. 사실, 처음에 초기 액세스를 얻을 수있는 것을 고쳤다면 맬웨어가 다시 들어갑니다. 그러나 초기 엔트리 홀을 닫으면 간단한 재부팅이 맬웨어 엉망을 정리할 수 있다는 것이 얼마나 좋은지? 하드 드라이브 주위에 수정 된 모든 장소를 찾거나 숨어있을 수있는 모든 장소를 찾으려고 노력하고 호스트 실행 파일에서 바이러스를 끌어 당기지 않고 Humpty-Dumpty를 다시 모으는 방법을 결정하려고 시도하고 모든 것을 얻었는지 궁금하지 않습니다. 컴퓨터를 재부팅하고 휴식을 취하십시오. 나는 멕시코의 해변에서 나 자신을 촬영하고 황금 맥주로 물러납니다.

둘째, antimalware 프로그램은 나쁜 행위자에 대한 메모리를 스캔하는 것을 좋아합니다. 속도를 늦추는 것은 메모리가 아닌 아이템입니다. 스캔 메모리는 하드 드라이브를 스캔하는 것보다 말 그대로 수천 배 더 빠를 수 있습니다. SSD를 스캔하는 것보다 훨씬 빠릅니다. 물론 스캔 할 디스크보다 RAM이 훨씬 적습니다. 안티 맨웨어 스캐너는 가능하다면 메모리를 고수하고 싶을 것입니다. 성능 히트는 증발 할 것입니다.

셋째, 메모리 전용 맬웨어가 감지하기가 어렵거나 발생했다고 말하는 연구는 보지 못했습니다. 이것이 대부분의 사람들이 걱정하는 것입니다. 나는 아직 실제 증거를 보지 못했습니다.

마지막으로 BlackPOS는 몇 년 동안 주변에 있었지만 오랫동안 메모리 전용 맬웨어가있었습니다. 예를 들어, 2003 년의 SQL Slammer Worm은 메모리 전용이었습니다. 오늘날까지 SQL Slammer는 여전히 가장 빠른 웜의 제목을 보유하고 있습니다. 약 10 분 안에 인터넷에서 거의 모든 배치되지 않은 SQL 서버를 이용했습니다. 하지만 나쁘게, 나는 정리를 좋아했습니다. 당신은 서버를 패치하고 재부팅했습니다. 진성! 나쁜 것은 영원히 사라졌습니다. 오 예, 그것은 세계의 모든 바이러스 백신 프로그램에 의해 쉽게 감지되었습니다.

그래서, 나는 메모리 전용 맬웨어를 두려워하지 않습니다. 반대로, 나는 손가락을 건너 모든 맬웨어가 메모리 전용이되기를 바라고 있습니다.

이 이야기는 “메모리 전용 맬웨어에 대해 걱정해야합니다?,”원래 InfoWorld에서 출판되었습니다.com. Network Security의 최신 개발을 계속하고 InfoWorld의 Roger Grimes의 보안 보좌관 블로그를 더 읽어보십시오.com. 최신 비즈니스 기술 뉴스를 보려면 InfoWorld를 따르십시오.트위터에서 com.

  • 가장 강력한 사이버 보안 회사
  • 7 개의 뜨거운 사이버 보안 트렌드 (및 2 개가 추워지기)
  • Apache Log4J 취약점 : 타임 라인
  • NIST 사이버 보안 프레임 워크를 사용하여 조직 위험을 해결합니다
  • 11 침투 테스트 도구 전문가가 사용합니다
  • 보안
  • 데이터 및 정보 보안
  • 맬웨어

2005 년부터 보안 칼럼니스트 인 Roger Grimes는 40 개가 넘는 컴퓨터 인증을 보유하고 있으며 컴퓨터 보안에 관한 10 권의 책을 저술했습니다.

Copyright © 2014 IDG Communications, Inc.

메모리에서만 : 파일리스 맬웨어 – 애매한 TTP

산업 데이터는 사이버 위협 행위자의 상당한 성장을 보여줍니다 (CTA’) 지난 몇 년 동안 파일리스 맬웨어 사용 및 토지에서의 생활 (LOTL) 기술 사용.

  • 2021 년 말까지 WatchGuard의 엔드 포인트 도구는 “이미 2020 년 동안 보았던 토지 공격의 약 80 %를 감지했거나 살았습니다.”
  • 그림 1에서는 Symantec을 볼 수 있습니다’2019 년과 2020 년의 데이터 데이터는 CTA의 주목할만한 급여를 보여줍니다’ 그 기간 동안 합법적 인 도구의 악의적 인 사용.
  • 그림 2는 엔드 포인트 리스크 관리를 담당하는 IT 전문가를 조사함으로써 배운 것처럼 엔터프라이즈 환경에서 파일리스 맬웨어 및 LOTL 사용이 어떻게 증가하고 있는지 보여줍니다.

그림 1 : 합법적 인 도구의 악의적 인 사용을 묘사 한 2019-2020의 데이터. (출처 : Symantec)

메모리 파일리스 맬웨어에서만 애매한 TTP 인라인 그래픽 1

그림 2 : Ponemon Institute를 기반으로 한 예측’종말점 보안 위험 조사에 관한 연례 2020 연구. (출처 : Morphisec)

메모리 파일리스 맬웨어에서만 애매한 TTP 인라인 그래픽 2

파일리스 맬웨어는 무엇입니까??

파일리스 맬웨어는 악성 실행 파일을 사용하여 디스크에 쓰는 기존 맬웨어와 달리 메모리에서 실행되는 악성 소프트웨어입니다. 감염 후 CTA는 파일리스 맬웨어를 배포하여 일반적으로 Windows PowerShell 및 Windows Management Instrumentation (WMI)과 같은 정당한 시스템 및 관리 도구를 활용하여 LOTL의 지속성을 얻습니다. 일단 CTA가 피해자에게 발판을 세우면’S 환경에서는 특권을 확대하고 네트워크를 가로 질러 측면으로 이동할 수 있습니다 (그림 3 참조). 일반적인 파일리스 맬웨어 변형에는 Darkwatchman, Panda Stealer, Bitrat 및 Avemariarat가 포함됩니다.

그림 3 : 예제가있는 파일리스 맬웨어 공격 체인

메모리 파일리스 맬웨어에서만 애매한 TTP 인라인 그래픽 3

파일리스 맬웨어는 메모리에서 실행되며 신뢰할 수있는 도구를 활용하므로 종종 서명 기반 바이러스 백신 및 침입 탐지 시스템에 양성으로 보입니다. 이를 통해 감지되지 않은 운영, 지속성을 유지하며 피해자 조직을 지속적으로 침입하는 데 효과적으로 눈을 멀게하지 않고 피해자 조직을 떠날 수 있습니다. 실제로 조직’ 네트워크를 방어하기위한 서명 기반 도구에 대한 크게 의존하는 것은 CTA가 파일리스 맬웨어로 네트워크를 공격하도록 동기를 부여하는 중요한 운전자 일 것입니다.

파일리스 맬웨어에 대한 방어

MS-ISAC (Multi-State Information Sharing and Analysis Center)의 CTI (Cyber ​​Threat Intelligence) 팀의 분석에 따르면 CTA는 더 넓은 조직 방어 방어 배포에도 불구하고 조직을 계속 타협 할 것입니다. 실제로, 그들의 평가에 따르면 파일리스 맬웨어와 LOTL은 2022 년 엔터프라이즈 환경에 대한 총 공격의 50%로 상승하여 처음으로 파일 기반 공격의 빈도와 일치합니다. (이 불균형은 CTA에서 발생할 수 있습니다’ 파일리스 맬웨어는 아웃 페이싱 조직을 사용합니다’ 방어 구현.))

조직은 다음과 같은 우선 순위를 정하기 위해 파일리스 맬웨어에 대해 훨씬 더 나은 자세를 취할 것입니다

  • Defence-in-Depth : 파일리스 맬웨어에 대한 효과적인 사이버 방어는 적극적으로 유지 관리 된 방화벽, ID/침입 방지 시스템, ESS, 네트워크 및 시스템 기준선, 최소 특권, 로그 관리, 강력한 비밀번호 요구 사항 및 적절한 패치 원칙과 같은 필수 모범 사례 및 도구를 레이어링 할 수있는 방어 전략을 활용할 수 있습니다.
    • CIS Endpoint Security Services (ESS) : CIS (Center for Internet Security)에서 제공하는이 서비스는 파일리스 맬웨어 및 LOTL 기술을 포함한 의심스러운 패턴에 대한 엔드 포인트 데이터를 분석합니다. 그런 다음 위협의 특성에 따라 비정상적인 활동을 경고하거나 차단합니다.
    • CIS Critical Security Controls (CIS Controls) : 사이버 방어를위한 우선 순위 및 권장 조치 세트 인 CIS 제어는 가장 널리 퍼지고 위험한 공격으로부터 보호 할 수있는 구체적이고 실행 가능한 방법을 제공합니다

    파일리스 맬웨어와 관련된 다른 중요한 방어는 antimalware 스캔 인터페이스 (AMSI), 동작 모니터링, 메모리 스캔, PowerShell을 서명 된 스크립트로만 제한하거나, PowerShell 및 WMI를 특정 워크 스테이션으로 제한하고, 액세스가 필요한 특정 계정으로 만 제한하고, 끝 부분에서 부팅 섹터 보호를 제한하는 것을 포함합니다.

    SLTTS에 대한 추가 보호

    파일리스 맬웨어와 싸우는 데있어 U.에스. 주, 지역, 부족 및 영토 (SLTT) 정부 기관은 그들이 얻을 수있는 모든 도움이 필요합니다. 다행히도 이러한 조직은 MS-ISAC에 가입하여 충분한 지원을받을 수 있습니다. 회원으로서, 그들은 파일리스 맬웨어의 진화를 포함하여 위협 환경을 탐색하는 정기적 인 위협 경고 및 브리핑에 대한 액세스를 받게됩니다. 또한 악의적 인 지표를 실시간으로 수집/차단하는 지표 공유 프로그램에 참여할 것입니다. 이 지능과 MS-ISAC의 다른 리소스는 SLTT가 발표없는 악성 코드로부터 자신을 보호하는 데 도움이됩니다.

    파일리스 맬웨어 설명했다

    파일리스 맬웨어. 기존 맬웨어와 달리 파일리스 맬웨어는 공격자가 대상에 코드를 설치할 필요가 없습니다’S 시스템, 감지하기 어렵게 만듭니다.

    기본 도구를 사용하여 악의적 인 공격을 수행하는이 파일리스 기술

    일반적인 파일리스 맬웨어 기술

    공격자가 돈을받는 동안’t 파일리스 맬웨어 공격을 시작하려면 코드를 설치해야하지만 여전히 환경에 액세스해야하여 기본 도구를 수정하여 목적을 달성 할 수 있습니다. 액세스 및 공격은 다음과 같은 여러 가지 방법으로 수행 할 수 있습니다

    • 키트를 이용하십시오
    • 납치 된 기본 도구
    • 레지스트리 상주 맬웨어
    • 메모리 전용 맬웨어
    • 파일리스 랜섬웨어
    • 도난당한 자격 증명

    키트를 이용하십시오

    익스플로잇은 코드, 명령 시퀀스 또는 데이터 컬렉션이며, 악용 키트는 Exploits 컬렉션입니다. Adversaries는 이러한 도구를 사용하여 운영 체제 또는 설치된 응용 프로그램에 존재하는 것으로 알려진 취약점을 활용합니다.

    익스플로잇. 적대자들은 그것들을 사용하여 초기 타협을 규모로 자동화 할 수 있습니다.

    공격이 파일이 없거나 기존 맬웨어를 사용하는지 여부에 관계없이 같은 방식으로 이용이 시작됩니다. 일반적으로 피해자는 피싱 이메일이나 사회 공학을 통해 유혹됩니다. Exploit Kit에는 일반적으로 공격자가 시스템을 제어하는 ​​데 사용할 수있는 여러 취약점과 관리 콘솔이 포함되어 있습니다. 경우에 따라 Exploit 키트에는 취약점을 위해 Targeted 시스템을 스캔하는 기능이 포함 된 다음 즉시 맞춤형 익스플로잇을 제작하고 시작합니다.

    레지스트리 상주 맬웨어

    레지스트리 상주 맬웨어는 감지를 피하기 위해 지속적으로 유지하기 위해 Windows 레지스트리에 자체적으로 설치되는 맬웨어입니다.
    일반적으로 Windows 시스템은 악성 파일을 다운로드하는 드롭퍼 프로그램을 사용하여 감염됩니다. 이 악성 파일은 대상 시스템에서 활성화되어있어 바이러스 백신 소프트웨어의 탐지에 취약합니다. 파일리스 맬웨어는 또한 드롭퍼 프로그램을 사용할 수 있지만’t 악성 파일을 다운로드하십시오. 대신, Dropper 프로그램 자체는 악성 코드를 Windows 레지스트리에 바로 씁니다.

    악의적 인 코드는 OS를 시작할 때마다 시작하도록 프로그래밍 할 수 있으며, 발견 할 수있는 악성 파일이 없다 – 악성 코드는 AV 감지에 적용되지 않는 기본 파일에 숨겨져있다.

    이 유형의 공격의 가장 오래된 변형은 Poweliks이지만, 그 이후로 Kovter와 Gootkit을 포함하여 많은 사람들이 등장했습니다. 레지스트리 키를 수정하는 맬웨어는 장기간 감지되지 않은 상태로 유지 될 가능성이 높습니다.

    메모리 전용 맬웨어

    메모리 전용 맬웨어는 메모리에만 있습니다. 메모리 전용 맬웨어의 예는 Duqu Worm이며, 메모리에만 독점적으로 존재하기 때문에 감지되지 않은 상태로 유지 될 수 있습니다. 듀크 2.0은 두 가지 버전으로 제공됩니다. 첫 번째는 적대자가 조직에서 발판을 얻을 수있는 백도어입니다. 그런 다음 대적은 Duqu 2의 고급 버전을 사용할 수 있습니다.0, 정찰, 측면 이동 및 데이터 추출과 같은 추가 기능을 제공합니다. 듀크 2.0은 통신 업계의 회사를 성공적으로 위반하는 데 사용되었으며 적어도 하나의 잘 알려진 보안 소프트웨어 제공 업체.

    적대자들은 자신을 한 유형의 공격으로 제한하지 않습니다. 그들은 페이로드를 캡처하는 데 도움이되는 모든 기술을 사용합니다. 오늘날 랜섬웨어 공격자는 파일리스 기술을 사용하여 매크로와 같은 기본 스크립팅 언어를 사용하여 문서에 악성 코드를 포함 시키거나 악용을 사용하여 악성 코드를 메모리에 직접 작성하고 있습니다. 그런 다음 랜섬웨어는 PowerShell과 같은 기본 도구를 납치하여 디스크에 한 줄을 작성하지 않고 인질 파일을 암호화합니다.

    도난당한 자격 증명

    공격자는 도난당한 자격 증명을 사용하여 파일리스 공격을 시작하여 합법적 인 사용자의 모습에 따라 목표에 액세스 할 수 있습니다. 내부에 나면 공격자는 WMI (Windows Management Instrumentation) 또는 PowerShell과 같은 기본 도구를 사용하여 공격을 수행 할 수 있습니다. 레지스트리 또는 커널에 코드를 숨기거나 원하는 시스템에 액세스 할 수있는 사용자 계정을 작성하여 지속성을 설정할 수 있습니다.

    적대자들이 파일리스 공격을 사용하여 보안을 피하는 방법

    이 백서를 다운로드하여 초기 타협, 명령 및 통제, 특권 확대 및 지속성 확립을 포함하여 파일이없는 침입의 상세한 해부학을 배우십시오.

    파일리스 공격의 단계

    파일리스 공격이 어떻게 작동하는지 보여주기 위해 아래는 CrowdStrike Services Incident Response (IR) 팀이 발견하지 못하는 실제 파일리스 침입을 보여주는 인포 그래픽입니다.

    1 단계 : 액세스를 얻습니다

    기술: 원격 액세스에 대한 취약성을 원격으로 이용하고 원격 액세스에 웹 스크립팅을 사용하십시오 (예 :. 중국 헬기)

    공격자는 피해자에 대한 원격 접근을 얻습니다’S 시스템, 그의 공격을위한 해변 헤드를 구축하기 위해.

    2 단계 : 자격 증명을 훔치십시오

    기술: 원격 액세스에 대한 취약성을 원격으로 이용하고 원격 액세스에 웹 스크립팅을 사용하십시오 (예 :. 미키 카츠)

    이전 단계에서 얻은 액세스를 사용하여 공격자는 이제 타협 한 환경에 대한 자격 증명을 얻으려고 노력하여 해당 환경에서 다른 시스템으로 쉽게 이동할 수 있습니다.

    3 단계 : 지속성을 유지하십시오

    기술: 백도어 생성을 위해 레지스트리를 수정하십시오 (예 :. 끈적 끈적한 키 우회)

    이제 공격자는 공격의 초기 단계를 반복하지 않고도이 환경으로 돌아갈 수있는 백도어를 설정합니다.

    4 단계 : Exfiltrate 데이터

    기술: 파일 시스템 및 내장 압축 유틸리티를 사용하여 데이터를 수집 한 다음 FTP를 사용하여 데이터를 업로드합니다

    마지막 단계에서 공격자는 원하는 데이터를 모아서 배출을 위해 준비하고 한 위치에 복사 한 다음 Compact와 같은 쉽게 사용할 수있는 시스템 도구를 사용하여 압축합니다. 그런 다음 공격자는 피해자의 데이터를 제거합니다’FTP를 통해 업로드하여 환경.

    파일리스 맬웨어를 감지하는 방법

    레거시 AV, 화이트리스트, 샌드 박스 및 기계 학습 방법조차 파일리스 공격으로부터 보호 할 수없는 경우’s 왼쪽? 조직은 여러 방법을 결합한 통합 접근 방식을 취함으로써 스스로를 보호 할 수 있습니다.

    타협의 지표 대신 공격 지표에 의존합니다

    공격 지표 (IOAS). IOA는 공격이 어떻게 실행되는지에 초점을 맞추지 않습니다. 대신 공격이 진행될 수 있다는 신호를 찾습니다.

    IOA에는 코드 실행, 측면 이동 및 동작과 같은 표시가 포함됩니다 그것은 그들의 진정한 의도를 망쳐 놓는 것 같습니다.

    IOA는 단계가 시작되거나 실행되는 방식에 초점을 맞추지 않습니다. 작업이 하드 드라이브의 파일 또는 파일리스 기술에서 시작되었는지 여부는 중요하지 않습니다. 중요한 것은 수행 된 행동, 다른 행동과 관련된 방법, 순서대로의 위치 및 종속 조치입니다. 이 지표는 그들의 행동과 주변의 사건의 진정한 의도와 목표를 보여줍니다.

    파일리스 공격은 PowerShell과 같은 합법적 인 스크립팅 언어를 악용하고 디스크 자체에 기록되지 않기 때문에 서명 기반 방법, 화이트리스트 및 샌드 박스에 의해 감지되지 않습니다. 기계 학습 방법조차도 파일리스 맬웨어를 분석하지 못합니다. 그러나 IOA는 미션을 달성하기 위해 파일리스 맬웨어조차 실행 해야하는 일련의 이벤트를 찾습니다.

    IOA는 의도, 상황 및 시퀀스를 조사하기 때문에 합법적 인 계정을 사용하여 수행되는 악의적 인 활동을 감지하고 차단할 수도 있습니다. 이는 공격자가 도난당한 자격 증명을 사용하는 경우가 종종 있습니다.

    관리되는 위협 사냥을 사용합니다

    파일리스 맬웨어에 대한 위협 사냥은 시간이 많이 걸리고 힘든 작업입니다. 그러나 파일리스 공격으로부터 보호하는 것은 방어의 필수 요소이며, 이러한 이유로 대부분의 조직에서 가장 실용적인 접근 방식은 위협 사냥을 전문 공급자에게 전환하는 것입니다.

    관리되는 위협 사냥 서비스는 24 시간 내내 감시하고, 침입을 적극적으로 검색하고, 환경 모니터링하고, 표준 보안 기술에 의해 눈에 띄지 않는 미묘한 활동을 인식하고 있습니다.

    CrowdStrike가 조직의 파일리스 공격을 방지 할 수있는 방법

    우리가 보았 듯이, 파일리스 기술은 서명 기반 방법, 샌드 박스, 화이트리스트 또는 머신 학습 보호 방법에 의존하는 경우 감지하기가 매우 어렵습니다.

    은밀하고 파일이없는 공격으로부터 보호하기 위해 Crowdstrike는 다수의 방법을 고유하게 결합하여 독창적이고 통합 된 접근 방식을 다루지 않은 엔드 포인트 보호를 제공합니다. CrowdStrike Falcon® 플랫폼은 단일 경량 에이전트를 통해 클라우드 네이티브, 차세대 엔드 포인트 보호를 제공하며 다양한 보완 예방 및 탐지 방법을 제공합니다

    • 애플리케이션 인벤토리는 귀하의 환경에서 실행되는 모든 응용 프로그램을 발견하여 취약점을 찾는 데 도움이되므로 패치 또는 업데이트 할 수 있습니다’악용 키트의 대상이 되십시오.
    • 악용 차단은 방치되지 않은 취약점을 활용하는 악용을 통한 파일리스 공격의 실행을 중지합니다.
    • 공격 지표 (IOA)는 공격의 초기 단계에서 악의적 인 활동을 식별하고 차단하기 전에 손상을 완전히 실행하고 유발하기 전에. 이 기능은 또한 파일을 사용하여 피해자 시스템을 암호화하지 않는 새로운 범주의 랜섬웨어로부터 보호합니다.
    • 스크립트 컨트롤.
    • Advanced Memory Scanning은 APT, 랜섬웨어 및 Cobalt Strike와 같은 이중 사용 도구와 같은 파일리스 및 악성 코드가없는 공격으로부터 보호합니다.
    • 파일리스 기술의 결과로 생성되는 악의적 인 활동에 대해 24 시간 내내 적극적으로 검색하는 관리 사냥.

    저자를 알아 가라

    Kurt Baker는 CrowdStrike에서 Falcon Intelligence 제품 마케팅 담당 수석 이사입니다. 그는 신흥 소프트웨어 회사를 전문으로하는 고위 리더십 직책에서 25 년 이상의 경험을 가지고 있습니다. 그는 사이버 위협 인텔리전스, 보안 분석, 보안 관리 및 고급 위협 보호에 대한 전문 지식을 보유하고 있습니다. CrowdStrike에 합류하기 전에 Baker는 Tripwire에서 기술 역할을 수행했으며 엔터프라이즈 보안 솔루션에서 모바일 장치에 이르기까지 시장에서 스타트 업을 공동 설립했습니다. 그는 워싱턴 대학교에서 예술 학사 학위를 취득했으며 현재 매사추세츠 주 보스턴에 위치하고 있습니다.

    딥 러닝 및 메모리 법의학을 기반으로 한 맬웨어 탐지 방법

    Qilu University of Technology (Shandong Academy of Sciences), Shandong Computer Science Center (Jinan의 NA-5 Tional Supercomputer Center), Shandong 지방의 주요 주요 실험실, Jinan 250014, China

    수학 연구소, 세르비아 과학 아카데미, 11000 베오그라드, 세르비아

    서신을 해결 해야하는 저자.

    대칭 2023, 15(3), 758; https : // doi.org/10.3390/sym15030758

    수신 : 2022 년 12 월 28 일 / 개정 : 2023 년 2 월 22 일 / 허용 : 2023 년 3 월 17 일 게시 : 2023 년 3 월 19 일

    추상적인

    사이버 공격이 더 복잡하고 정교 해짐에 따라 새로운 유형의 맬웨어가 더 위험하고 감지하기가 어려워집니다. 특히 파일리스 맬웨어. 이 유형의 공격은 은폐되어 있으며 정적 파일에서 악성 코드를 찾기가 어렵습니다. 메모리의 악의적 인 프로세스의 경우, 서명 기반 탐지 방법이 점점 비효율적이되고 있습니다. 이러한 과제에 직면 하여이 논문은 Convolutional Neural Network 및 Memory Forensics를 기반으로 한 맬웨어 탐지 방법을 제안합니다. 맬웨어에는 많은 대칭 기능이 있으므로 저장된 교육 모델은 대칭 기능으로 악성 코드를 감지 할 수 있습니다. 이 방법에는 실행 가능한 정적 악성 및 양성 샘플 수집, 수집 된 샘플을 샌드 박스에서 실행하며 메모리 법의 의식을 통해 메모리에 휴대용 실행 파일 데이터 세트를 구축하는 것이 포함됩니다. 프로세스가 실행될 때 모든 프로그램 컨텐츠가 메모리에로드되는 것은 아니므로 이진 조각이 전체 휴대용 실행 가능 (PE) 파일 대신 맬웨어 분석에 사용됩니다. PE 파일 조각은 다른 길이와 위치로 선택됩니다. 우리는 생산 된 데이터 세트에 대한 몇 가지 실험을 수행하여 모델을 테스트했습니다. 4096 바이트의 헤더 조각이있는 PE 파일은 정확도가 가장 높습니다. 우리는 최대 97의 예측 정확도를 달성했습니다.48%. 또한 신문 끝에 파일리스 공격의 예가 설명되어 있습니다. 결과는 제안 된 방법이 악성 코드, 특히 파일리스 공격을 효과적으로 감지 할 수 있음을 보여줍니다. 정확도는 일반적인 기계 학습 방법보다 낫습니다.

    1. 소개

    인터넷 기술의 발전으로 악성 코드 공격은 더 널리 퍼져서 정교 해졌습니다. 현재 맬웨어는 사이버 범죄자가 악의적 인 활동을 수행하기 위해 사용하는 지배적 인 공격 벡터 중 하나입니다 [1]. 매일 AV-TEST Institute는 450,000 개가 넘는 새로운 악성 프로그램 (Malware)과 잠재적으로 원치 않는 응용 프로그램 (PUA)을 등록합니다 [2]. 안티 바이러스 제품은 맬웨어를 감지하기 위해 정적 및 휴리스틱 분석 기술을 구현합니다. 불행하게도, 이러한 접근법은 난독 화 및 암호화 기술을 이용하는 정교한 맬웨어를 감지하는 데 덜 효과적이되었습니다 [3]. 특히, 파일리스 맬웨어 공격은 크게 사용되며 심각한 손실을 유발합니다. 파일리스 맬웨어는 파일에 의존하지 않고 컴퓨터 디스크에 발자국을 남기지 않는 악의적 인 소프트웨어 유형입니다. 서명을 모르고 알려지지 않은 악성 프로그램을 감지하기가 어렵습니다.

    이러한 위협에 맞서기 위해 딥 러닝, 메모리 법의학, 숫자 이론 등을 포함한 다양한 분야에서 많은 연구가 수행됩니다 [4,5,6]. 메모리 법의학은 커널 시스템의 내부 상태 및 실행 프로그램에 대한 고유 한 통찰력을 제공합니다 [7]. 메모리는 디스크에 기록되지 않더라도 감염으로부터 악의적 인 코드를 포함 할 수있는 잠재력이 높습니다. 메모리 법의학 분석 목표는 공격 추적을 추출 할 수있는 메모리 덤프입니다. 대조적으로, 이러한 흔적은 기존 디스크 분석 방법에 의해 사용할 수 없습니다. 메모리 분석 중에, 도구가 샌드 박스에서 실행되면서 Malwares가 전체 컴퓨터 시스템에 손상을 일으키는 것을 방지하여 가상 머신을 설정하여 달성됩니다. 가상 머신 (VM)에서 맬웨어가 실행될 때 메모리 데이터를 적시에 수집해야합니다. 이 백서에서는 메모리 데이터가 추가 분석을 위해 메모리 덤프 알고리즘을 사용하여 디스크에 덤프됩니다. 메모리 데이터를 덤프하는 것 외에도 악성 휴대용 실행 파일 (PE) 파일을 수천 개의 메모리 데이터에서 샘플 데이터로 추출해야합니다. Bozkir et al. [9]는 RGB 이미지로 표시 될 수있는 의심스러운 프로세스의 메모리 덤프를 캡처하여 맬웨어를 인식하는 접근법을 제시했습니다. 그러나 이러한 방식으로 악의적 인 메모리 데이터를 수집하는 것은 부적절합니다. 추출 된 프로세스는 잠재적으로 악성 코드를 메모리에로드하지 않았습니다. 악의적 인 행동을 수행하기 위해 일부 악성 프로세스가 새로운 프로세스에 주입됩니다. 이 경우 단일 악성 프로세스를 추출하면 프로세스의 악의적 인 행동을 완전히 반영 할 수 없습니다. 악성 실행 단일 프로세스를 추출하는 것만 메모리 분석의 가치를 완전히 반영 할 수 없습니다. 이 백서의 데이터 세트는 여러 메모리 이미지를 여러 번 가져 와서 모든 프로세스 및 DLL 데이터를 추출합니다. 이 정보를 면밀히 분석하면 양성 및 악성 데이터를 탐지 플랫폼을 통해 분류 할 수 있습니다.

    이 논문은 악의적 인 코드 감지 방법을 제안합니다. 신경망 모델은 샘플 조각을 감지하기 위해 구축되었습니다. 샘플 조각’전체 샘플 감지에 비해 시간 비용이 줄어 듭니다. 샘플 조각 감지로 인한 중요한 데이터 손실 문제를 줄이기 위해, 우리는 감지 된 세그먼트의 적절한 위치와 크기를 결정하기 위해 다른 위치와 길이를 감지하여 조각을 선택합니다.

    이 백서의 주요 기여는 다음과 같이 요약됩니다

    이 논문은 메모리에 휴대용 실행 파일 (PE) 파일 데이터 세트를 빌드하여 프로세스에서 더 악의적 인 메모리 샘플을 추출합니다. 이 백서는 먼저 잘 알려진 악성 샘플 라이브러리 Virusshare and Malshare에서 정적 PE 파일을 수집합니다. 그런 다음이 백서는 공식 Microsoft 플랫폼에서 공통 소프트웨어를 다운로드합니다. 마지막으로, 가상 머신을 실행하는 정적 샘플을 실행하고 동적 샘플을 추출하여 데이터 세트를 생성합니다

    우리는 신경망 (CNN)을 기반으로 모델을 구축하고 모델을 사용하여 메모리 세그먼트를 훈련하여 악성 코드의 정확한 탐지를 달성합니다

    우리는 논문에서 파일리스 맬웨어 공격의 예를 제시합니다. 동적 파일 데이터 세트가 구성되므로 감지 성능이 양호합니다 “파일 없음” 동적 파일에서만 감지 할 수있는 공격 및 악성 샘플.

    2. 관련된 일

    2.1. 메모리 법의학

    컴퓨터 법의학 접근법은 동적 및 정적 분석으로 나뉩니다. 정적 분석은 프로그램을 실행하지 않는 전제를 기반으로합니다. 여기에는 구성 요소의 추출 프로세스, 지침, 제어 흐름 및 시퀀스 정적 코드 기능의 기능 호출이 포함되어 있습니다. Jiang et al. [11]은 가상 머신에서 이진 파일의 무결성을 확인하기 위해 세밀한 이진 무결성 검증 체계 세트를 설계했습니다. 정적 분석 방법은 높은 샘플 적용 범위를 가졌다. 그럼에도 불구하고 변형, 다형성, 코드 난독 화 및 암호화와 같은 기술을 사용하여 악의적 인 코드를 탐지하기 위해서는 다중 분석이 필요했습니다 [12]. 동적 분석과 관련하여 메모리의 대부분의 정보는 메모리의 페이징 및 교체 메커니즘으로 인해 불완전했습니다. 프로그램은 실행 중에 모든 정보를 메모리로 전송하지 않았습니다. 정보의 일부만 메모리로 이동했습니다. 따라서 전체 실행 가능한 데이터를 얻을 수 없습니다.

    또한 악의적 인 프로그램이 바이러스/트로이 감지 도구가 소프트웨어를 실행하여 소프트웨어를 사용하여 메모리를 얻는다는 것을 감지하면 즉시 공격 동작, 자체 파괴 및 공격 추적을 지우는 것을 감지합니다. 이러한 자기 파괴 행동은 메모리 데이터 샘플링 및 탐지에 대한 높은 요구 사항을 제시합니다. Otsuki et al. [13]은 64 비트 Windows 시스템에서 메모리 이미지에서 스택 추적을 추출하는 방법을 제안했습니다. 그들은 주요 동적 및 정적 분석 도구를 사용하여 스텔스 로더로 보호 된 일련의 Windows 실행 및 맬웨어를 분석하여 스텔스 로더의 효과를 보여주었습니다. Uroz et al. [14] 메모리 법의 의식이 메모리 덤프에서 얻은 Windows PE 서명 된 파일의 디지털 서명 검증 프로세스에 부과하는 한계를 조사했습니다. 이러한 제한은 데이터 불완전 성, 재배치로 인한 데이터 변경, 카탈로그 서명 파일 및 실행 파일 및 프로세스 불일치입니다. Cheng et al. [15]는 운영 체제의 중요한 데이터 구조를 분석하여 자동 메모리 데이터 상관 분석 방법을 실현하는 클러스터링 알고리즘을 제안했습니다. 주요 아이디어는 다중 뷰 추출에서 데이터 정확도를 보장하고 파라 동시 스타일로 메모리 동작 분석을 보장하는 것입니다. Palutke [16]는 메모리 데이터에서 숨겨진 프로세스를 감지하기 위해 메모리 공유 메커니즘을 이용했습니다. 그들은 악의적 인 사용자 공간 메모리가 분석 도구에 나타나는 것을 방지하는 세 가지 새로운 방법을 제시하고 보안 분석가 관점에서 메모리를 추가로 액세스 할 수 없게 만듭니다. Wang et al. [17] KPCR을 기반으로 Windows 물리 메모리 분석 방법을 채택했습니다 (커널’S 프로세서 제어 영역) 버전 판단의 문제와 운영 체제의 주소 변환을 해결 한 구조. 기하 급수적으로 증가하는 악의적 인 코드를위한 위의 방법을 사용하여 메모리 법의학을 수행하는 것이 점점 어려워졌습니다. 전문 수동 분석을 통해 많은 수의 Memory PE 파일에 악의적 인 행동이 있는지 여부를 감지하기가 어렵 기 때문에 매우 어려운 연구 방향으로 만듭니다.

    2.2. 맬웨어 감지

    . EXE 파일이 악의적 인 소프트웨어인지 판단하기 위해 전체 정적 EXE 파일은 머신 러닝 알고리즘을 사용하여 처리됩니다 [18]. 이 방법의 단점은 데이터 세트의 데이터 양이 엄청난 경우 데이터 교육 프로세스 중에 대형 부하가 생성된다는 것입니다. Bozkir et al. [9], 악성 샘플의 이진 파일은 이미지로 변환되며 변환 된 이미지는 분류기 지원 벡터 머신 (SVM), Extreme Gradient Boosting (XGBoost) 및 Random Forest에 의해 분류됩니다. Marín et al. [19] 기계 학습을 통한 탐지를 위해 PE 파일에서 인쇄 가능한 문자를 추출했습니다. Li et al. [20]은 CNN 기반 맬웨어 탐지 접근법을 제안했다. VGG-16 모델은 컨볼 루션 필터가 크기 3 × 3 인 열차 모델로 사용되었습니다. Zhang et al. [21]은 맬웨어에 대한 분류 방법을 제안했습니다. 이 프로세스는 데이터 흐름 분석을 기반으로 코드의 의미 적 구조 기능을 추출하고 그래프 컨볼 루션 네트워크를 사용하여 시맨틱 구조적 특징을 감지했습니다. 이 방법의 검출 정확도는 95입니다.8%. Wadkar et al. [22]는 SVM 모델을 기반으로 한 맬웨어에 대한 진화 탐지 방법을 제안했습니다. Han et al. [23] 구조와 행동에 따라 맬웨어를 분석합니다.

    그 후, 여러 분류기, 즉 임의의 포리스트, 의사 결정 트리, CNN 및 XGBOOST가 입력 데이터를 분류하는 데 사용되었습니다. Huang et al. [24] Windows API를 기반으로 딥 러닝 및 시각화를 사용하여 맬웨어 탐지 방법을 개발했습니다. 샘플 파일에서 검색된 정적 기능을 사용하여 정적 시각화를 생성합니다. Lu XD et al. [25]는 악의적 인 코드 Deep Forest (MCDF) 탐지 접근법을 제안했습니다. 이 과정에서 바이너리 파일은 MCDF 모델의 교육 및 테스트에 사용 된 회색 스케일 이미지로 변환되었습니다.

    위에서 논의한 바와 같이, 대부분의 연구 방법은 메모리 데이터 구조와 메모리 법의학 프로세스 간의 연결과 악의적 인 코드 감지를 사용했습니다. 이 방법을 사용하여 특정 맬웨어를 찾기가 종종 어렵습니다. 이전에 제안 된 일부 방법 [5,12,26]은 특정 메모리 파일을 분석했습니다. 이전에보고 된 또 다른 방법 [14]은 메모리의 레지스트리를 검사합니다. 이전 연구 [9]는 메모리 파일을 기계 학습을 통해 분석을 위해 이미지로 변환하는 방법을 제안했습니다. 기존 연구 방법에서 데이터 세트는 기본적으로 정적 데이터이거나 단일 프로세스 파일입니다. 다른 프로세스에 주입 된 악의적 인 행동은 감지 될 수 없습니다. 메모리에서 모든 프로세스와 DLL 파일을 추출하여 악성 코드, 특히 파일리스 공격을 감지합니다. 또한 메모리에서 악성 파일을 추출하여 메모리 PE 데이터 세트 생성을 최대화합니다. 마지막으로 데이터에 맞는 딥 러닝 모델을 구축합니다. 일반적인 맬웨어 방지 기술은 대부분 소프트웨어가 악의적 인 코드를 포함하는지 여부를 결정하기위한 서명을 기반으로합니다. Uroz et al. [14]는 변동성 플러그인 Sigcheck을 개발하여 메모리 덤프에서 실행 파일을 복구하고 디지털 서명을 계산합니다 (가능하면). 그들은 Windows 7 x86 및 x64 메모리 덤프에서 테스트했습니다. 그들의 방법은 전체 PE 파일을 캡처해야하며 코드가 실행될 때 감지율이 낮아지고 낮아집니다. 그러나 파일 조각을 감지함으로써 우리의 방법은 더 효율적입니다. 생성 된 데이터 세트에서 여러 실험 세트를 수행함으로써 메모리의 PE 파일 헤드의 4096 바이트 데이터 조각이 감지에 사용되며 정확도 속도는 97입니다.48%.

    삼. 메모리 PE 파일 추출 기술

    삼.1. 메모리 분석

    메모리 법의학은 메모리 이미지에 의존합니다’S 바이너리 파일. 덤프 메모리 이미지에서 귀중한 정보를 찾아서 분석하는 것은 어려운 일입니다. 프로세스는 표면의 프로그램과 매우 유사하지만 프로세스의 개념은 본질적으로 다릅니다. 프로그램은 정적 지침 순서입니다. 프로세스는 실행 순서와 프로그램을 실행하기위한 다양한 리소스를 포함하는 동적 작업입니다. Windows 메모리 법의학에서, 얻은 증거와 분석 증거를 얻는 순서는 다른 법의학 요구 사항에 따라 다릅니다. 그러나 법의학 직원이 어떤 응용 프로그램이 실행 중인지 이해하고 프로세스 분석을 통해 이러한 응용 프로그램이 수행중인 어떤 응용 프로그램을 이해할 수 있기 때문에 실행 프로세스로 연구를 시작합니다.

    양방향 연결된 목록 구조 ActiveProcessLinks를 통해 Windows 시스템은 시스템에서 실행되는 모든 프로세스를 통과 할 수 있습니다. 프로세스 분석의 핵심은 양방향 시스템 프로세스 목록에 대한 포인터를 얻는 것입니다. 그림 1과 같이.

    CR3 내용 및 주소 변환 모드는 KPCR 구조에 따라 결정됩니다. 간단한 프로세스는 다음과 같습니다. KPCR 구조 -> KPCRB 멤버 -> ProcessorState Member-> Specialegister 멤버 -> CR3 레지스터;

    psactiveProcesshead는 KPCR 구조에 따라 결정되며 프로세스는 다음과 같습니다

    프로세스에 대한 정보를 얻습니다, “psactiveprocesshead” 그리고 “ActiveProcessLinks” 시스템 프로세스를 식별하는 데 사용됩니다. 따라서 양방향 링크 목록을 가로 질 수 있으며 프로세스의 모든 활동을 열거 할 수 있습니다.

    삼.2.

    메모리에있는 PE 파일의 덤프 알고리즘은 알고리즘 1에 표시됩니다. 덤프 할 메모리 이미지 파일이 매우 크기 때문에 필요한 PE 파일을 덤프하려면 정확한 물리적 주소를 얻어야합니다. 메모리 분석 기술에서 얻은 프로세스 페이지 디렉토리 기본 주소는 P로 표시됩니다. 지정된 파일에 저장된 변경된 PE 파일의 파일 이름은 알고리즘에 입력됩니다. 알고리즘 1 지정된 PE 공간 데이터를 지정된 파일에 버릴 수 있습니다.

    먼저 페이지 디렉토리 기본 주소의 값으로 페이지 디렉토리 테이블 (line1)을 찾습니다. 페이지 디렉토리 테이블에서 페이지 디렉토리 항목 (PDE)을 읽고 디렉토리 항목이 비어 있는지 확인하십시오. 디렉토리 항목이 비어 있지 않으면 페이지 디렉토리 항목을 d로 표시합니다. D & 1이 1 인 경우 D & 0xfffff000의 값을 디렉토리 항목에 의해 지정된 페이지 테이블의 물리적 주소로 표시합니다. D & 1이 1이 아닌 경우 다음에 비어 있지 않은 페이지 디렉토리 항목으로 진행하십시오

    둘째, 페이지 테이블의 첫 번째 비어 있지 않은 페이지 항목을 읽으십시오. 페이지 테이블 항목은 t로 표시되고 T & 1이 1이면 T & 0xfffff000의 값을 페이지 항목에 지정된 물리적 페이지의 물리적 주소로 표시합니다. 메모리 이미지에서 물리 주소를 찾아서 물리적 메모리 페이지의 내용을 읽은 다음 지정된 물리 주소를 통해 메모리 이미지의 지정된 파일에 단일 메모리의 PE 데이터를 덤프하십시오. 알고리즘 (2 행에서 15 행)은 전체 페이지 목차를 가로 지릅니다.

    메모리 분석 및 메모리 덤프 기술을 통해 시스템의 덤프 메모리 이미지 파일에서 필요한 메모리 PE 파일을 추출하여 데이터 세트를 생성 할 수 있습니다.

    알고리즘 1 프로세스 공간 덤프 알고리즘.
    대칭 15 00758 I001

    4. 접근

    이 섹션에서는 전체 프로세스의 워크 플로를 자세히 설명합니다. 워크 플로에 대한 설명은 그림 2에 나와 있습니다.

    4.1. 메모리 데이터 수집

    동적 데이터에 대한 연구와 관련하여 WEI [27]는 실험에 KDD99를 사용했고, 여러 연구 [28,29]는 동적 탐지를위한 데이터 세트로 커널 구조를 사용했으며 다른 연구 [5]는 단일 프로세스에서 추출한 이진 파일을 사용하여 분석을 위해 이미지로 변환했습니다. 프로세스 관련 DLL 파일은 아직 악용되지 않았습니다. 메모리에서 악성 파일을 최대화하려면 메모리 덤프에서 모든 프로세스 및 DLL 파일을 추출하고 데이터 세트를 생성했습니다.

    우선, 일반적인 소프트웨어 (사무실, 비디오, 오디오 및 게임 ET.) Windows 시스템에서 다운로드됩니다. 그런 다음 소프트웨어가 실행되고 메모리 프로세스 파일이 덤프됩니다. 주로 메모리 덤프 파일이 10 분마다 덤프되고 작동은 10 번 반복됩니다. 소프트웨어가 런타임에 모든 파일을 메모리에로드하지 않기 때문에 PE 파일이 여러 번 덤프됩니다. 악의적 인 샘플을 수집하려면 정적 악성 PE 파일이 Virusshare 및 Malshare 악성 코드에서 다운로드되며, 연구원이 널리 사용하는 라이브러리 [30,31], 악성 샘플은 가상 머신에서 실행됩니다. 동적 악성 샘플의 추출 방법은 양성 샘플의 추출 방법과 동일합니다. 악의적 인 샘플은 특정 간격으로 덤프됩니다.

    마지막으로 총 4896 개의 데이터 샘플이 얻어집니다. 추출 된 샘플이 양성 또는 악성 샘플인지 확인하기 위해, 양성 및 악성 샘플은 virustotal의 API 인터페이스를 통해 인증됩니다.

    4.2. 데이터 세트 전처리

    4.2.1. 데이터 유형 변환

    메모리 파일의 데이터 세트는 자연어 처리의 텍스트 데이터 세트와 상당히 다릅니다. 먼저 자연어 단어 세분화를 사용하여 데이터 세트를 전처리합니다. 즉, 이진 데이터를 단일 단어로 변환 한 다음 단어 임베딩을 수행함으로써. 그러나 모델이 처리 된 샘플을 훈련시키는 데 사용되는 경우 훈련 결과는 열등하며 정확도는 약 0입니다.5, 이것은 이분법 분류에 가치가 없습니다. 연구를 실시한 후, 메모리 PE 이진 파일은 파일에 많은 연속 0 S가 나타나는 것으로 밝혀졌으며, 이는 단어 세분화 후 데이터에 대해 효과적으로 배울 수 없습니다. 여러 연구 [9,32]는 이진 데이터를 데이터 세트로 이미지로 변환했습니다. 이전 연구 [14]는 데이터 전처리 중에 이진 파일을 직접 배웠습니다. 그림 3은 데이터 세트의 데이터 유형 변환에 대한 작업을 보여줍니다. 8 비트 이진 번호의 값 범위는 0–255이며 이미지의 값도 0–255입니다. Convolutional Neural Network는 이미지 분류에서 잘 수행되므로 악성 코드의 8 개의 이진 비트마다 소수점으로 변환하여 이미지 숫자 값과 유사한 형태입니다. 교육 모델에 추가되기 전에 교육 데이터를 동일한 길이로 절단해야합니다. 먼저 데이터 세트의 데이터에 1을 추가 한 다음 길이보다 작은 데이터의 경우 0이 실제 데이터와 혼합되지 않도록 데이터를 채우는 데 사용됩니다.

    4.2.2. 세그먼트 선택

    데이터 세트 샘플은 훈련을 위해 샘플 조각을 가져옵니다. 샘플에서 데이터의 일부를 가로 채기 위해 세 가지 방법이 채택되었습니다.

    도 4에 도시 된 바와 같이, 샘플 헤더는 단편화를 위해 선택되고, 조각화에 대한 헤더의 길이는 32, 64, 128, 256, 512, 1024, 2048, 4096, 10,000 및 30,000 바이트이다. 모델에서 샘플 조각의 다른 길이를 취하는 효과’실험을 통해 S 정확도가 관찰됩니다. 또한, 샘플 단편 훈련 방법은 또한 모델의 검출 효율을 향상시키고 샘플 탐지에 걸린 시간을 크게 줄일 수있다;

    도 5에 도시 된 바와 같이, 샘플의 꼬리는 훈련 정확도에 대한 단편의 다른 위치의 영향이 판단 될 수 있도록 단편화를 위해 선택된다. 꼬리는 샘플 조각을 추출하도록 선택되며 추출 된 길이는 헤더에서 추출 된 길이와 동일하므로 다른 위치의 효과를 더 잘 수행 할 수 있습니다

    도 6에 도시 된 바와 같이, 단편화를위한 샘플은 무작위로 선택된다. 실험 결과에 대한 다른 위치의 영향을 더 잘 반영하기 위해, 단편 길이가 동일한 샘플이지만 다른 위치는 각 샘플에 대해 무작위로 추출됩니다.

    4.삼. 우리 모델

    동적 PE 파일이 불완전하고 맬웨어의 전문적인 감지가 어렵다는 문제를 해결하기 위해, 분류 목적을 달성하기 위해 동적 PE 파일의 특성을 배우기 위해 깊은 모델 프레임 워크가 제안됩니다. 메모리 PE 파일 (256 바이트)의 작은 조각은 좋은 감지 결과를 나타냅니다.

    딥 러닝 모델의 선택 과정에서 긴 단기 기억 [33] (LSTM)는 먼저 실험에 사용됩니다. LSTM은 자연어 처리 분야에서 상대적으로 성숙합니다 [34,35,36]. 그러나 실험 결과는 모델 교육의 시간 비용이 CNN의 시간보다 높다는 것을 보여줍니다. 복잡하고 다양한 형태의 악성 코드로 인해 CNN에 의해 ​​추출 된 기능에는 변환 불변 특성이 있습니다 [37]. 악성 코드의 위치가 고정되지 않으므로 CNN은 이진 PE 파일의 악성 코드 감지에 더 적합합니다. 또한 서열 단편의 길이가 증가함에 따라 LSTM 모델의 계산량은 매우 커지고 절차는 시간이 소요됩니다. 일반 CNN 모델의 훈련 기간은 LSTM의 훈련 기간보다 짧지 만 CNN의 훈련 효과는 정확도 측면에서 LSTM의 훈련 효과와 유사합니다. 우리의 모델 아키텍처는 그림 7과 같이 전처리 된 샘플의 학습을 최대화하도록 설계되었습니다. 우리는 CNN을 기반으로 12 층 구조의 네트워크 모델을 채택했는데, 우리는 주로 모델에 다중 컨볼 루션 레이어를 사용했습니다’S 아키텍처. 훈련 중에 모델의 과거나 적합성을 방지하기 위해 여러 드롭 아웃 레이어를 추가했습니다. 일반 드롭 아웃 층은 뉴런 노드의 1/4을 숨 깁니다. 유명한 VGG 구조를 제안한 연구에서 Simonyan과 Zisserman [21]은 주어진 수신 필드의 경우 여러 비선형 레이어가 네트워크 깊이를 증가시킬 수 있기 때문에 스택 된 작은 컨볼 루션 커널의 성능보다 큰 컨볼 루션 커널의 성능보다 낫다는 것을 관찰했습니다. 따라서이 연구에 사용 된 컨볼 루션 커널은 작습니다. 딥 러닝에서 최적화기의 경우 Adam의 정확도는 SGD보다 더 나은 것으로 밝혀졌습니다. 따라서 Adam이 채택되었고, 심해 학습 등 전파의 손실 기능을 위해 교차 엔트로피 손실 기능이 채택되었습니다. 섹션 4의 사전 처리 된 데이터 세트.2는 1 차원 데이터이므로 1 차원 컨볼 루션 신경 네트워크 (CNN1D)가 모델에 채택됩니다. CNN1D와 CNN의 차이점은 CNN이 주로 2 차원 이미지의 검출에 사용되는 반면 CNN1D는 1 차원 데이터의 검출에 사용된다는 것입니다. CNN1D를 사용하여 1 차원 데이터를 다 채널 모드로 모델에 입력 한 다음 Convolution 커널에 의해 연속 번역 계산을 수행합니다. 태그 값은 SoftMax 함수를 사용하여 비교됩니다. 마지막으로, 크로스 엔트로피 손실 함수는 모델을 최적화하기 위해 역전 전파에 사용됩니다. 따라서 악성 코드 감지의 정확한 탐지를 달성하는 것은 높은 정확도로 달성 할 수 있습니다. LSTM 모델의 처리 절차는 위의 방법과 유사합니다. 전처리 된 1 차원 데이터는 교육을 위해 LSTM 모델에 입력되며 악성 코드 감지를 실현할 수 있습니다.

    4.4. 신경망 알고리즘

    이 섹션은이 연구를 위해 설계된 신경망 모델의 알고리즘을 소개합니다.

    Pytorch 환경에서 첫 번째, 두 번째 및 세 번째 컨볼 루션 층의 출력 특성은 다음과 같이 표현 될 수 있습니다

    o u t (n i, c o u t j) = b i a s (c o u t j, k) + ∑ k = 0 c i n -1 w e i g h t (c o u t j, k) × i n p u t (n i, k)

    여기서 N은 배치 크기이고 C는 채널 크기이고 L은 시퀀스 길이이고 바이어스는 신경망의 오프셋 값입니다. 배치는 샘플이 여러 그룹으로 나뉘므로 배치로 처리 된 샘플의 수를 나타냅니다. 각 그룹의 샘플 수는 배치의 크기이고, i는 샘플 그룹의 인덱스, j는 샘플 수의 색인이며, k는 입력 채널의 인덱스입니다.

    첫 번째, 두 번째 및 세 번째 컨볼 루션 층을 포함하는 출력 시퀀스의 길이는 다음 방정식을 사용하여 계산됩니다

    l o u t = = l i n + 2 × p a d d d i n g -d i l a t i o n (k e r n e l _ s i z e – 1) – 1 s t r i d e + 1 ⌋

    여기서 l밖으로 출력 시퀀스 길이, l입니다~에 입력 시퀀스의 길이, 패딩은 충전 길이이고, 확장은 캐비티 컨볼 루션의 크기이며, 1으로 설정되고, kernel_size는 컨볼 루션 커널의 크기이며, 보폭은 단계의 크기입니다.

    평평한 층의 입력 매개 변수는 풀링 레이어의 출력 매개 변수를 사용하여 계산됩니다. 이 시퀀스는 평평한 층을 사용하여 평평한 다음 완전히 연결된 층에 의해 2 개의 뉴런 노드로 변환되며 최종적으로 SoftMax 기능으로 분류됩니다.

    숨겨진 층의 마지막 층인 SoftMax 층, 즉 분류기는 다음과 같이 표현됩니다

    y k = e x p (a k) ∑ i = 1 n e x p (a i)

    exp (x)는 ex의 지수 함수를 나타냅니다 (E is the Napier’s 상수 = 2.7182. ), N은 출력 층의 총 뉴런 수를 나타내고 Y는 Y를 나타냅니다케이 출력 계층에서 K 뉴런의 출력을 나타냅니다. 여기서 분자는 입력 신호 a의 지수 함수입니다케이 k 뉴런 및 분모는 모든 입력 신호의 지수 함수의 합입니다.

    신경망 모델의 손실 함수는 최소 배치 크로스-엔트로피 손실 함수를 채택합니다

    e = -1 m ∑ m ∑ k t m k l o g y m k

    여기서 m은 훈련 세트 샘플의 수를 나타냅니다MK M 예측 샘플의 k 요소의 값을 나타냅니다MK 신경망입니다’s 예측 샘플에 대한 출력 및 tMK 감독 된 데이터입니다. 단일 데이터 조각의 손실 함수를 M의 데이터 조각으로 확장하고 마지막에 m으로 나누면 단일 예측 단편의 평균 손실 함수를 얻을 수 있습니다. 교육 데이터와 무관 한 통합 지표는 이러한 평균화를 통해 얻을 수 있습니다.

    식 (1) 및 (2)를 통해 각 컨볼 루션 층을 계산할 수 있습니다’s 입력 및 출력 크기. 우리의 모델에서, 완전히 연결된 레이어의 입력 매개 변수는 다양한 크기의 샘플 세그먼트를 훈련시킬 때 수동으로 계산해야합니다. 각 층 계산’S 길이는 위의 공식을 통해 복잡합니다. 우리가 구성한 신경망 모델을 관찰하고 계산하여 모델에서 완전히 연결된 층의 입력 길이를 계산하기위한 공식을 얻었습니다

    f l a t t e n i n = ((s a m p l e l e n -1) m a x p o o l s i z e) – 2 m a x p o o l s i z e 2

    FALTTEN~에 완전히 연결된 층의 입력 길이, 샘플을 나타냅니다 입력 샘플 길이 인 MaxPool을 나타냅니다크기 풀링 레이어의 크기를 의미하고 Conv_Cond는 마지막 컨볼 루션 레이어의 출력 채널 크기를 나타냅니다. 2048의 조각 길이를 예로 들어 보면 컨볼 루션 층과 풀링 계층만이 데이터 크기에 영향을 미치고 완전히 연결된 레이어 이전의 다른 신경망 층은 데이터 크기에 영향을 미치지 않습니다. 우리의 모델에는 3 개의 컨볼 루션 층과 3 개의 풀링 층이 있으며, 3 개의 컨볼 루션 층의 컨볼 루션 커널 크기는 각각 3, 4 및 5입니다. 최대 풀링은 풀링 층에 사용되며 3 개의 풀링 층은 모두 4로 설정됩니다. 우리 모델에서 컨볼 루션 층의 패딩은 0으로 설정되므로 각 컨볼 루션 후에 데이터 길이가 1 씩 감소합니다. 각 풀링 할 때마다 4 배 줄이 줄어 듭니다. 우리 모델에서 컨볼 루션 풀링의 순서는 컨볼 루션, 풀링, 컨볼 루션, 컨볼 루션, 풀링 및 풀링입니다. 우리 모델의 컨볼 루션 풀링 후, 샘플 조각 길이가 2048 인 데이터의 길이는 먼저 1 씩 감소한 다음 길이가 4 배 감소됩니다. 이전 레이어의 출력을 1 씩 1 번 빼고 두 번 4 번 감소함으로써 샘플 길이는 31이됩니다. 마지막으로, 31은 마지막 컨볼 루션 레이어의 출력 채널 수를 곱하는 것이 완전히 연결된 레이어의 입력 매개 변수입니다. 그림 7은 신경망 섹션에서 평평한 층의 입력 길이의 상세한 계산 프로세스를 보여줍니다.

    신경망 모델의 자세한 매개 변수 설정은 섹션 5에 소개됩니다.삼.

    5. 실험 개요

    5.1. 운영 환경 및 데이터 세트

    실험의 하드웨어 CPU는 두 개의 8g 메모리로 구성된 인텔 (R) 코어 (TM) I7-11800H 프로세서입니다. NVIDIA GEFORCE RTX 3050 그래픽 카드. 소프트웨어 환경은 64 비트 Windows10 운영 체제 및 VMware로 Windows 7 및 Windows XP 가상 머신을 설치하여 악성 샘플을 실행합니다. 딥 러닝 프레임 워크 구축 및 운영 환경은 Python 3입니다.7, 아나콘다 콘다 4.11.0 및 Pytorch Torch1.10.1. 데이터 세트는 다음과 같이 생성됩니다. Virusshare 및 Malshare에서 정적 샘플 수집, 가상 머신에서 샘플을 실행하고 메모리 정보를 버리고 프로세스 추출 및 메모리 데이터에서 DLL 파일을 추출합니다.

    5.2. 평가 지표

    악성 코드를 감지하기 위해 이진 분류의 네 가지 평가 인덱스 인 정확도, 정밀, F- 측정 및 리콜 [38]을 사용합니다. F- 측정은 한 지수가 정확도와 리콜 속도를 모두 반영 할 수 있음을 암시합니다.