
Software di Attacco tramite Accesso Diretto alla Memoria (DMA)
PCILeech utilizza dispositivi hardware PCIe per leggere e scrivere la memoria del sistema di destinazione. Ciò viene ottenuto utilizzando DMA su PCIe. Non sono necessari driver sul sistema di destinazione.
PCILeech funziona anche senza hardware insieme a un'ampia gamma di metodi di acquisizione della memoria software supportati dalla libreria LeechCore – inclusa la cattura di memoria live remota utilizzando DumpIt o WinPmem. PCILeech supporta anche la cattura locale della memoria e numerosi formati di file di dump della memoria.
PCILeech supporta molteplici dispositivi di acquisizione della memoria. Sia basati su hardware che software. L'hardware basato su USB3380 è in grado di leggere nativamente solo 4 GB di memoria, ma può leggere tutta la memoria se prima viene inserito un modulo kernel (KMD) nel kernel del sistema di destinazione. L'hardware basato su FPGA e i metodi basati su software sono in grado di leggere tutta la memoria.
PCILeech è in grado di inserire un'ampia gamma di impianti kernel nei kernel di destinazione – consentendo un facile accesso alla RAM live e al filesystem tramite un "drive montato". È anche possibile rimuovere il requisito della password di accesso, caricare driver non firmati, eseguire codice e generare shell di sistema. PCILeech funziona su Windows e Linux. I sistemi di destinazione supportati sono attualmente le versioni x64 di: UEFI, Linux, FreeBSD e Windows. Ciò richiede accesso in scrittura alla memoria (hardware USB3380, hardware FPGA, LiveCloudKd o CVE-2018-1038 "Total Meltdown").
Per iniziare, clona i sorgenti nel repository o scarica gli ultimi binari, moduli e file di configurazione.
L'interfaccia grafica PushPin per PCILeech rende le attività RedTeam comuni estremamente semplici. Nota che PushPin non fa parte della distribuzione ufficiale di PCILeech.







*) macOS High Sierra e versioni successive non sono supportati.
PCILeech supporta metodi di acquisizione della memoria sia basati su hardware che su software. Tutta l'acquisizione della memoria è gestita dalla libreria LeechCore.
Di seguito è riportato un riepilogo dei metodi di acquisizione della memoria basati su hardware supportati. Tutti i metodi basati su hardware sono supportati sia su Windows che su Linux. I metodi basati su FPGA tuttavia hanno una leggera penalità prestazionale su Linux e raggiungeranno al massimo circa: 90 MB/s rispetto a 150 MB/s su Windows.
| Dispositivo | Tipo | Interfaccia | Velocità | Accesso memoria a 64-bit | Accesso TLP PCIe | Sponsor Progetto |
|---|---|---|---|---|---|---|
| ZDMA | FPGA | Thunderbolt3 | 1000MB/s | Sì | Sì | 💖 |
| GBOX | FPGA | OCuLink | 400MB/s | Sì | Sì | 💖 |
| LeetDMA | FPGA | USB-C | 190MB/s | Sì | Sì | 💖 |
| CaptainDMA M2 | FPGA | USB-C | 190MB/s | Sì | Sì | 💖 |
| CaptainDMA M2 100T | FPGA | USB-C | 220MB/s | Sì | Sì | 💖 |
| CaptainDMA 4.1th | FPGA | USB-C | 190MB/s | Sì | Sì | 💖 |
| CaptainDMA 75T | FPGA | USB-C | 200MB/s | Sì | Sì | 💖 |
| CaptainDMA 100T | FPGA | USB-C | 220MB/s | Sì | Sì | 💖 |
| AC701/FT601 | FPGA | USB3 | 190MB/s | Sì | Sì | |
| USB3380-EVB | USB3380 | USB3 | 150MB/s | No | No | |
| DMA patched HP iLO | BMC | TCP | 1MB/s | Sì | No |
Di seguito è riportato un riepilogo dei metodi di acquisizione della memoria basati su software supportati. Si noti che LeechService fornisce solo una connessione di rete a una libreria LeechCore remota. È possibile utilizzare sia metodi di acquisizione hardware che software una volta connessi.