IOC: Outbount Internet/network connections made from rundll32
IOC: Suspicious use of cmdline flags such as -sta
Execute
AllTheThingsx64 would be a .DLL file and EntryPoint would be the name of the entry point in the .DLL file to execute.
rundll32.exe AllTheThingsx64,EntryPoint
Usecase: Execute dll file
Privileges required: User
OS: Windows vista, Windows 7, Windows 8, Windows 8.1, Windows 10, Windows 11
MITRE ATT&CK®: T1218.011
Use Rundll32.exe to execute a DLL from a SMB share. EntryPoint is the name of the entry point in the .DLL file to execute.
Usecase: Execute DLL from SMB share.
Privileges required: User
OS: Windows vista, Windows 7, Windows 8, Windows 8.1, Windows 10, Windows 11
MITRE ATT&CK®: T1218.011
Use Rundll32.exe to execute a JavaScript script that runs a PowerShell script that is downloaded from a remote web site.
Usecase: Execute code from Internet
Privileges required: User
OS: Windows vista, Windows 7, Windows 8, Windows 8.1, Windows 10, Windows 11
MITRE ATT&CK®: T1218.011
Use Rundll32.exe to execute a JavaScript script that runs calc.exe.
Usecase: Proxy execution
Privileges required: User
OS: Windows vista, Windows 7, Windows 8, Windows 8.1, Windows 10, Windows 11
MITRE ATT&CK®: T1218.011
Use Rundll32.exe to execute a JavaScript script that runs calc.exe and then kills the Rundll32.exe process that was started.
Usecase: Proxy execution
Privileges required: User
OS: Windows vista, Windows 7, Windows 8, Windows 8.1, Windows 10, Windows 11
MITRE ATT&CK®: T1218.011
Use Rundll32.exe to execute a JavaScript script that calls a remote JavaScript script.
Usecase: Execute code from Internet
Privileges required: User
OS: Windows vista, Windows 7, Windows 8, Windows 8.1, Windows 10, Windows 11
MITRE ATT&CK®: T1218.011
Use Rundll32.exe to load a registered or hijacked COM Server payload. Also works with ProgID.
rundll32.exe -sta {CLSID}
Usecase: Execute a DLL/EXE COM server payload or ScriptletURL code.
Privileges required: User
OS: Windows 10 (and likely previous versions), Windows 11
MITRE ATT&CK®: T1218.011
Alternate data streams
Use Rundll32.exe to execute a .DLL file stored in an Alternate Data Stream (ADS).
rundll32 "C:\ads\file.txt:ADSDLL.dll",DllMain
Usecase: Execute code from alternate data stream
Privileges required: User
OS: Windows vista, Windows 7, Windows 8, Windows 8.1, Windows 10, Windows 11
MITRE ATT&CK®: T1564.004