Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: retr02332 en 19 Enero 2020, 06:03 am



Título: c vs c ++ para ingeniería inversa o crackeo
Publicado por: retr02332 en 19 Enero 2020, 06:03 am
He buscado mucho en Internet y veo que se recomienda encarecidamente c para esta tarea, pensé que era mejor c ++ por el hecho de incluir el POO.

También he leído que estos dos son ciertamente compatibles, pero no sé en qué ni hasta que medida. Ojalá puedan guiarme un poco con esto, estoy algo confundido.


Título: Re: c vs c ++ para ingeniería inversa o crackeo
Publicado por: @XSStringManolo en 19 Enero 2020, 13:49 pm
He buscado mucho en Internet y veo que se recomienda encarecidamente c para esta tarea, pensé que era mejor c ++ por el hecho de incluir el POO.

También he leído que estos dos son ciertamente compatibles, pero no sé en qué ni hasta que medida. Ojalá puedan guiarme un poco con esto, estoy algo confundido.
Ambos son necesarios. A parte hay mucho código open source escrito en C++.
Son compatibles en el sentido que un compilador C++ también compila C. Esto significa que un programador tranquilamente puede escribir 1000 instrucciones en C y 2 en C++ y viceversa.


Título: Re: c vs c ++ para ingeniería inversa o crackeo
Publicado por: ThunderCls en 22 Enero 2020, 21:22 pm
Respondiendo tu pregunta a nivel basico, si lo que deseas es aprender a analizar binarios (OJO...codigo fuente compilado para una plataforma especifica), la respuesta es que no necesitas conocimientos previos de C o C++. La ingenieria inversa es un tema sumamente amplio y debes saber en lo que te quieres enfocar. Puedes dedicarte a analizar firmwares, ejecutables, etc. En cada una de esas categorias tienes otras subcategorias (tipo de arquitectura de binario, lenguaje utilizado, compilado/interpretado, etc) y asi continua. Luego siguiendo con mi afirmacion inicial, para iniciarte en el analisis de ejecutables solo necesitas de un basico a medio entendimiento de lenguaje ensamblador y un conocimiento elemental de las APIs de windows, su uso y funcionamiento (si es que usaras este sistema operativo) o lo mismo para Unix, Android, OSX o cualquier otra plataforma donde trabajaras. Luego dependiendo de la arquitectura que desees analizar deberas enfocarte en ella (ARM, x86, x64, etc), el set de instrucciones de cada uno mas su sintaxis para cada caso (Intel, AT&T, etc). Con esto tendrias lo necesario para empezar un nivel 0 facilmente, aunque como dije al principio, todo depende de tu enfoque y lo que desees abordar.

Luego modificando tu pregunta un poco, seria bueno conocer C/C++ para realizar ingenieria inversa? Hombre, todo lo que puedas aprender nunca esta de mas en algun momento seguro lo necesitaras y aun mas, si deseas pasar de nivel 0 a niveles mas intermedios o avanzados tarde o temprano es un conocimiento muy valioso. Te ayudara a entender muchos conceptos y abrira tu mente en temas que quizas ahora consideres demasiado obscuros como para pensar en ellos.

Suerte

PD: Mis recomendaciones para iniciarte (elimina el espacio)
1- http://ricardonarvaja. info/WEB/INTRODUCCION%20AL%20CRACKING%20CON%20OLLYDBG%20DESDE%20CERO/
2- http://ricardonarvaja. info/WEB/INTRODUCCION%20AL%20REVERSING%20CON%20IDA%20PRO%20DESDE%20CERO/
3- http://ricardonarvaja. info/WEB/C%20Y%20REVERSING/


Título: Re: c vs c ++ para ingeniería inversa o crackeo
Publicado por: apuromafo CLS en 23 Enero 2020, 03:20 am
+1 Thunder, claro y preciso, por cierto los links serian asi:

PD: Mis recomendaciones para iniciarte  como links :
1- http://ricardonarvaja.info.info/WEB/INTRODUCCION%20AL%20CRACKING%20CON%20OLLYDBG%20DESDE%20CERO/
2- http://ricardonarvaja.info.info/WEB/INTRODUCCION%20AL%20REVERSING%20CON%20IDA%20PRO%20DESDE%20CERO/
3- http://ricardonarvaja.info.info/WEB/C%20Y%20REVERSING/


Título: Re: c vs c ++ para ingeniería inversa o crackeo
Publicado por: papelito en 8 Febrero 2020, 03:45 am
hola, yo también estoy empezando en la ingeniería inversa y también tuve la misma duda, cuando abría un crackme en x32dbg no entendía muy bien como funcionaba una función y como funcionaba los manejadores, etc, ahora yo estoy aprendiendo c++  y también estoy creando ventanas con apis de Windows y ya entiendo mucho mejor como funcionan y se aclaran muchas dudas.
Yo busco crackear software y el curso de ida pro creo que es mas exploit que crackear software pero yo igual voy a leerlo.
Es mi pequeña experiencia en el cracking, ojalá podamos ayudarnos con dudas en el cracking.
saludos  ;D