Extractor de Recursos .NET
Extrae y decodifica recursos incrustados del código fuente .NET. Detecta cadenas codificadas en Base64, arrays de bytes codificados en hexadecimal, llamadas a GetManifestResourceStream, búsquedas en ResourceManager, cargas útiles con Convert.FromBase64String y datos de configuración incrustados. Muestra cada detección con los valores codificado y decodificado lado a lado, valoraciones de confianza y el contexto del código fuente. Gratis, privado y sin registro.
Extract and decode embedded resources from .NET source code. Detects Base64 strings, hex-encoded byte arrays, GetManifestResourceStream calls, ResourceManager lookups, Convert.FromBase64String usage, and embedded configuration data. Shows encoded and decoded values side by side with confidence ratings.
Paste .NET source code above and click Extract Resources to detect and decode embedded resources. The tool identifies Base64 strings, hex-encoded byte arrays, GetManifestResourceStream calls, ResourceManager lookups, and embedded configuration data. Try loading an example to see how it works!
Características
- 6 métodos de detección de recursos: detecta automáticamente cadenas Base64 incrustadas, arrays de bytes codificados en hexadecimal, llamadas a GetManifestResourceStream, patrones Convert.FromBase64String, búsquedas en ResourceManager y cadenas de configuración incrustadas en el código fuente .NET. Cada método usa coincidencia de patrones específica con puntuación de confianza.
- Decodificación Base64 y hexadecimal en vivo: los recursos codificados en Base64 se decodifican automáticamente con el atob() nativo del navegador para revelar URL, cadenas de conexión, claves de API y datos de configuración. Los arrays de bytes codificados en hexadecimal se convierten en cadenas legibles mediante reconstrucción de caracteres.
- Detección de patrones de acceso a recursos: identifica patrones de acceso a recursos .NET como Assembly.GetManifestResourceStream, ResourceManager.GetString, búsquedas en recursos .resx y referencias a archivos incrustados. Cada detección incluye números de línea de origen y contexto del código circundante para facilitar la navegación.
- 100 % local en el navegador y privado: toda la extracción de recursos se ejecuta por completo en tu navegador. Tu código fuente .NET, los recursos detectados y los valores decodificados nunca salen de tu dispositivo. Sin subidas a servidores, sin llamadas a API, sin almacenamiento de datos y sin ningún tipo de rastreo.
¿Qué es la extracción de recursos .NET?
La extracción de recursos .NET es el proceso de identificar y decodificar datos incrustados dentro de ensamblados .NET. Las aplicaciones .NET suelen incrustar recursos como archivos de configuración, cadenas, imágenes y datos serializados directamente en ensamblados compilados mediante la acción de compilación Recurso incrustado o el sistema de archivos Resources.resx. Las aplicaciones .NET ofuscadas y maliciosas van más allá codificando datos sensibles (como URL de C2, endpoints de API, claves de licencia y cargas cifradas) como cadenas Base64, arrays de bytes hexadecimales o flujos de recursos ofuscados a los que se accede mediante Assembly.GetManifestResourceStream() o ResourceManager.GetString() . Extraer y decodificar estos recursos es esencial para entender qué hace realmente una aplicación .NET ofuscada o desconocida.
Cómo funciona nuestro extractor de recursos
El extractor analiza el código fuente .NET con detectores de patrones especializados para cada técnica de codificación de recursos. Para las cadenas Base64 , detecta literales largos codificados en Base64 y los decodifica con la función atob() integrada del navegador, revelando URL ocultas, cadenas de conexión y datos serializados. Para los arrays de bytes codificados en hexadecimal , identifica patrones como new byte[] y convierte los pares hexadecimales en caracteres legibles. Para el acceso a flujos de recursos , detecta llamadas a GetManifestResourceStream() , ResourceManager.GetString() y GetObject() , extrayendo los nombres de recurso y los parámetros. Para los datos de configuración , identifica literales de cadena que contienen URL, rutas de archivo y otros patrones de configuración incrustados. Cada detección incluye números de línea de origen y el contexto circundante.
Técnicas de codificación de recursos en .NET
Los ofuscadores de .NET y el malware usan varias técnicas para ocultar recursos en ensamblados compilados. La codificación Base64 es la más común: cargas útiles y archivos de configuración completos se codifican en Base64 y se decodifican en tiempo de ejecución con Convert.FromBase64String() . Los arrays de bytes hexadecimales almacenan datos como arrays de bytes literales en hexadecimal que se convierten con Encoding.UTF8.GetString() . El cifrado XOR aplica operaciones XOR con un byte clave para ofuscar los datos incrustados. Los flujos de recursos usan GetManifestResourceStream() para acceder a datos ocultos en las secciones de recursos del ensamblado con nombres engañosos. Los patrones de acceso a ResourceManager indexan datos .resx compilados mediante claves de cadena. Comprender estas técnicas ayuda a identificar qué tipo de datos puede haber ocultos y cómo decodificarlos.
Privacidad y seguridad
Esta herramienta se ejecuta por completo en tu navegador. Tu código fuente .NET, los recursos detectados, los valores decodificados y los resultados del análisis nunca se suben a ningún servidor, no se guardan en ninguna base de datos ni se transmiten por la red. Todo el análisis, la coincidencia de patrones y la decodificación se ejecutan localmente en tu dispositivo con JavaScript del lado del cliente. No hay llamadas a API, seguimiento analítico, cookies ni ningún tipo de recopilación de datos. Esto la hace totalmente segura para analizar aplicaciones .NET propietarias, ensamblados de terceros, muestras de malware o código fuente empresarial sensible.
Preguntas frecuentes
La herramienta detecta seis tipos comunes de recursos .NET: cadenas codificadas en Base64 (literales Base64 largos decodificados con atob()), arrays de bytes codificados en hexadecimal (patrones como new byte[] {0x48, 0x65, ...}), llamadas a GetManifestResourceStream (acceso a flujos de recursos del ensamblado), llamadas a ResourceManager.GetString/GetObject (búsquedas de recursos .resx), uso de Convert.FromBase64String (decodificación Base64 en tiempo de ejecución) y cadenas de configuración incrustadas (URL, rutas de archivo, cadenas de conexión en literales de cadena).
La herramienta busca literales de cadena con 20 o más caracteres de contenido Base64 válido (A-Z, a-z, 0-9, +, /, relleno =). Valida el Base64 intentando decodificarlo con atob() y comprobando si la salida decodificada contiene texto ASCII legible. Las URL, los endpoints de API y las cadenas de configuración que se decodifican a contenido legible reciben las puntuaciones de confianza más altas (5, muy alta).
Assembly.GetManifestResourceStream() es un método de .NET que accede a los recursos incrustados almacenados dentro de un ensamblado compilado. Los desarrolladores pueden incrustar cualquier archivo como recurso con la acción de compilación "Recurso incrustado". Los ofuscadores y los autores de malware suelen ocultar cargas útiles y datos de configuración como recursos incrustados con nombres engañosos y luego acceder a ellos en tiempo de ejecución con este método. La herramienta detecta estas llamadas y extrae el nombre del recurso para investigarlo mejor.
No: esta herramienta analiza código fuente .NET, no ensamblados compilados. Primero debes descompilar el ejecutable o la DLL de .NET con una herramienta como dnSpy, ILSpy o dotPeek. Copia el código fuente C# o VB.NET descompilado y pégalo en esta herramienta. El descompilador revelará las llamadas a GetManifestResourceStream, las cadenas Base64 y los literales de arrays de bytes que el extractor podrá detectar y decodificar.
La herramienta detecta patrones de 3 o más literales de bytes hexadecimales consecutivos (0x48, 0x65, 0x6C) en inicializadores de arrays o expresiones en línea. Recoge los valores decimales de cada literal hexadecimal, los convierte a caracteres con String.fromCharCode() y comprueba si el texto resultante es ASCII legible. Esta técnica se usa habitualmente para ocultar cadenas construyéndolas byte a byte en lugar de usar literales de cadena directamente.
La herramienta puede detectar patrones asociados habitualmente a recursos cifrados con XOR, como arrays de bytes con valores no ASCII usados junto a una variable clave. Sin embargo, decodificar por completo datos cifrados con XOR requiere conocer la clave de cifrado, que suele derivarse en tiempo de ejecución de otros valores. Cuando se detectan patrones XOR pero no se pueden decodificar, la herramienta informa de la detección con el contexto adecuado y una puntuación de confianza más baja.
Por supuesto. El Extractor de Recursos .NET se ejecuta por completo en tu navegador. Tu código fuente, todos los recursos detectados, los valores decodificados y los resultados del análisis nunca se suben a ningún servidor, no se guardan en ninguna base de datos ni se transmiten por la red. Todo el procesamiento ocurre localmente en tu dispositivo, sin llamadas a API ni recopilación de datos. Puedes analizar con seguridad código fuente .NET propietario, confidencial o sensible.
Sí: 100 % gratis, sin registro, sin cuenta y sin límites de uso. Extrae recursos de todo el código .NET que necesites, tantas veces como quieras. No hay niveles premium, cargos ocultos ni límites de velocidad. La herramienta se ejecuta por completo en tu navegador: tu código nunca sale de tu dispositivo.