
Questo repository copre alcuni metodi di esecuzione del codice e di evasione dell'antivirus per le macro nei documenti di Office.
In preparazione per uno Stream/Video sull'evasione di AV per VBS, stavo facendo ricerche sui metodi di esecuzione del codice per macro Office e sulle tecniche di evasione.
La lista è diventata sempre più lunga e non ho trovato un posto centrale per i template ofensivi per VBA - quindi questo repo può essere usato a tale scopo. È molto lontano dall'essere completo. Se conosci altre tecniche interessanti o template utili, sentiti libero di contribuire e creare una pull request!
La maggior parte dei template in questo repo sono già stati pubblicati altrove. Ho semplicemente copiato e incollato la maggior parte dei template da siti ms-docs, post di blog o da altri strumenti.
| File | Descrizione |
|---|---|
| ShellApplication_ShellExecute.vba | Esegue un comando del sistema operativo tramite l'oggetto ShellApplication e il metodo ShellExecute |
| ShellApplication_ShellExecute_privileged.vba | Esegue un comando del sistema operativo con privilegi tramite l'oggetto ShellApplication e il metodo ShellExecute - richiesta UAC |
| Shellcode_CreateThread.vba | Esegue shellcode nel processo corrente tramite Win32 CreateThread |
| Shellcode_EnumChildWindowsCallback.vba | Esegue shellcode nel processo corrente tramite EnumChildWindows |
| Win32_CreateProcess.vba | Crea un nuovo processo per l'esecuzione del codice tramite la funzione Win32 CreateProcess |
| Win32_ShellExecute.vba | Crea un nuovo processo per l'esecuzione del codice tramite la funzione Win32 ShellExecute |
| WMI_Process_Create.vba | Crea un nuovo processo tramite WMI per l'esecuzione del codice |
| WMI_Process_Create2.vba | Un altro esempio di esecuzione del codice tramite WMI |
| WscriptShell_Exec.vba | Esegue un comando del sistema operativo tramite l'oggetto WscriptShell e il metodo Exec |
| WscriptShell_run.vba | Esegue un comando del sistema operativo tramite l'oggetto WscriptShell e il metodo Run |
| VBA-RunPE | Tecnica RunPE di @itm4n in VBA |
| GadgetToJScript | Script C# di med0x2e per generare gadget serializzati .NET che possono attivare il caricamento/esecuzione di assembly .NET quando deserializzati tramite BinaryFormatter da script basati su JS/VBS/VBA. |
| PPID_Spoof.vba | Copia di spoofing-office-macro di christophetd |
| AMSIBypass_AmsiScanBuffer_ordinal.vba | Bypass AMSI di rmdavy per patchare AmsiScanBuffer utilizzando valori ordinali per un bypass delle firme |
| AMSIBypass_AmsiScanBuffer_Classic.vba | Patch classica di AmsiScanBuffer di rasta-mouse |
| AMSIBypass_Heap.vba | Copia del repo HeapsOfFun di rmdavy |
| AMSIbypasses.vba | Blog sul bypass AMSI di outflanknl |
| COMHijack_DLL_Load.vba | Carica DLL tramite COM Hijacking |
| COM_Process_create.vba | Crea processo tramite oggetto COM |
| Download_Autostart.vba | Scarica un file da un server web remoto e lo inserisce nella cartella StartUp |
| Download_Autostart_WinAPI.vba | Scarica un file da un server web remoto tramite URLDownloadtoFileA e lo inserisce nella cartella StartUp |
| Dropper_Autostart.vba | Inserisce un file batch nella cartella StartUp |
| Registry_Persist_wmi.vba | Crea una chiave di registro StartUp per la persistenza tramite WMI |
| Registry_Persist_wscript.vba | Crea una chiave di registro StartUp per la persistenza tramite oggetto wscript |
| ScheduledTask_Create.vba | Crea e avvia un'attività pianificata per esecuzione del codice/persistenza |
| XMLDOM_Load_XSL_Process_create.vba | Carica XSL da un server web remoto per eseguire codice |
| regsvr32_sct_DownloadExecute.vba | Esegue regsvr32 per scaricare un file SCT da un server web remoto per l'esecuzione del codice |
| BlockETW.vba | Applica una patch a EtwEventWrite in ntdll.dll per bloccare la raccolta dati ETW |
| BlockETW_COMPLUS_ETWEnabled_ENV.vba | Blocca la raccolta dati ETW impostando la variabile d'ambiente COMPLUS_ETWEnabled a 0, credito a @xpn |
| ShellWindows_Process_create.vba | Crea processo ShellWindows per ottenere explorer.exe come processo padre |
| AES.vba | Un esempio per utilizzare la crittografia/decifratura AES in VBA da Qui |
| Dropper_Executable_Autostart.vba | Ottiene i byte di un eseguibile da VBA e lo inserisce in Autostart - nessun download in questo caso |
| MarauderDrop.vba | Inserisce un DLL .NET registrato COM nella cartella temp, importa la funzione ed esegue codice - in questo caso carica un binario C# remoto da un server web in memoria e lo esegue - credito a @Jean_Maes_1994 per MaraudersMap |