Saltar al contenido
Aback Tools Logo

Analizador de Atributos y Metadatos .NET

Escanea código fuente C# y VB.NET para detectar y clasificar atributos de metadatos de .NET. Identifica atributos relacionados con la ofuscación ([Obfuscation], [SuppressIldasm], [DebuggerHidden]), atributos de seguridad ([SecurityCritical], [AllowPartiallyTrustedCallers]), atributos de serialización ([Serializable], [DataContract], [DataMember]), atributos COM/Interop ([DllImport], [ComVisible]), permisos de seguridad de acceso al código y marcadores de ofuscadores personalizados (ConfuserEx, Dotfuscator, Obfuscar, SmartAssembly, Babel, CryptoObfuscator, .NET Reactor). Cada atributo incluye una explicación detallada de su propósito, una valoración de relevancia, el contexto del código circundante y el número de línea. Gratis, privado y sin registro.

.NET Attribute & Metadata Analyzer

Scan C# or VB.NET source code to detect and categorize metadata attributes. Identifies obfuscation-related attributes ([Obfuscation], [SuppressIldasm], [DebuggerHidden]), security attributes, serialization attributes, COM interop attributes, and custom obfuscator markers (ConfuserEx, Dotfuscator, Obfuscar, SmartAssembly, Babel). Each attribute includes a detailed explanation of its purpose and relevance to obfuscation analysis.

Examples:

Paste C# or VB.NET source code above and click Analyze Attributes to detect and categorize metadata attributes. The analyzer identifies obfuscation-related attributes, security attributes, serialization attributes, COM interop attributes, debugger attributes, and custom obfuscator markers. Each detection includes a detailed explanation. Try loading an example to see how it works!

Características

  • 7 categorías de atributos con más de 30 patrones de detección: escanea automáticamente atributos de 7 categorías: ofuscación ([Obfuscation], [SuppressIldasm], [Obfuscate]), seguridad ([SecurityCritical], [AllowPartiallyTrustedCallers]), serialización ([Serializable], [DataContract], [DataMember]), interoperabilidad COM ([DllImport], [ComVisible], [Guid]), depurador ([DebuggerHidden], [DebuggerNonUserCode]), seguridad de acceso al código ([PermissionSet], [SecurityPermission]) y marcadores de ofuscadores personalizados (ConfuserEx, Dotfuscator, Obfuscar, SmartAssembly, Babel).
  • Valoraciones de relevancia y explicaciones detalladas: cada atributo detectado incluye una valoración de relevancia (alta/media/baja/informativa) y una explicación detallada de su propósito, qué hace y por qué importa para el análisis de ofuscación. Los atributos de alta relevancia como [DebuggerHidden] señalan medidas anti-depuración, mientras que [ConfuserEx] identifica directamente la herramienta de ofuscación utilizada.
  • Salida categorizada con vista de código anotada: los atributos se agrupan por categoría con tarjetas codificadas por colores para un escaneo visual instantáneo. La vista de código anotada añade comentarios en línea en cada línea que contiene atributos detectados, mostrando la categoría y el nombre del atributo directamente en el contexto del código original.
  • 100 % local en el navegador y privado: todo el análisis de atributos .NET se ejecuta por completo en tu navegador. Tu código C#/VB.NET, todos los atributos detectados y los resultados del análisis nunca salen de tu dispositivo. Sin subidas a servidores, sin llamadas a API, sin almacenamiento de datos y sin rastreo. Seguro para analizar código propietario o ensamblados .NET potencialmente maliciosos.

Casos de uso

  • Análisis de malware y puertas traseras: analiza malware .NET descompilado en busca de atributos sospechosos. [DllImport] con funciones de la API de Win32 indica interacción con el sistema. [DebuggerHidden] y [DebuggerNonUserCode] sugieren medidas anti-depuración. [OnDeserialized] puede ocultar lógica de ejecución posterior a la explotación en callbacks de serialización.
  • Identificación de técnicas anti-depuración y anti-análisis: identifica rápidamente atributos anti-depuración como [DebuggerHidden], [DebuggerNonUserCode] y [DebuggerStepThrough] que el código .NET ofuscado usa para evadir el análisis dinámico. [SuppressIldasm] indica un intento de bloquear el desensamblado de IL, aunque ofrece una protección real mínima.
  • Identificación de herramientas de ofuscación: detecta atributos de ofuscadores personalizados que identifican qué herramienta de ofuscación .NET se usó. [ConfuserEx] y [Obfuscar] son herramientas de código abierto, mientras que [Dotfuscator], [SmartAssembly] y [Babel] son productos comerciales. Conocer el ofuscador ayuda a elegir el enfoque de desofuscación adecuado.
  • Auditorías de seguridad de aplicaciones .NET: durante las auditorías de seguridad de aplicaciones .NET, busca [SuppressIldasm], que puede indicar intentos de ocultar código a los revisores. Comprueba [AllowPartiallyTrustedCallers], que puede exponer ensamblados a llamadores no confiables. Revisa [SecurityCritical] y [SecuritySafeCritical] para verificar el uso correcto de la transparencia de seguridad.
  • Herramienta educativa sobre metadatos de .NET: aprende qué hacen los distintos atributos de metadatos de .NET y cómo afectan al comportamiento del código. Entiende la diferencia entre [Serializable] y [DataContract], por qué se usa [DllImport] para la interoperabilidad con Win32 y cómo [Obfuscation(Exclude=true)] conserva miembros concretos durante la ofuscación.
  • Ingeniería inversa de ensamblados descompilados: al aplicar ingeniería inversa a ensamblados .NET descompilados, usa el analizador de atributos para identificar rápidamente atributos clave que revelan la estructura del código. [Guid] identifica interfaces COM, [DataMember] marca campos serializados y [Obfuscation] muestra qué intentó proteger o excluir el autor original.

Preguntas frecuentes

El analizador detecta 7 categorías de atributos de metadatos de .NET: atributos relacionados con la ofuscación ([Obfuscation], [SuppressIldasm], [Obfuscate], [ObfuscateAssembly]), atributos de seguridad ([SecurityCritical], [SecuritySafeCritical], [AllowPartiallyTrustedCallers], [SecurityTransparent]), atributos de serialización ([Serializable], [NonSerialized], [DataContract], [DataMember], [KnownType], [OptionalField], callbacks de serialización), atributos COM/Interop ([ComVisible], [Guid], [DllImport], [MarshalAs], [StructLayout], [InterfaceType], [ClassInterface]), atributos de depuración ([DebuggerHidden], [DebuggerNonUserCode], [DebuggerStepThrough], [DebuggerBrowsable], [DebuggerDisplay]), atributos de seguridad de acceso al código ([SecurityPermission], [PermissionSet], [FileIOPermission], etc.) y atributos de ofuscadores personalizados (ConfuserEx, Dotfuscator, Obfuscar, SmartAssembly, Babel, CryptoObfuscator, .NET Reactor).

El atributo [SuppressIldasm] impide que el desensamblador de IL (ILDASM) vea el ensamblado. Fue una de las primeras medidas anti-ingeniería inversa en .NET. Sin embargo, herramientas modernas como dnSpy, ILSpy y dotPeek pueden eludirlo con facilidad, por lo que ofrece una protección mínima frente a analistas decididos. Aun así, su presencia es un fuerte indicio de que el desarrollador intentó deliberadamente impedir la inspección del código.

La herramienta busca patrones de atributos exclusivos de ofuscadores concretos. Por ejemplo, ConfuserEx deja marcadores de atributo [ConfuserEx] en el ensamblado. Dotfuscator usa atributos [Dotfuscator]. Obfuscar usa marcadores [Obfuscar]. SmartAssembly usa patrones [SmartAssembly] o [SmartAssembly.*]. Babel Obfuscator usa patrones [Babel.Obfuscator]. Cada detección incluye una descripción del ofuscador y de las funciones de protección que ofrece.

[DebuggerHidden] y [DebuggerNonUserCode] se usan habitualmente en código ofuscado para dificultar la depuración y el análisis dinámico. [DebuggerHidden] impide establecer puntos de interrupción en el método y evita que el depurador entre en él. [DebuggerNonUserCode] hace que el depurador omita el código durante las operaciones de paso a paso, lo que dificulta seguir las rutas de ejecución ofuscadas. Su presencia en código descompilado suele ser un fuerte indicio de protecciones anti-análisis intencionadas.

No. Esta herramienta analiza código fuente C# o VB.NET y código fuente descompilado (de dnSpy, ILSpy, dotPeek, etc.). Para analizar un ensamblado .NET compilado, primero descompílalo con una herramienta como dnSpy o ILSpy y después pega el código descompilado en este analizador. La herramienta detectará los atributos de metadatos presentes en la salida descompilada.

La vista de código anotada muestra tu código fuente C# o VB.NET original con comentarios en línea en cada línea donde se detectó un atributo de metadatos. Cada anotación incluye la categoría y el nombre del atributo, como "Ofuscación: directiva de ofuscación" o "Ofuscador personalizado: atributo ConfuserEx". Así es fácil recorrer visualmente el código y entender qué líneas tienen atributos significativos.

Los atributos se agrupan en 7 categorías (Ofuscación, Seguridad, Serialización, Interop, Depurador, Seguridad de acceso al código y Ofuscador personalizado). Dentro de cada categoría, los atributos se muestran en el orden en que aparecieron en el código. Las categorías se ordenan por el número de atributos que contienen, y la más frecuente aparece primero. Cada atributo incluye su relevancia (alta/media/baja/informativa), una explicación detallada, el fragmento de código circundante y el número de línea.

Por supuesto. El Analizador de Atributos y Metadatos .NET se ejecuta por completo en tu navegador. Tu código C# o VB.NET, todos los atributos detectados, los resultados del análisis y el código anotado nunca se suben a ningún servidor ni se transmiten por la red. Todo el procesamiento ocurre localmente en tu dispositivo, sin llamadas a API ni recopilación de datos.

Sí: 100 % gratis, sin registro, sin cuenta y sin límites de uso. Analiza 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.