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


 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)  (Leído 3,148 veces)
jamonyqueso

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
« en: 5 Noviembre 2007, 04:32 »

Hola

Llevo unos dias que no llego a ninguna conclusion y una es esta:

Duda 1:

Hice un programa en Linux y es este

#include <iostream>
int main ()
{
printf " hola nena";
}

Asi de simple  ;D

Y la duda que se me plantea es esta:

Ya compilado con "cc codigo.c"lo abro con Khexedit (de linux) y bien me salen cosas incomprensibles en hex y en ASCII... bien y como explicarlo ummmm...aver żHay alguna manera de entender eso?No digo la parte de Hex si no la ascii,la mayoria son simples puntos y caracteres tipo []  y tengo entendido que el ensamblador y el codigo hexadecimal es equivalente como jne=75 asi que se deberia entender...y creo que no esta cifrado,vamos,no creo que el compilador tenga para encriptarse solo.

y además hay muchos números hexadecimales para tan poca cosa

Y si se puede leer en hex żdonde encuentro la equivalencias?


Duda 2:

Tengo entendido que la ps1 usa mapas de bits de 256*256 a 16 bits,creo que era asi
Y hay un programa que se llama psmplay que sirve para extraer vídeos,imágenes,mapas de bits y mas... y tenia la idea que desde una imagen recorriera desde el primer bit hasta el ultimo y extrajera los BMP pero la duda es la mayoría de los juegos están metidos en otros archivos mas grandes (como FF8 o el FF9) y suponía que los archivos BMP empiezan desde unas marcas(o unos códigos de iniciación,para saber si es realmente BMP,o JPG tamańo y tal y que acaba en otros)le hago ingieneria inversa a una foto  y mi sorpresa es que impieza por varios "00" en hexadecimal ¬¬ con lo cual mi teoria se fue al traste,aparte de que aparecia la marca de la cámara de photos ¬¬ ...żcomo identifico codigo de BMP?

Duda 3

żse puede programar (y que se entienda) en hexadecimal puro?
Yo por lo menos no encuentro ningún tutorial. :-[

Duda 4

Al editar textos ascii en hexadecimal y si te quedas sin espacio para escribir żse puede agregar espacios? A mi se me come trozos de código(sobreescribe)....y no hay manera :huh:

Duda 5

żpor que en los binarios hay tantos 00? y seguidos... :-\

Duda 6

Hay alguna manera de abrir un archivo en plan .RAR y ver sus archivos internos? como los bmp que están dentro de otros archivos grandes como decia antes.

Duda 7

żpor que 75 o jne,por ejemplo ,al ejecutarse eso,funciona asi? żdonde esta programado?Es una duda que siempre quise saber. :rolleyes:


Gracias por contestar
En línea

Ferсhu


Desconectado Desconectado

Mensajes: 1.215

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
« Respuesta #1 en: 5 Noviembre 2007, 20:46 »

Duda 1:
Con olly

Duda 2:
el fotmato bmp empieza con "BM" y una cabecera, osea buscando eso. pero nose si usa bmp, yo imagino q no.

Duda 3:
Nop

Duda 4:
si se puede agregar espacio, pero desfasaria las direcciones, asi q el programa no funcionaria.

Duda 5:
q se yo, depende cada uno.

Duda 6:
los archivos estan codificados/comprimidos. por algo son rar no??
 
Duda 7:
por q es una instruccion de asm q cumple ciertas caracteristicas. Es como preguntar por q la instruccion "n++" aumenta n. jaja

Ademas te digo q lo mejor para sacarte las dudas es buscar y leer, no solo solucionas las dudas sino q evitas tener otras. Por q estoy seguro q ahora vas a tener una pregunta para cada duda q te conteste. y si hicieramos asi, tardarias demasiado en aprender, asi q lo mejor es buscar e informarte acerca de todo eso. Por suerte existe google.

Saludos!!
En línea

x4uth

Desconectado Desconectado

Mensajes: 88


Ver Perfil
Re: Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
« Respuesta #2 en: 5 Noviembre 2007, 21:41 »

Hola

Llevo unos dias que no llego a ninguna conclusion y una es esta:

Duda 1:

Hice un programa en Linux y es este

#include <iostream>
int main ()
{
printf " hola nena";
}

Asi de simple  ;D

Y la duda que se me plantea es esta:

Ya compilado con "cc codigo.c"lo abro con Khexedit (de linux) y bien me salen cosas incomprensibles en hex y en ASCII... bien y como explicarlo ummmm...aver żHay alguna manera de entender eso?No digo la parte de Hex si no la ascii,la mayoria son simples puntos y caracteres tipo []  y tengo entendido que el ensamblador y el codigo hexadecimal es equivalente como jne=75 asi que se deberia entender...y creo que no esta cifrado,vamos,no creo que el compilador tenga para encriptarse solo.

y además hay muchos números hexadecimales para tan poca cosa

Y si se puede leer en hex żdonde encuentro la equivalencias?

como dice ferdu lo recomendado para ver el programa que hcisite es olly y no un editor de hex, aun asi no esperes encontrar
PUSH "hola nena"
CALL printf
que vendria siendo tu programa en asm, esto sera solo una parte, para q el programa se ejecute adecuadamente en tu sistema operativo tiene que realizar una serie de operaciones que las incluye el compilador por su parte, por ejemplo poner lo q haces ahi en asm llebaria unos 20 bytes como maximo, en cambio seguro q tu programa compilado tiene minimo 20 000 bytes eso si no hisiste muchos includes... y si usas funciones como printf directamente de una libreria

Duda 2:

Tengo entendido que la ps1 usa mapas de bits de 256*256 a 16 bits,creo que era asi
Y hay un programa que se llama psmplay que sirve para extraer vídeos,imágenes,mapas de bits y mas... y tenia la idea que desde una imagen recorriera desde el primer bit hasta el ultimo y extrajera los BMP pero la duda es la mayoría de los juegos están metidos en otros archivos mas grandes (como FF8 o el FF9) y suponía que los archivos BMP empiezan desde unas marcas(o unos códigos de iniciación,para saber si es realmente BMP,o JPG tamańo y tal y que acaba en otros)le hago ingieneria inversa a una foto  y mi sorpresa es que impieza por varios "00" en hexadecimal ¬¬ con lo cual mi teoria se fue al traste,aparte de que aparecia la marca de la cámara de photos ¬¬ ...żcomo identifico codigo de BMP?
normalmente los empacadores no meten los bytes a pelo, sino que remplazan unos bytes por otros para ahorrar espacio (esto sin hablar de los q encriptan), eso lo hacen mediante algoritmos mas o menos complejos.
Duda 3

żse puede programar (y que se entienda) en hexadecimal puro?
Yo por lo menos no encuentro ningún tutorial. :-[
por poder se puede, de hecho los primeros programas se hicieron en binario... q lo entiendas y/o y q tengas el tiempo de hacerlo, eso ya es cosa tuya....


Duda 4

Al editar textos ascii en hexadecimal y si te quedas sin espacio para escribir żse puede agregar espacios? A mi se me come trozos de código(sobreescribe)....y no hay manera :huh:
por poder puedes , pero como ese texto o algo q este  a continuacion sea usado por otro programa o por el mismo si estas editando un exe ya te lo cargaste


Duda 5

żpor que en los binarios hay tantos 00? y seguidos... :-\
depende del binario q sea, pero es logico q el 0 sea usando de relleno en estructuras de datos


Duda 6

Hay alguna manera de abrir un archivo en plan .RAR y ver sus archivos internos? como los bmp que están dentro de otros archivos grandes como decia antes.
si tiene pass no hay manera de ver nada, si no tiene pass puedes abrirlo y ver su estructura , suelen estar organizados en bloques, cada bloque tiene el nombre del archivo y otros bloques q son partes del archivo comprimidos, pero amos que sin un algoritmo q descomprima no te sirve de nada

Duda 7

żpor que 75 o jne,por ejemplo ,al ejecutarse eso,funciona asi? żdonde esta programado?Es una duda que siempre quise saber. :rolleyes:
la instruccion JNE y todas las de ensamblador se ejecutan directamente en el CPU, el cpu esta formado por puertas logicas (AND, OR, NOT) que estan formadas basicamente por transistores (silicio dopado). yo no diria que esta programado, mas bien esta diseńado para que su circuito relalize las operaciones nesesarias en cada cadena de niveles bajo y alto (ceros y unos)  que le llegan
En línea

jamonyqueso

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
« Respuesta #3 en: 6 Noviembre 2007, 23:38 »

La Duda 6

Hay alguna manera de abrir un archivo en plan .RAR y ver sus archivos internos? como los bmp que están dentro de otros archivos grandes como decia antes.

Me exprese mal :(

Ya se que se puede abrir con winrar .Lo que me referia es si en archivos NO comprimidos pero que estan juntos y no codificados.Se podrian "abrir ese archivo" en plan como una carpeta(como cuando abres winrar ,que se su estructura de carpetas(si las hay))

En línea

Hendrix
In The Kernel Land
Colaborador
***
Desconectado Desconectado

Mensajes: 2.276



Ver Perfil WWW
Re: Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
« Respuesta #4 en: 7 Noviembre 2007, 00:14 »

Cita de: jamonyqueso link=topic=187038.msg888819#msg888819
Duda 5

żpor que en los binarios hay tantos 00? y seguidos... :-\
[/quote

Eso depende de la alineación del archivo....

Duda 6

Hay alguna manera de abrir un archivo en plan .RAR y ver sus archivos internos? como los bmp que están dentro de otros archivos grandes como decia antes.

Si, en el WinZip habia un fallo que al modificar el nomber del archivo se ejecutaba nada mas abrir el Zip, evidentemente esto esta parcheado actualmente  :)

En línea

"Todos los días perdemos una docena de genios en el anonimato. Y se van. Y nadie sabe de ellos, de su historia, de su peripecia, de lo que han hecho, de sus angustias, de sus alegrías. Pero al menos una docena de genios se van todos los días sin que sepamos de ellos". - Juan Antonio Cebrián
Ferсhu


Desconectado Desconectado

Mensajes: 1.215

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
« Respuesta #5 en: 7 Noviembre 2007, 01:12 »

Citar
La Duda 6

Hay alguna manera de abrir un archivo en plan .RAR y ver sus archivos internos? como los bmp que están dentro de otros archivos grandes como decia antes.

Me exprese mal sad

Ya se que se puede abrir con winrar .Lo que me referia es si en archivos NO comprimidos pero que estan juntos y no codificados.Se podrian "abrir ese archivo" en plan como una carpeta(como cuando abres winrar ,que se su estructura de carpetas(si las hay))

creo q entender lo q keres decir.  Si es lo q yo pienso, tenes q separar los archivos con algun editor hexa y guardarlos con otro nombre x separado.
En línea

jamonyqueso

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
« Respuesta #6 en: 7 Noviembre 2007, 03:54 »

Si si,lo has entendido bien

El problema es como hacerlo

Ya que no se como empiezan los archivoa y como acaban en hexadecimal...

Ya que abri una foto en BMP y aparecia al principio un porron de ceros ... y no sale el "BM" como dijo <~>FeRcHu<~>
En línea

Ferсhu


Desconectado Desconectado

Mensajes: 1.215

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: Dudas binarias o de muy muy pero de muy bajo nivel (7 dudas)
« Respuesta #7 en: 7 Noviembre 2007, 04:45 »

Mira aca te pongo un ejemplo:

Citar
00000000   42 4D 86 00 00 00 00 00  00 00 36 00 00 00 28 00   BM†.......6...(.
00000010   00 00 05 00 00 00 05 00  00 00 01 00 18 00 00 00   ................
00000020   00 00 50 00 00 00 00 00  00 00 00 00 00 00 00 00   ..P.............
00000030   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00   ................
00000040   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00   ................
00000050   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00   ................
00000060   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00   ................
00000070   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00   ................
00000080   00 00 00 00 00 00 42 4D  86 00 00 00 00 00 00 00   ......BM†.......
00000090   36 00 00 00 28 00 00 00  05 00 00 00 05 00 00 00   6...(...........
000000A0   01 00 18 00 00 00 00 00  50 00 00 00 00 00 00 00   ........P.......
000000B0   00 00 00 00 00 00 00 00  00 00 00 00 FF FF FF FF   ............˙˙˙˙
000000C0   FF FF FF FF FF FF FF FF  FF FF FF 00 FF FF FF FF   ˙˙˙˙˙˙˙˙˙˙˙.˙˙˙˙
000000D0   FF FF FF FF FF FF FF FF  FF FF FF 00 FF FF FF FF   ˙˙˙˙˙˙˙˙˙˙˙.˙˙˙˙
000000E0    FF FF FF FF FF FF FF FF  FF FF FF 00 FF FF FF FF   ˙˙˙˙˙˙˙˙˙˙˙.˙˙˙˙
000000F0    FF FF FF FF FF FF FF FF  FF FF FF 00 FF FF FF FF   ˙˙˙˙˙˙˙˙˙˙˙.˙˙˙˙
00000100    FF FF FF FF FF FF FF FF  FF FF FF                        ˙˙˙˙˙˙˙˙˙˙˙

eso seria un archivo con 2 fotos bmp, una negra al principio y luego apenas termina una blanca.

Como saber cuando termina la foto? bueno cuando empieza la otra jaja. es la unica forma o fijarte el tamańo pero te vas a complicar.

con un editor hexadecimal copias el segundo bloke donde empieza BM en uno nuevo, lo guardas como algo.bmp y listo ya tenes la otra imagen.

Espero q sea eso lo q kerias saber.

Saludos!!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines