Skip to content

Commit

Permalink
Merge pull request #129 from irsdl/master
Browse files Browse the repository at this point in the history
serializer helper update + testing arena
  • Loading branch information
irsdl authored Aug 26, 2022
2 parents aa64a27 + 4cbfe07 commit 78ff878
Show file tree
Hide file tree
Showing 26 changed files with 361 additions and 110 deletions.
2 changes: 1 addition & 1 deletion ysoserial/Generators/ActivitySurrogateDisableTypeCheck.cs
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ public override object Generate(string formatter, InputArgs inputArgs)
if (inputArgs.Minify)
{

xaml_payload = XMLMinifier.Minify(xaml_payload, null, null);
xaml_payload = XmlMinifier.Minify(xaml_payload, null, null);
payload = new TextFormattingRunPropertiesMarshal(xaml_payload);
}

Expand Down
4 changes: 2 additions & 2 deletions ysoserial/Generators/AxHostStateGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,11 @@ public override object Generate(string formatter, InputArgs inputArgs)
{
if (inputArgs.UseSimpleType)
{
payload = XMLMinifier.Minify(payload, new string[] { "mscorlib", "Microsoft.PowerShell.Editor"}, null, FormatterType.NetDataContractXML, true);
payload = XmlMinifier.Minify(payload, new string[] { "mscorlib", "Microsoft.PowerShell.Editor"}, null, FormatterType.NetDataContractXML, true);
}
else
{
payload = XMLMinifier.Minify(payload, null, null, FormatterType.NetDataContractXML, true);
payload = XmlMinifier.Minify(payload, null, null, FormatterType.NetDataContractXML, true);
}
}

Expand Down
2 changes: 1 addition & 1 deletion ysoserial/Generators/ClaimsIdentityGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ public override object Generate(string formatter, InputArgs inputArgs)
if (inputArgs.Minify)
{

payload = XMLMinifier.Minify(payload, null, null, FormatterType.SoapFormatter);
payload = XmlMinifier.Minify(payload, null, null, FormatterType.SoapFormatter);

}

Expand Down
2 changes: 1 addition & 1 deletion ysoserial/Generators/ClaimsPrincipalGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ public override object Generate(string formatter, InputArgs inputArgs)
if (inputArgs.Minify)
{

payload = XMLMinifier.Minify(payload, null, null, FormatterType.SoapFormatter);
payload = XmlMinifier.Minify(payload, null, null, FormatterType.SoapFormatter);

}

Expand Down
8 changes: 4 additions & 4 deletions ysoserial/Generators/GenericGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -184,11 +184,11 @@ public object Serialize(object payloadObj, string formatter, InputArgs inputArgs
stream.Position = 0;
if (inputArgs.UseSimpleType)
{
stream = XMLMinifier.Minify(stream, new String[] { "Microsoft.PowerShell.Editor" }, null, FormatterType.SoapFormatter, true);
stream = XmlMinifier.Minify(stream, new String[] { "Microsoft.PowerShell.Editor" }, null, FormatterType.SoapFormatter, true);
}
else
{
stream = XMLMinifier.Minify(stream, null, null, FormatterType.SoapFormatter, true);
stream = XmlMinifier.Minify(stream, null, null, FormatterType.SoapFormatter, true);
}
}

Expand Down Expand Up @@ -218,11 +218,11 @@ public object Serialize(object payloadObj, string formatter, InputArgs inputArgs
stream.Position = 0;
if (inputArgs.UseSimpleType)
{
stream = XMLMinifier.Minify(stream, new string[] { "mscorlib", "Microsoft.PowerShell.Editor" }, new string[] { @"\<Signature2[^\/]+<\/Signature2\>" }, FormatterType.NetDataContractXML, true);
stream = XmlMinifier.Minify(stream, new string[] { "mscorlib", "Microsoft.PowerShell.Editor" }, new string[] { @"\<Signature2[^\/]+<\/Signature2\>" }, FormatterType.NetDataContractXML, true);
}
else
{
stream = XMLMinifier.Minify(stream, null, null, FormatterType.NetDataContractXML, true);
stream = XmlMinifier.Minify(stream, null, null, FormatterType.NetDataContractXML, true);
}
}

Expand Down
26 changes: 13 additions & 13 deletions ysoserial/Generators/ObjectDataProviderGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ public override object Generate(string formatter, InputArgs inputArgs)
if (inputArgs.Minify)
{
// using discardable regex array to make it shorter!
bridge = XMLMinifier.Minify(bridge, null, new String[] { @"StandardErrorEncoding=.*LoadUserProfile=""False"" ", @"IsInitialLoadEnabled=""False"" " });
bridge = XmlMinifier.Minify(bridge, null, new String[] { @"StandardErrorEncoding=.*LoadUserProfile=""False"" ", @"IsInitialLoadEnabled=""False"" " });
}

// There are loads of other objects in Presentation that use ResourceDictionary and they can all be used here instead
Expand All @@ -136,7 +136,7 @@ public override object Generate(string formatter, InputArgs inputArgs)
if (inputArgs.Minify)
{
// using discardable regex array to make it shorter!
payload = XMLMinifier.Minify(payload, null, new String[] { @"StandardErrorEncoding=.*LoadUserProfile=""False"" ", @"IsInitialLoadEnabled=""False"" " });
payload = XmlMinifier.Minify(payload, null, new String[] { @"StandardErrorEncoding=.*LoadUserProfile=""False"" ", @"IsInitialLoadEnabled=""False"" " });
}

if (inputArgs.Test)
Expand Down Expand Up @@ -200,11 +200,11 @@ public override object Generate(string formatter, InputArgs inputArgs)
{
if (inputArgs.UseSimpleType)
{
payload = JSONMinifier.Minify(payload, new String[] { "PresentationFramework", "mscorlib", "System" }, null);
payload = JsonMinifier.Minify(payload, new String[] { "PresentationFramework", "mscorlib", "System" }, null);
}
else
{
payload = JSONMinifier.Minify(payload, null, null);
payload = JsonMinifier.Minify(payload, null, null);
}
}

Expand Down Expand Up @@ -255,7 +255,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = JSONMinifier.Minify(payload, null, null);
payload = JsonMinifier.Minify(payload, null, null);
}

if (inputArgs.Test)
Expand Down Expand Up @@ -301,7 +301,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = JSONMinifier.Minify(payload, null, null);
payload = JsonMinifier.Minify(payload, null, null);
}

if (inputArgs.Test)
Expand Down Expand Up @@ -377,15 +377,15 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = XMLMinifier.Minify(payload, null, null, FormatterType.XMLSerializer, true);
payload = XmlMinifier.Minify(payload, null, null, FormatterType.XMLSerializer, true);
}


if (inputArgs.Test)
{
try
{
SerializersHelper.XMLSerializer_deserialize(payload, null, "root", "type");
SerializersHelper.XmlSerializer_deserialize(payload, null, "root", "type");
}
catch (Exception err)
{
Expand Down Expand Up @@ -486,7 +486,7 @@ public override object Generate(string formatter, InputArgs inputArgs)
}
if (inputArgs.Minify)
{
payload = XMLMinifier.Minify(payload, null, null, FormatterType.DataContractXML, true);
payload = XmlMinifier.Minify(payload, null, null, FormatterType.DataContractXML, true);
}

if (inputArgs.Test)
Expand Down Expand Up @@ -606,7 +606,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = JSONMinifier.Minify(payload, null, null);
payload = JsonMinifier.Minify(payload, null, null);
}

if (inputArgs.Test)
Expand Down Expand Up @@ -673,19 +673,19 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (formatter.ToLowerInvariant().Equals("sharpserializerxml"))
{
var serializedData = SerializersHelper.SharpSerializer_XML_serialize_WithExclusion_ToString(odp, allExclusions);
var serializedData = SerializersHelper.SharpSerializer_Xml_serialize_WithExclusion_ToString(odp, allExclusions);

if (inputArgs.Minify)
{
serializedData = XMLMinifier.Minify(serializedData, null, new string[] { @" name=""r""" }, FormatterType.DataContractXML, true);
serializedData = XmlMinifier.Minify(serializedData, null, new string[] { @" name=""r""" }, FormatterType.DataContractXML, true);
}


if (inputArgs.Test)
{
try
{
SerializersHelper.SharpSerializer_XML_deserialize_FromString(serializedData);
SerializersHelper.SharpSerializer_Xml_deserialize_FromString(serializedData);
}
catch { }
}
Expand Down
2 changes: 1 addition & 1 deletion ysoserial/Generators/PSObjectGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ public override object Generate(string formatter, InputArgs inputArgs)
{
// Could not be tested so it may not work here!
// also not sure if can use CDATA otherwise we could use the CDATA flag to save more space
clixml = XMLMinifier.Minify(clixml, null, null, FormatterType.None, true);
clixml = XmlMinifier.Minify(clixml, null, null, FormatterType.None, true);
}

PsObjectMarshal payload = new PsObjectMarshal(clixml);
Expand Down
8 changes: 4 additions & 4 deletions ysoserial/Generators/ResourceSetGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
xaml_payload = XMLMinifier.Minify(xaml_payload, null, null);
xaml_payload = XmlMinifier.Minify(xaml_payload, null, null);
}

xaml_payload = CommandArgSplitter.JsonStringEscape(xaml_payload);
Expand Down Expand Up @@ -304,7 +304,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
xaml_payload = XMLMinifier.Minify(xaml_payload, null, null);
xaml_payload = XmlMinifier.Minify(xaml_payload, null, null);
}

ndcPayload = @"<w b:Type=""System.Resources.ResourceSet"" b:Assembly=""0"" xmlns=""http://schemas.datacontract.org/2004/07/System.Resources"" xmlns:a=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:b=""http://schemas.microsoft.com/2003/10/Serialization/""><Table b:Type=""System.Collections.Hashtable"" b:Assembly=""0"" xmlns:c=""http://schemas.microsoft.com/2003/10/Serialization/Arrays""><LoadFactor b:Type=""System.Single"" b:Assembly=""0"" xmlns="""">0</LoadFactor><Version b:Type=""System.Int32"" b:Assembly=""0"" xmlns="""">1</Version><HashSize b:Type=""System.Int32"" b:Assembly=""0"" xmlns="""">3</HashSize><Values b:Type=""System.Object[]"" b:Assembly=""0"" b:Size=""1"" xmlns=""""><c:anyType b:Type=""Microsoft.VisualStudio.Text.Formatting.TextFormattingRunProperties"" b:Assembly=""Microsoft.PowerShell.Editor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35""><ForegroundBrush b:Type=""System.String"" b:Assembly=""0""><![CDATA[" + xaml_payload + @"]]></ForegroundBrush></c:anyType></Values></Table></w>";
Expand All @@ -315,11 +315,11 @@ public override object Generate(string formatter, InputArgs inputArgs)
{
if (inputArgs.UseSimpleType)
{
ndcPayload = XMLMinifier.Minify(ndcPayload, new string[] { "mscorlib", "Microsoft.PowerShell.Editor" }, new string[] { "</Values></Table></w>" }, FormatterType.NetDataContractXML, true);
ndcPayload = XmlMinifier.Minify(ndcPayload, new string[] { "mscorlib", "Microsoft.PowerShell.Editor" }, new string[] { "</Values></Table></w>" }, FormatterType.NetDataContractXML, true);
}
else
{
ndcPayload = XMLMinifier.Minify(ndcPayload, null, new string[] { "</Values></Table></w>" }, FormatterType.NetDataContractXML, true);
ndcPayload = XmlMinifier.Minify(ndcPayload, null, new string[] { "</Values></Table></w>" }, FormatterType.NetDataContractXML, true);
}
}

Expand Down
12 changes: 6 additions & 6 deletions ysoserial/Generators/RolePrincipalGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -52,11 +52,11 @@ public override object Generate(string formatter, InputArgs inputArgs)
{
if (inputArgs.UseSimpleType)
{
payload = JSONMinifier.Minify(payload, new string[] { "System.Web" }, null);
payload = JsonMinifier.Minify(payload, new string[] { "System.Web" }, null);
}
else
{
payload = JSONMinifier.Minify(payload, null, null);
payload = JsonMinifier.Minify(payload, null, null);
}
}

Expand Down Expand Up @@ -86,11 +86,11 @@ public override object Generate(string formatter, InputArgs inputArgs)
if (inputArgs.UseSimpleType)
{
// System.Web needs to be there! ust seems useless here
payload = XMLMinifier.Minify(payload, new string[] { "" }, null);
payload = XmlMinifier.Minify(payload, new string[] { "" }, null);
}
else
{
payload = XMLMinifier.Minify(payload, null, null);
payload = XmlMinifier.Minify(payload, null, null);
}
}

Expand Down Expand Up @@ -121,11 +121,11 @@ public override object Generate(string formatter, InputArgs inputArgs)
if (inputArgs.UseSimpleType)
{
// System.Web needs to be there! ust seems useless here
payload = XMLMinifier.Minify(payload, new string[] { }, null);
payload = XmlMinifier.Minify(payload, new string[] { }, null);
}
else
{
payload = XMLMinifier.Minify(payload, null, null);
payload = XmlMinifier.Minify(payload, null, null);
}
}

Expand Down
8 changes: 4 additions & 4 deletions ysoserial/Generators/SessionSecurityTokenGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = JSONMinifier.Minify(payload, new string[] { "System.IdentityModel" }, null);
payload = JsonMinifier.Minify(payload, new string[] { "System.IdentityModel" }, null);
}


Expand All @@ -92,7 +92,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = XMLMinifier.Minify(payload, null, null);
payload = XmlMinifier.Minify(payload, null, null);
}

if (inputArgs.Test)
Expand All @@ -117,7 +117,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = XMLMinifier.Minify(payload, null, null);
payload = XmlMinifier.Minify(payload, null, null);
}

if (inputArgs.Test)
Expand Down Expand Up @@ -148,7 +148,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = XMLMinifier.Minify(payload, null, null, FormatterType.SoapFormatter);
payload = XmlMinifier.Minify(payload, null, null, FormatterType.SoapFormatter);
}

if (inputArgs.Test)
Expand Down
8 changes: 4 additions & 4 deletions ysoserial/Generators/SessionViewStateHistoryItemGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ public override object Generate(string formatter, InputArgs inputArgs)
// by default JsonSerializerSettings.TypeNameAssemblyFormat is set to Simple so we can remove the version etc from the assembly name
// see https://www.newtonsoft.com/json/help/html/P_Newtonsoft_Json_JsonSerializerSettings_TypeNameAssemblyFormat.htm
// if TypeNameAssemblyFormat == Full , then we have to keep the full name
payload = JSONMinifier.Minify(payload, new string[] { "System.Web.Mobile" }, null);
payload = JsonMinifier.Minify(payload, new string[] { "System.Web.Mobile" }, null);
}


Expand All @@ -86,7 +86,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = XMLMinifier.Minify(payload, null, null);
payload = XmlMinifier.Minify(payload, null, null);
}

if (inputArgs.Test)
Expand All @@ -111,7 +111,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = XMLMinifier.Minify(payload, null, null);
payload = XmlMinifier.Minify(payload, null, null);
}

if (inputArgs.Test)
Expand Down Expand Up @@ -141,7 +141,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = XMLMinifier.Minify(payload, null, null, FormatterType.SoapFormatter);
payload = XmlMinifier.Minify(payload, null, null, FormatterType.SoapFormatter);
}

if (inputArgs.Test)
Expand Down
8 changes: 4 additions & 4 deletions ysoserial/Generators/TextFormattingRunPropertiesGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -157,11 +157,11 @@ public override object Generate(string formatter, InputArgs inputArgs)
{
if (inputArgs.UseSimpleType)
{
payload = XMLMinifier.Minify(payload, new string[] { "mscorlib", "Microsoft.PowerShell.Editor" }, null, FormatterType.NetDataContractXML, true);
payload = XmlMinifier.Minify(payload, new string[] { "mscorlib", "Microsoft.PowerShell.Editor" }, null, FormatterType.NetDataContractXML, true);
}
else
{
payload = XMLMinifier.Minify(payload, null, null, FormatterType.NetDataContractXML, true);
payload = XmlMinifier.Minify(payload, null, null, FormatterType.NetDataContractXML, true);
}
}

Expand Down Expand Up @@ -198,7 +198,7 @@ public override object Generate(string formatter, InputArgs inputArgs)

if (inputArgs.Minify)
{
payload = XMLMinifier.Minify(payload, null, null, FormatterType.DataContractXML, true);
payload = XmlMinifier.Minify(payload, null, null, FormatterType.DataContractXML, true);
}

if (inputArgs.Test)
Expand Down Expand Up @@ -246,7 +246,7 @@ public static object TextFormattingRunPropertiesGadget(InputArgs inputArgs)

if (inputArgs.Minify)
{
xaml_payload = XMLMinifier.Minify(xaml_payload, null, null);
xaml_payload = XmlMinifier.Minify(xaml_payload, null, null);
}

TextFormattingRunPropertiesMarshal payload = new TextFormattingRunPropertiesMarshal(xaml_payload);
Expand Down
Loading

0 comments on commit 78ff878

Please sign in to comment.