notes.
Kembali ke semua catatan
Digital Forensics

Mengapa Melempar Memory Dump ke Cloud LLM Adalah Ide Buruk: Membangun On-Premise Threat Graph untuk Triase Volatility 3

Kajian kedaulatan data dan rekonstruksi rantai serangan ransomware menggunakan Heterogeneous Threat Graph 100% lokal serta pemetaan deterministik MITRE ATT&CK.

18 Oktober 2026
•
6 menit baca
1 pembaca

Saat insiden keamanan siber melanda—khususnya ketika varian ransomware aktif mengeksekusi muatan destruktifnya—memori fisik (RAM) adalah saksi kunci yang paling jujur.

Menurut RFC 3227 tentang Order of Volatility, memori RAM memuat rekaman paling segar: alamat soket koneksi Command and Control (C2), kunci enkripsi yang belum terhapus, hingga kode shellcode tanpa berkas (fileless injection).

Namun, ada sebuah jurang besar (gap) antara mengambil data memori dan memahaminya dengan cepat.


1. Penderitaan Analis: Masalah "Data Silo" di Volatility #

Bagi siapa pun yang pernah menggunakan Volatility 3, Anda pasti akrab dengan alur kerja berikut:

  1. Jalankan vol -f mem.raw windows.pslist →\rightarrow Muncul ratusan baris proses.
  2. Jalankan vol -f mem.raw windows.malfind →\rightarrow Muncul blok alamat heksadesimal VAD.
  3. Jalankan vol -f mem.raw windows.netscan →\rightarrow Muncul puluhan soket IP.
  4. Jalankan vol -f mem.raw windows.cmdline →\rightarrow Muncul baris argumen perintah.

Masalahnya, keempat informasi ini terisolasi satu sama lain.

Seorang investigator forensik harus membuka Notepad atau Excel secara manual, lalu mencocokkan:

"Alamat VAD yang memiliki proteksi PAGE_EXECUTE_READWRITE ini milik PID berapa? Apakah proses tersebut punya soket keluar ke luar negeri? Dan siapa bapak (PPID) dari proses ini?"

Investigasi manual ini memakan waktu 4 hingga 8 jam. Di tengah krisis ransomware, keterlambatan 4 jam berarti seluruh cadangan data perusahaan sudah selesai dienkripsi.


2. Godaan Cloud LLM dan Bahaya Terselubungnya #

Riset akademis terbaru yang dipublikasikan di Elsevier (Forensic Science International: Digital Investigation, 2024) memperkenalkan framework bernama volGPT. Idenya sederhana: ambil teks mentah Volatility, kirimkan via API ke model bahasa besar (seperti GPT-4), lalu biarkan LLM merangkum hasilnya.

Kendati terdengar modern, pendekatan ini memiliki dua kelemahan fatal di dunia industri:

⚠️ Peringatan Teknis

1. Pelanggaran Kedaulatan Data (Data Sovereignty Violation):
Memori RAM sebuah server perbankan atau kementerian memuat data yang sangat rahasia: token sesi pengguna, kredensial domain admin, hingga isi dokumen sensitif. Mengirimkan dump memori mentah ke API server cloud pihak ketiga di luar yurisdiksi nasional adalah mimpi buruk kepatuhan (compliance nightmare).

📖 Definisi Konsep

2. Ketiadaan Kepastian Hukum (Daubert Standard & Forensic Reproducibility):
Di pengadilan, bukti digital harus memenuhi Daubert Standard: jika proses investigasi diulang seratus kali, hasilnya harus sama persis. LLM bersifat probabilistik; responsnya bisa berubah-ubah dan rentan berhalusinasi.


3. Solusi: Heterogeneous In-Memory Threat Graph #

Alih-alih mengandalkan model bahasa generatif di cloud, mengapa kita tidak memodelkan data memori sebagaimana mestinya: sebagai sebuah Graf Relasi (G=(V,E)\mathcal{G} = (\mathcal{V}, \mathcal{E}))?

Dalam proyek riset Magister Teknik Informatika (S-2) ini, saya merancang sebuah arsitektur hulu ke hilir yang berjalan 100% lokal (on-premise) menggunakan Python dan NetworkX:

A. Simpul Heterogen (V\mathcal{V})

  • Simpul Proses (PID, nama proses, waktu eksekusi).
  • Simpul Wilayah VAD (Virtual Address Descriptor dengan izin akses memori).
  • Simpul Soket Jaringan (Protokol, IP tujuan, port).
  • Simpul Handle (Objek Mutex dan berkas yang dikunci).

B. Hubungan Sisi Graf (E\mathcal{E})

Graf secara otomatis menghubungkan relasi operasional:

  • PROC_2412 (explorer.exe) →spawns\xrightarrow{\text{spawns}} PROC_4812 (svchost.exe).
  • PROC_4812 →injected\xrightarrow{\text{injected}} VAD_0x7fff20000000 (Proteksi PAGE_EXECUTE_READWRITE).
  • PROC_4812 →connects\xrightarrow{\text{connects}} SOCK_185.220.101.45:4444.

Berikut adalah visualisasi alur rekonstruksi rantai serangan dari dump memori hingga pemetaan taktik ancaman:

flowchart TD
    A["Dump RAM (.raw / .vmem)"] --> B["Volatility 3 Core Engine"]
    B --> C1["windows.psscan (Deteksi proses tersembunyi)"]
    B --> C2["windows.malfind (Ekstraksi memori RWX)"]
    B --> C3["windows.netscan (Socket koneksi C2)"]
    B --> C4["windows.handles (Mutex dan Berkas)"]
    C1 --> D["Heterogeneous Threat Graph (NetworkX)"]
    C2 --> D
    C3 --> D
    C4 --> D
    D --> E["Deterministic MITRE ATT&CK Engine"]
    E --> F1["T1036: Masquerading Process"]
    E --> F2["T1055.001: DLL Injection"]
    E --> F3["T1071.001: C2 Communication"]
    E --> F4["T1490: Inhibit System Recovery"]
    E --> G["Composite Threat Scoring Engine"]
    G --> H["Interactive Topology Dashboard (Vis.js)"]

4. Pemetaan Deterministik MITRE ATT&CK & Skoring Kuantitatif

Setelah graf terbentuk, sistem menjalankan mesin aturan berbasis arsitektur internal Microsoft Windows dan taksonomi global MITRE ATT&CK Enterprise Matrix:

  1. T1036 (Masquerading): Jika proses bernama svchost.exe dilahirkan oleh selain services.exe (misalnya dilahirkan oleh explorer.exe), sistem langsung mendeteksi anomali penyamaran.
  2. T1055.001 (DLL Injection): Jika ada halaman memori berizin PAGE_EXECUTE_READWRITE yang memiliki magic byte header DOS MZ (4D 5A), sistem membuktikan adanya injection.
  3. T1071.001 (C2 Communication): Jika proses tersebut membuka soket keluar ke port 4444, sistem mencatat komunikasi aktif ke server penyerang.
  4. T1490 (Inhibit System Recovery): Jika baris perintah mengeksekusi vssadmin delete shadows, sistem menandai upaya pemusnahan backup.

Semua indikator ini dijumlahkan ke dalam Composite Threat Score (Sthreat∈[0,100]S_{threat} \in [0, 100]):

Sthreat(p)=min⁡(100,∑wi⋅Ii(p))S_{threat}(p) = \min\left(100, \sum w_i \cdot \mathbb{I}_i(p)\right)
📐 Teorema & Dalil Ilmiah

Proses dengan skor Sthreat(p)≥75S_{threat}(p) \ge 75 otomatis diberi label CRITICAL THREAT, sehingga analis tidak perlu lagi menebak proses mana yang harus dimatikan terlebih dahulu.


5. Implementasi Cuplikan Kode Ekstraksi & Korelasi

Berikut cuplikan potongan script Python pengekstraksi anomali memori VAD dan pemetaan taksonomi ATT&CK:

📄 memory_mitre_correlator.py
python
import json
from dataclasses import dataclass
from typing import List, Dict, Any

@dataclass
class ThreatFinding:
    pid: int
    process_name: str
    mitre_id: str
    technique: str
    severity: str
    weight: int

def correlate_memory_artifacts(vol_malfind_rows: List[Dict[str, Any]]) -> List[ThreatFinding]:
    """
    Mendeteksi artefak memori VAD dengan proteksi RWX
    dan memetakan secara deterministik ke taktik MITRE ATT&CK.
    """
    findings = []
    
    for entry in vol_malfind_rows:
        pid = entry.get("PID")
        proc_name = entry.get("Process", "unknown")
        protection = entry.get("Protection", "")

        # Deteksi W^X Violation: Halaman memori dapat dieksekusi dan ditulis sekaligus
        if "PAGE_EXECUTE_READWRITE" in protection:
            findings.append(ThreatFinding(
                pid=pid,
                process_name=proc_name,
                mitre_id="T1055.001",
                technique="Process Injection: Dynamic-link Library Injection",
                severity="HIGH",
                weight=35
            ))
            
    return findings

6. Hasil Uji Coba: Triase Selesai dalam 1,8 Detik #

Saat diuji pada skenario insiden Conti Ransomware:

  • Waktu eksekusi parsing, pembangunan graf, hingga klasifikasi MITRE hanya memakan waktu 1,8 detik.
  • Sistem merender visualisasi graf interaktif berbasis Vis.js di browser. Analis dapat menggeser simpul, melakukan zoom in/out, dan mengklik simpul merah untuk membaca dump heksadesimal serta baris perintah eksekusi seketika.
  • 100% Offline: Tidak ada satu byte pun data yang bocor ke cloud pihak ketiga.

Kesimpulan #

Automasi forensik digital tidak selalu harus diselesaikan dengan "melemparkan segalanya ke ChatGPT". Dengan memanfaatkan pemodelan struktur data yang tepat (Graf Relasional) dan mesin inferensi berbasis aturan deterministik, kita bisa membangun alat triase yang:

  1. Jauh lebih cepat: Selesai dalam hitungan detik (1,8 detik vs berjam-jam secara manual).
  2. Aman dari kebocoran data rahasia (privacy-preserving): Menjaga kedaulatan data sensitif korporasi/pemerintah.
  3. Memiliki kepastian hukum: Memenuhi standar forensik digital yang dapat dipertanggungjawabkan di meja pengadilan.
Topik:#Digital Forensics#Memory Forensics#Volatility 3#MITRE ATT&CK#NetworkX#Incident Response#S2 Notes

Diskusi & Tanya Jawab

Tinggalkan pertanyaan atau tanggapan terkait topik "Mengapa Melempar Memory Dump ke Cloud LLM Adalah Ide Buruk: Membangun On-Premise Threat Graph untuk Triase Volatility 3".

Dilindungi rate-limiting & anti-spam.