Hola a todos tngo una duda:
Hay alguna forma de saber sin tener qu probar tdas las combinacines de saber en el metodo hexadecimal al cambiar el offset cual seria compatible para no romperlo.
Gracias...
si hayHay alguna forma de saber sin tener qu probar tdas las combinacines de saber en el metodo hexadecimal al cambiar el offset cual seria compatible para no romperlo
por ejemplo si tenemos un offset con E8 lo cambias a E7 o E9. solo le sumas 1 o le haces menos 1
por ejemplo si un offset tiene la letra X lo cambias a x , otro ejemplo secar a SECAR
saludos
Es como dice el administrador. !Lástima que algunos av ya se hayan avivado, entre ellos, el Nod 32, recuerdo que hace 1 mes, le cambiaba a minúscula la letra "C" de por ejemplo Documents and setting y lo quitaba. Lo mismo con el Mc Affe, cambiaba alguna "T" imprenta por minúscula y adiós Mc Affe, pero ahora todo cambió, se ve que se cansaron de robarles a los clientes cobrandoles un producto tan caro y tan malo. También quitaba la firma del Nod 32 usando el Avfucker, pero ayora ya es cosa perimida.


He estado un poco apartado y no habia podido responder antes.
Muchas gracias.
Muchas gracias.
Lo que dice m4rtyr suele funcionar a veces... pero piensa lo siguiente:
en realidad con el metodo hex lo que estas haciendo es cambiar el código de una instrucción por otra que no rompa el flujo del programa. con el editor hexadecimal es relativamente fácil ver qué magnitud tiene el cambio que hiciste, viendo su representacion es ASCII.
por ejemplo si ves un caracter ASCII "A" su representación es única porque es un carácter imprimible (y si cambias un bit cambias la letra), pero si ves un caracter 00 o 01 en hexadecimal verás que son iguales (igual que todos los caracteres no imprimibles) y en su representación ASCII verás "." el cuál puedes cambiar por el "." imprimible que es 2E en hexadecimal. Pero cudiado, no todos los caracteres "no imprimibles" se pueden cambiar, puesto que hay retornos de carro o saltos de línea y su código binario es obviamente distinto (es cuestión de tener un poco de suerte).
también puedes aprovechar si hay alguna cadena ASCII que distingas dentro tu firma (con algunos AVs esto no pasa).. como por ejemplo los nombres de alguna .dll o algo así... la cuál podrás cambiar las mayúsculas por las minúsculas y al revés.. y ya habrías modificado la firma.
Un saludo. R-007
en realidad con el metodo hex lo que estas haciendo es cambiar el código de una instrucción por otra que no rompa el flujo del programa. con el editor hexadecimal es relativamente fácil ver qué magnitud tiene el cambio que hiciste, viendo su representacion es ASCII.
por ejemplo si ves un caracter ASCII "A" su representación es única porque es un carácter imprimible (y si cambias un bit cambias la letra), pero si ves un caracter 00 o 01 en hexadecimal verás que son iguales (igual que todos los caracteres no imprimibles) y en su representación ASCII verás "." el cuál puedes cambiar por el "." imprimible que es 2E en hexadecimal. Pero cudiado, no todos los caracteres "no imprimibles" se pueden cambiar, puesto que hay retornos de carro o saltos de línea y su código binario es obviamente distinto (es cuestión de tener un poco de suerte).
también puedes aprovechar si hay alguna cadena ASCII que distingas dentro tu firma (con algunos AVs esto no pasa).. como por ejemplo los nombres de alguna .dll o algo así... la cuál podrás cambiar las mayúsculas por las minúsculas y al revés.. y ya habrías modificado la firma.
Un saludo. R-007