Título: Decopile .NET Publicado por: d0x1s en 8 Junio 2019, 20:21 pm Hola a todos necesito decopilar un ejecutable en .NET. He observado que contiene varios obfuscators pero no se como empezar con el , vamos como meterle mano. Gracias a cualquie aportacion de antemano.
https://anonfile.com/l3x84au2n1/decopile_me_exe https://www.virustotal.com/gui/file/1f76c0d58e2cead998fec4582e706d2926fa28e1a2f7091e2e308defee7a82fd/detection Título: Re: Decopile .NET Publicado por: Geovane en 10 Junio 2019, 03:28 am ¡Hola
Si los deobfuscator comunes y fácil de encontrar como de4dot, entre otros, no resolver, usted debe actualizar o crear desde cero para nuevos métodos de ofuscación. Crear nuevos requiere mucha experiencia. Saludos. Título: Re: Decopile .NET Publicado por: d0x1s en 11 Junio 2019, 01:09 am Gracias por tu respuesta, de4dot no funciona debido a que el ejecutable a decopilar contiene fake atributtes. Creo que esta ofuscado con trinity .NET obfuscator.
Pd: No tengo mucha experiencia en esto. Título: Re: Decopile .NET Publicado por: apuromafo CLS en 11 Junio 2019, 16:41 pm a mi punto de vista es una peticion directa de crackearlo, pero veamos hasta donde llegamos por encima : :silbar:
descripcion del programa: Prometheus Software 2019 ahora bien, abres en dnspy (x64) se ve claramente que esto tiene multiples capas al inicio: Imports System Namespace CryptoObfuscator Friend Class ProtectedWithCryptoObfuscatorAttribute End Class ' Token: 0x0200004C RID: 76 End Namespace Namespace Xenocode.Client.Attributes.AssemblyAttributes Friend Class ProcessedByXenocode End Class ' Token: 0x02000050 RID: 80 End Namespace Friend Class ObfuscatedByGoliath End Class NineRays.Obfuscator ' ' Types: ' ' SoftwareWatermarkAttribute Namespace SecureTeam.Attributes Friend Class ObfuscatedByCliSecureAttribute End Class ' Token: 0x0200004A RID: 74 End Namespace osea mas claro imposible xD hay ofuscadores de por medio, que hacen que colapse el de4dot, vamos a exeinfope 0)Original: exeinfope 0.0.5.6 -> .NET ConfuserEx structure [ mutation / mod -> generic ] 1)al quitar la primera capa de confuserex, con herramientas para desempacar confuser (si , en tuts4you y otros foros hablan del tema,es bien complejo) bueno veamos que aparece una vez desempacado: exeinfope 0.0.5.6 -> [ Linker 48 ] - Microsoft Visual C# / Basic.NET [ Obfus/Crypted ] - EP Token : 060000EF 2) al usar sobre el desempacado usar de4dot de kao o bien de Wuhensoft parece en la forma como DeepSea Obfuscator v4 / Ben-Mhenni-Protector / o inclusive hasta el babel si intento en la primera y segunda capa comentada, pasar de4dot, ahora si tengo algo mas claro, un poco mas con dnspy, al volcar y analizar se ve así. exeinfope 0.0.5.6 ->*** .NET - dotfuscator - PreEmpire Solutions - www.preemptive.com - stub : Microsoft Visual C# / Basic.NET - EP Token : 060001CC en el caso de desofuscar con de4dot, luego del tema: ya no existe nada ilegible, igual falta desofuscar bastantes cosas, la aplicación desofuscada es un x86 (32 bytes) desde analisis de rdgpacker detector, pero al pasar por dnspy para depurarlo, claramente es de x64 . en mi caso al navegar por propiedades: Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.0" es claro que han hecho uso de visual studio 15.9 (no es el mas actualizado) https://docs.microsoft.com/en-us/visualstudio/releasenotes/vs2017-relnotes mas ayuda no daré, pues solo quería confirmar que protección tiene: es confuser y hay ofuscación. Private Sub method_3() Me.grid_2.Visibility = Visibility.Hidden Me.grid_3.Visibility = Visibility.Visible Class19.string_5 = Me.textBox_0.Text Class19.string_6 = Me.passwordBox_0.Password Settings.[Default].username = Class19.string_5 Settings.[Default].password = Class19.string_6 Settings.[Default].Save() End Sub como metodo 3, es un programa que muestra un panel de conexión a traves de usuario y clavey guarda esos parámetros cuando inicia Public Sub New() Me.InitializeComponent() Me.textBox_0.Text = Settings.[Default].username Me.passwordBox_0.Password = Settings.[Default].password coloca los valores de default. verifica que no sean nulos Private Sub button_0_Click(sender As Object, e As RoutedEventArgs) If Me.textBox_0.Text = "" OrElse Me.passwordBox_0.Password = "" Then Class5.smethod_11("", True) End If Task.Run(AddressOf Me.method_2) End Sub se intenta conectar via socket a la ip 51.38.51.87 luego de la validación via conect hay 17 casos (opciones), y con ello establece true/false hacia la conexión con el navegador, luego de ello deberia haber un form con muchos radiogroups y opciones asi que puedo afirmar que es un sistema de cheat engine o algo asi, con ello cuenta con 90 cases (opciones) y al menos 33 diccionarios posibles de manejar , dentro del programa se aprecian 2 versiones, es algo extraño pero seria la 3.3.5.0 y 3.3.2.0 a la vez. y ya de ahi validará la información, claramente es un programa pensado para ingresar a la plataforma de ellos, no tengo mas sentido de seguir explicando el programa, es un programa diseñado para ser manejado por el navegador con su usuario y clave establecido por ellos Saludos Apuromafo Título: Re: Decopile .NET Publicado por: d0x1s en 11 Junio 2019, 18:40 pm a mi punto de vista es una peticion directa de crackearlo, pero veamos hasta donde llegamos por encima : :silbar: descripcion del programa: Prometheus Software 2019 ahora bien, abres en dnspy (x64) se ve claramente que esto tiene multiples capas al inicio: Imports System Namespace CryptoObfuscator Friend Class ProtectedWithCryptoObfuscatorAttribute End Class ' Token: 0x0200004C RID: 76 End Namespace Namespace Xenocode.Client.Attributes.AssemblyAttributes Friend Class ProcessedByXenocode End Class ' Token: 0x02000050 RID: 80 End Namespace Friend Class ObfuscatedByGoliath End Class NineRays.Obfuscator ' ' Types: ' ' SoftwareWatermarkAttribute Namespace SecureTeam.Attributes Friend Class ObfuscatedByCliSecureAttribute End Class ' Token: 0x0200004A RID: 74 End Namespace osea mas claro imposible xD hay ofuscadores de por medio, que hacen que colapse el de4dot, vamos a exeinfope 0)Original: exeinfope 0.0.5.6 -> .NET ConfuserEx structure [ mutation / mod -> generic ] 1)al quitar la primera capa de confuserex, con herramientas para desempacar confuser (si , en tuts4you y otros foros hablan del tema,es bien complejo) bueno veamos que aparece una vez desempacado: exeinfope 0.0.5.6 -> [ Linker 48 ] - Microsoft Visual C# / Basic.NET [ Obfus/Crypted ] - EP Token : 060000EF 2) al usar sobre el desempacado usar de4dot de kao o bien de Wuhensoft parece en la forma como DeepSea Obfuscator v4 / Ben-Mhenni-Protector / o inclusive hasta el babel si intento en la primera y segunda capa comentada, pasar de4dot, ahora si tengo algo mas claro, un poco mas con dnspy, al volcar y analizar se ve así. exeinfope 0.0.5.6 ->*** .NET - dotfuscator - PreEmpire Solutions - www.preemptive.com - stub : Microsoft Visual C# / Basic.NET - EP Token : 060001CC en el caso de desofuscar con de4dot, luego del tema: ya no existe nada ilegible, igual falta desofuscar bastantes cosas, la aplicación desofuscada es un x86 (32 bytes) desde analisis de rdgpacker detector, pero al pasar por dnspy para depurarlo, claramente es de x64 . en mi caso al navegar por propiedades: Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.0" es claro que han hecho uso de visual studio 15.9 (no es el mas actualizado) https://docs.microsoft.com/en-us/visualstudio/releasenotes/vs2017-relnotes mas ayuda no daré, pues solo quería confirmar que protección tiene: es confuser y hay ofuscación. Private Sub method_3() Me.grid_2.Visibility = Visibility.Hidden Me.grid_3.Visibility = Visibility.Visible Class19.string_5 = Me.textBox_0.Text Class19.string_6 = Me.passwordBox_0.Password Settings.[Default].username = Class19.string_5 Settings.[Default].password = Class19.string_6 Settings.[Default].Save() End Sub como metodo 3, es un programa que muestra un panel de conexión a traves de usuario y clavey guarda esos parámetros cuando inicia Public Sub New() Me.InitializeComponent() Me.textBox_0.Text = Settings.[Default].username Me.passwordBox_0.Password = Settings.[Default].password coloca los valores de default. verifica que no sean nulos Private Sub button_0_Click(sender As Object, e As RoutedEventArgs) If Me.textBox_0.Text = "" OrElse Me.passwordBox_0.Password = "" Then Class5.smethod_11("", True) End If Task.Run(AddressOf Me.method_2) End Sub se intenta conectar via socket a la ip 51.38.51.87 luego de la validación via conect hay 17 casos (opciones), y con ello establece true/false hacia la conexión con el navegador, luego de ello deberia haber un form con muchos radiogroups y opciones asi que puedo afirmar que es un sistema de cheat engine o algo asi, con ello cuenta con 90 cases (opciones) y al menos 33 diccionarios posibles de manejar , dentro del programa se aprecian 2 versiones, es algo extraño pero seria la 3.3.5.0 y 3.3.2.0 a la vez. y ya de ahi validará la información, claramente es un programa pensado para ingresar a la plataforma de ellos, no tengo mas sentido de seguir explicando el programa, es un programa diseñado para ser manejado por el navegador con su usuario y clave establecido por ellos Saludos Apuromafo Increible explicación apuromafo me ha quedado bastante claro todo, realmente era mas sencillo de lo que yo pensaba. Muchisimas gracias por tomarte las molestias de ofrecerme una explicacion tan detallada. Me sirve muchisimo para aprender. Veo que no ofreces muchos detalles acerca de como desobfuscar confuserex ya que existe bastante controversia acerca de este tema y es mas complejo pero podrias darme una ligera idea y de paso serias tan amable de compartir el ejecutable final con el que has analizado su funcionalidad. Una vez mas muchisimas gracias. :) Título: Re: Decopile .NET Publicado por: apuromafo CLS en 12 Junio 2019, 16:18 pm compartir el ejecutable final -> no, eso puede ser tomado a mal, no puedo.
por otro lado para leer del tema de confuser verás que no es nada nuevo: https://www.google.com/search?q=confuser+ex Saludos Título: Re: Decopile .NET Publicado por: d0x1s en 12 Junio 2019, 20:40 pm compartir el ejecutable final -> no, eso puede ser tomado a mal, no puedo. por otro lado para leer del tema de confuser verás que no es nada nuevo: https://www.google.com/search?q=confuser+ex Saludos Muchisimas gracias de todas formas , he intentado varios tutoriales por no decir muchos pero no se como hacer esactamente ya que es confuseex moded y no se como remover el anti tamper etc... se me hace complicado en este ejecutable ya que no sigue los habituales patrones de los tutoriales. pd: tampoco puedo debugear correctamente ya que en el modulo principal creo que es: he observado que implementa isdebuggerpresent y otros metodos anti debug https://anonfile.com/Zfwat5vcn7/decopile_me_ez-cleaned_exe Ya esta decopilado, cualquier ayuda para descifrar ahora los strings etc.. seria bien recibida. Necesito obtener la maxima desecriptacion para que el programa sea lo mayor legible que se pueda. Gracias de antemano. :) MOD: No hacer doble post. Usa el boton modificar. |