• 进程注入如何通过调用栈,使用ML分类来检测——非常值得借鉴,待实践


    4、Machine Learning to Ultimately Defeat Advanced Ransomware Threats

    RSA 2022的这个分享主题核心讲解了进程注入如何通过调用栈,使用ML分类来检测。当然,勒索的其他本质特征例如文件加密等没有提到。但是其进程注入的检测值得重点关注。

    Ryukas the most advanced form of ransomware payloads (1)

        The initial stages:Planting several executables in the system, for example using the Zloaderbotnet.

        Stopping services, deleting VSS copies, etc.

         

        The advanced stages:Injecting multiple system and trusted processes.

        But keeping the system operational: lsass.exe, csrss.exe and explorer.exe are not changed.

        Detaching the encrypting part from Ryukprocesses.

     

     

     

    Challenge: abnormal injection detection.

    Important: there are legitimate injection techniques.

       The ML-based solution:Snapshotting of data changes for the thread.

       Detecting stack anomalies with ML models.

       Recovering changed data if ransomware is detected.

       Otherwise discarding the snapshots of data changes.

        

     

    Ransomware Shell code injection with CreateRemoteThread

    The dropper delivers the payload

       The payload injects itself into legitimateprocesses with OpenProcess

       VirtualAllocEx

       WriteProcessMemorywrites bufferWithTheEncryptor

       CreateRemoteThreadlaunches bufferWithTheEncryptor

       CloseHandle

        

    Ransomware shell code injection with APC

    The dropper delivers the payload

       The payload injects itself into legitimateprocesses with OpenProcess

       VirtualAllocEx

       WriteProcessMemorywrites bufferWithTheEncryptor

       apcRoutine= bufferWithTheEncryptor

       OpenThread

       QueueUserApc

        

     

    Ransomware DLL injection with SetWindowsHookEx

    The dropper delivers the payload

       The payload injects itself into legitimateprocesses withLoadLibrary(“hook.dll”)

       Hooker=GetProcAddress(..);

       SetWindowsHookEx

        

                  Architecture of the Anti-Ransomware Solution

                  Windows File system filter driver, advanced call stack analyzer, Machine Learning system

    Fighting Advanced Ransomware: Main Steps

    Monitor injections using RtlCaptureStackBackTrace.

    Analyze injections with Machine Learning Model.

    Start data protection per the injection affected process.

    Analyze process behavior.

    When the detection decision is made, recover the encrypted files and terminate hostile injected objects.


    System service orthe well-known legitimate application,

    the Victim

    Malicious thread, injected by Ransomware


    detection heuristics. Data remediation controls.

    Filter Driver

    Driver sends call stacks to ML, the verdict is received to mark the thread as suspicious. Full set of heuristics is turned ON if stack anomaly is identified

    举例:

    Analysis of injectionsduringexecution

    MalwareInject Detection ByAPI Call Sequence

    ntdll.dllkernel32.dlln/akernel32.dllntdll.dllwow64.dllwow64cpu.dllwow64.dllntdll.dll ==》ML的输入就这个调用栈

    SuspiciousExample:Create Thread operationModulestowhich return addresses on stackbelong

    Returnedaddressin theallocated memorydoesn’t belong toany processes

    ntdll.dllkernel32.dllTeamViewer.exen/aTeamViewer.exesetupapi.dllntdll.dllwow64.dllwow64cpu.dllwow64.dllntdll.dll  ==>ML的输入就这个

    Clean Example: Create Section operation

    Just-in-time codecompilation:whitelisted

     训练数据集示例:

    ntkrnlpa.exe,ntdll.dll,KernelBase.dll, …, clean
    KernelBase.dll,kernel32.dll,kernel32.dll, …, clean
    NetSetupSvc.dll,ELSCore.dll,ELSCore.dll, …,clean
    com.docker.9pdb.exe, n/a,cryptsp.dll, …, infected
    ntkrnlpa.exe,ntdll.dll,KernelBase.dll, clean
    …
    …
    …
    ntkrnlpa.exe,ntdll.dll,KernelBase.dll, clean
    n/a,clr.dll,clr.dll,clr.dll, combase.dll, …, clean
    

      

    就是获取了一堆的调用关系链,然后作为ML分类输入检测:

    ==》不过从他给的这个数据,看不出调用关系。

    Analysis of injections: Models comparison

    Samples database:850Mrecords,23Mis unique

    New samples:1-2Mper dayStacktrace Analyzer 1.0:

    Model: Random Forest

    Model details:

    Input –fixed number of frames

    Output –clean/suspicious

    Size –8M

    Test results:

    Accuracy –0.96

    Execution Time: 10-20 ms

    Stacktrace Analyzer 2.0:

    Model: Gradient Boosting Tree

    Model details:

    Input –deduplicated frames

    Output –clean/suspicious

    Size –900K

    Test results:

    Accuracy –0.98

    Execution Time: 1-5 ms

    DEMO

        We launch the Real-world ransomware and demonstrate how the injection is detected and malicious file data modifications are rolled back:The video that demonstrates how the injected stacks are detected https://drive.google.com/file/d/1KKptRRvGEy0ri-2DsdV8U1N203Qh9Eg5/view?usp=sharing  

        The video that shows the post-mortem analysis of files encryption and recovery https://drive.google.com/file/d/1o68zFgRioNEgteaMhhgMXKbEq4pWA3Ti/view?usp=sharing

         

                  Dealing with false positives of the call stack anomaly detection

                  Find methods to reduce false positives, connect with other methodologies and detections

                  How to Reduce False Positives

          The knowledge of injection source helps to reduce false positives.

          Sensors: file system mini-filter callbacks, user mode or hypervisor assisted hooking.

          Validation: whitelisted services or behavior models.

    Enhance anti-ransomware defense with ML

    Gather all types of injections routinely.

    Develop the model training infrastructure.

    Start with simple models like Random Forest.

    Update your model regularly.

    Automate the data annotation process.

    Apply ML to behavior analysis.

  • 相关阅读:
    SpringBoot 集成Hystrix熔断
    windows10 个性化启动Python,cmd窗口显示启动名称
    Web前端 table去掉td边框大小及颜色
    Windows 10 运行.bat文件启动Jar项目
    SpringBoot Feign接口方式调用服务
    SpringBoot Ribbon负载均衡策略配置
    SpringBoot Eureka集群配置
    SpringBoot集成Eureka
    面试题 16.01. 交换数字
    1476. 子矩形查询
  • 原文地址:https://www.cnblogs.com/bonelee/p/16404106.html
Copyright © 2020-2023  润新知