Solitario escribió:muy interesante,pero no entiedo,,xD
No ve visto el video completo, pero te explicare de la manera mas sencilla lo que netendi.....
1) Tenemos una API , por ejemplo
'MessageBoxA' , y queremos llamarla desde el programa....
-Como sabemos las llamadas a las APIs se realizan desde el Code del programa , pero como no tenemos el source para modificarlo
tendremos que buscarnos la vida con
Olly
2) Para Cargar APIs desde Memorio o desde la DLL , directmente usamos :
"LoadLibrary" para cragar la DLL y
"GetProcAddress" para encontrar la API y usarla.....
3) Entonces es sencillo , encontramos un lugar vacio del ejecutable paera agregar codigo , agregamosla API que queremos
usar(
'MesasegBoxA') , y la DLL que contiene dicha API(
'User32.dll') , y despues llamamos a las Otras APIs que cargan(LoadLibrary) y
buscan las funciones(
GetProc....) , para cargar 'User32.dll' y buscar la funcion
'MessageBoxA'....
4) Despues agregamos codigo en essamblador para usar la API(
'MessageBoxA') que recien cargamos....
5) En caso de que la API que cargamos ya exista(Como en el caso del Video) , la podremos sustituir por la que acabamos
de cargamos en memoria y seguira funcionando......
Un ejemplo de algo paracido pero cargando la API en memoria desde el Code :
aqui....
PD: Esta explicacion es solo de una parte del metodo , explicada de manera poco tecina y rudimentaria...
PD2 : Me Gusto mucho el metodo la verdad ,
leos_79 capo de los de antes ,
m4rtyr mago del assembler , exelente video
mis respetos para ambos.....
obey escribió:Pues si tuviese mas edad todavia pero esqe perder la virginidad con tu profesora de informatica y que ademas tenga 50....