elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


  Mostrar Temas
Páginas: [1] 2 3
1  Programación / Ingeniería Inversa / Dede para Delphi XE7 x64? en: 22 Diciembre 2020, 01:39 am
Buenas amigos, estoy con un programita hecho con Delphi XE7 de 64 bits y todo sería más sencillo con un decompilador de Delphi que soporte esa versión. He probado idr y solo soporta 32 bits. ¿Saben de alguno que me pueda ayudar?
2  Programación / Ingeniería Inversa / Saltarse truco antidebug de Windows 10 en: 30 Mayo 2020, 12:14 pm
Hola amigos, uno de los trucos que quiero implementarlo en mi clase para crear loader debuggers es saltarse la protección antidebugger para Windows 10 basada en RaiseException para provocar evento OutputDebugEvent. Lo que hace es que si no hay debugger no se envía el mensaje y da una excepción que la aplicación controla y si hay debugger no se produce excepción y por ahí nos pilla. Os pongo un código de ejemplo:
Código:
void __stdcall _OutputDebugStringW(LPCWSTR lpOutputString)
{
        char outputDebugStringBuffer[1000] = {0};
        WideCharToMultiByte(CP_ACP, 0, lpOutputString, -1, outputDebugStringBuffer, sizeof(outputDebugStringBuffer), 0, 0);

        ULONG_PTR args[4];

        //unicode
        args[0] = (ULONG_PTR)wcslen(lpOutputString) + 1;
        args[1] = (ULONG_PTR)lpOutputString;

        //ansi for compatibility
        args[2] = (ULONG_PTR)wcslen(lpOutputString) + 1;
        args[3] = (ULONG_PTR)outputDebugStringBuffer;

        __try
        {
                RaiseException(0x4001000A, 0, 4, args);//DBG_PRINTEXCEPTION_WIDE_C
                ShowMessageBox("DBG_PRINTEXCEPTION_WIDE_C -> Debugger detected");
        }
        __except(EXCEPTION_EXECUTE_HANDLER)
        {
                ShowMessageBox("DBG_PRINTEXCEPTION_WIDE_C -> Debugger NOT detected");
        }
}
La cosa es ¿Como puedo implementar un truco para saltarse esa protección? Se me ocurrió poner un bp en esa api y estando en ese bp devolverle EXCEPTION_EXECUTE_HANDLER ¿Alguna sugerencia?
3  Programación / Ingeniería Inversa / Duda sobre BeingDebuger y CloseHandle en: 30 Mayo 2020, 12:00 pm
Buenas amigos, estoy liado creando una clase de C++Builder x64 y estoy añadiéndole trucos anti antidebug y me encuentro con algo raro. Si modifico el PEB y cambio el valor de BeingDebuger ya no me da excepción de handle invalido al usar CloseHandle con un handle invalido y si no modifico el valor de BeingDebuger en el PEB ya si me da la excepción por handle invalido. Esto se resume con que si hago que no me detecte a través de BeingDebuger y usa el truco de handle invalido con CloseHandle me pillaría ya que al no darme la excepción en el debuger no podría controlarla.
¿Es normal eso?¿A alguien más le pasó?
4  Programación / Ingeniería Inversa / Enviar texto a Edit de ventana ajena en: 4 Mayo 2020, 11:54 am
El tema es algo más complejo porque enviar texto ya sé cómo enviarlo pero lo que tengo entre manos es otra cosa.
Tengo un loader debugger el cual lanza una aplicación y cazo el serial correcto y quiero enviarlo automáticamente al TEdit y que no tenga que enviarlo yo dando a un botón.
El caso es que la ventana se crea con DialogBoxParamA y tengo el punto donde el programa lo llama para mostrarlo pero una vez ejecuta esa línea ya se queda esperando una respuesta con lo que no me vale poner un bp en la siguiente línea y enviar el serial desde ahí.
Probé a, estando parado en el call que crea el cuadro de diálogo, poner un bp en FillRect y cuando para ya salgo de esa función con el TEdit que se muestra en el cuadro de diálogo pero si envío el serial en ese momento se me congela tanto el depurador como el programa.
¿Alguien me puede ayudar a encontrar el punto correcto para poder enviarle el serial al TEdit?
Gracias por adelantado.
5  Programación / Ingeniería Inversa / Ayuda para desempacar/descifrar confuser 1.9 + CryptoObfuscator en: 27 Diciembre 2017, 17:37 pm
Hola amigos, llevo varios días intentando desempacar/descifrar un C#.NET C# pero son todo problemas cuando lo intento.
He probado lo siguiente: https://forum.tuts4you.com/topic/36776-unpackcryptoconfuser-19/
Pero:

1- Tengo problemas en el paso 3: de4dot.exe "path" -p un --strtyp delegate --strtok 0600002f". (En mi caso es 0600002f). Si uso el parámetro strtok da error y no da ninguna pista de que falla.
2- No tengo "CryptoObfuscator constant fixer".
3- No tengo "ResourceManager".

También probé con este: https://bbs.cracker.in.th/thread-6462-1-1.html
Con los mismos problemas.

También probé con este: https://es.scribd.com/document/255653902/NET-Decrypt-Constants-Manually-Using-PowerShell

Code:
Código:
$MetadataToken = 0x0600002f
$path = 'C:\...\file.DumpedMethods-cleaned.exe'
$asm = [System.Reflection.Assembly]::LoadFrom($path)
$module = $asm.GetModules()[0]
$decryptionMethod = $module.ResolveMethod($MetadataToken)
$result = $decryptionMethod.Invoke($null,80)
Write-Host $result
Con este resultado:
Código:
Excepción al llamar a "LoadFrom" con los argumentos "1": "No se puede cargar el archivo o ensamblado 'file:///C:\...file.DumpedMethods-cleaned.exe' ni una de sus dependencias. Se esperaba que el módulo tuviera un manifiesto de ensamblado."
En línea: 3 Carácter: 46
+ $asm = [System.Reflection.Assembly]::LoadFrom <<<< ($path)
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException
 
No se puede llamar a un método en una expresión con valor NULL.
En línea: 4 Carácter: 26
+ $module = $asm.GetModules <<<< ()[0]
    + CategoryInfo          : InvalidOperation: (GetModules:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull
 
No se puede llamar a un método en una expresión con valor NULL.
En línea: 5 Carácter: 42
+ $decryptionMethod = $module.ResolveMethod <<<< ($MetadataToken)
    + CategoryInfo          : InvalidOperation: (ResolveMethod:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull
 
No se puede llamar a un método en una expresión con valor NULL.
En línea: 6 Carácter: 35
+ $result = $decryptionMethod.Invoke <<<< ($null,80)
    + CategoryInfo          : InvalidOperation: (Invoke:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull
 
¿Alguien puede ayudarme? please.
Ya no sé qué más probar y estoy muy perdido en .NET.
6  Programación / Ingeniería Inversa / Añadir entrada en la iat en: 23 Marzo 2017, 16:50 pm
Hola amigos, se que para reparar la iat se usa importrec pero el caso es que solo necesito añadir una sola dirección que no está en ella y me gustaría saber el procedimiento para añadir una entrada sin necesidad de crear una nueva sección ni tener que usar otra zona de memoria como se podría hacer con importrec. ¿es muy complejo añadir a mano una entrada? ¿o se sale de madre? ¿algún tutorial que lo explique?
7  Sistemas Operativos / Windows / Problemas con KMS Auto Net y Office pro plus 2016 en: 3 Marzo 2017, 22:45 pm
Hola amigos, he instalado el Office professional plus 2016 en windows 10 home y luego he usado el último KMS Auto Net para activarlo y aparentemente todo va bien pero al ejecutar cualquier producto de Office me sale la pantalla donde me pregunta si quiero probarlo, comprarlo o activarlo. Si cierro esa ventana y me voy en Office a Cuentas veo que pone que el producto está activado pero me sale siempre la ventana al abrirlo. ¿Alguien sabe que puede estar pasando?
8  Programación / Ingeniería Inversa / Aplicación similar a cheat engine en: 14 Octubre 2016, 07:49 am
Hola amigos, hace tiempo usaba una aplicación a la cual le indicaba un proceso y me permitía ver lo que tenia en memoria en una dirección determinada y poder modificar lo pero no era cheat engine, era algo de Memory process o algo así.  ¿alguien sabría decirme y a ser posible pasármelo?
9  Programación / Ingeniería Inversa / Funcionamiento Anti HBP y Anti Anti HBP en: 14 Octubre 2016, 07:44 am
Hola amigos, estoy liado con un código que empecé hace mucho y que guan de dio le dio un gran empujón e hizo una labor increíble. Ahora estoy intentando implementarle más cosillas anti anti debugger y estoy liado con el anti hardware breakpoint y me gustaría saber como funciona y que se hace para resolverlo. Si tenéis información, docs, ... preferiblemente en español porque no me llevo nada bien con el inglés y estas cosas suelen ser muy técnicas y los traductores hacen tonterías jejeje. Gracias por adelantado.
10  Programación / Ingeniería Inversa / Obtener puntero a un objeto de una victima en: 25 Diciembre 2014, 22:26 pm
Pues esa es la idea pero no se si será imposible porque de momento no doy con la tecla.
Lo que quiero es implementar cosas en una dll para inyectarla a una aplicacion de un tercero la cual no hace esas cosas y luego inyecto codigo a la aplicacion para que cargue mi dll y ejecute una funcion que hay en ella. El problema es que para que funcione mi funcion de la dll necesito pasarle el puntero de un objeto de dicha aplicacion pero no se como conseguir esa direccion.
En una aplicacion de prueba que he hecho hago esto:
Código:
DWORD *dir = (DWORD*)AddFlow1; //0x47FF20
Funcion(dir);//Ejecutamos la funcion de la dll
pues lo que necesito conseguir en la aplicacion del tercero es el valor de ese objeto pero no se como conseguir ese valor ya que como mucho sabria obtener el handle a ese objeto pero nada mas.
¿Alguien podria ayudarme?
Páginas: [1] 2 3
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines