What is It?

Liên tục phát hiện và phản hồi với các mối đe dọa chẳng hạn ransomware và malware bằng cách thu thập và phân tích dữ liệu của các events đến từ logs, network traffic, IPCs, RPCs, etc.

How EDRs Work

Gồm 2 phần là user-mode application và kernel-mode driver.

Signature Detection

Kết hợp với các tính năng của AV đề detect malmare. Có thể tạo ra các custom rules để bắt malware.

Detection Based on Behavior

Monitor các tiến trình đang chạy sử dụng các kỹ thuật sau:

  • Userland Hooking: tận dụng userland hooking để phát hiện các đối số độc hại được truyền vào các functions cũng như là các payloads sau khi chúng được decrypt1.

  • Event Tracing for Windows

  • Antimalware Scan Interface

  • Memory-Based Detection: phát hiện các IoCs chẳng hạn như heap allocations, RWX memory sections, etc.

  • Kernel CallBacksMinifilter Drivers: sử dụng các callbacks mà sẽ được triggered khi các events chẳng hạn như tạo file, chỉnh sửa registry key, etc xảy ra. Một ví dụ của việc sử dụng kernel callbacks và minifilter drivers là gọi PspCreateProcessNotifyRoutine để EDR load user-mode DLL của nó mà sẽ thực hiện syscall hooking vào các processes đã được ra và sau đó sử dụng minifilter driver để monitor I/O file system requests bởi process mới được tạo ra này.

  • Network IoCs

Bypassing EDRs

Để bypass EDR thì cần kết hợp nhiều kỹ thuật do các EDR sử dụng nhiều kỹ thuật để monitor. Ví dụ, unhooking không block ETW nhưng có thể giải quyết được bài toán user-land hooking.

Important

Một vài kỹ thuật bypass EDR có thể giúp loader né tránh bị phát hiện nhưng không giúp ẩn C2 payload vì một vài lý do:

  • C2 payload có thể dùng các hàm đã bị hooked.
  • Câu lệnh của C2 thực thi một câu lệnh ồn ào (chẳng hạn như spawn cmd.exe và thực thi whoami).
  • C2 sử dụng các IPCs handles có tên dễ nhận biết.

Resources

Footnotes

  1. Xem thêm MalDev - SyscallsMalDev - API Hooking