Hola
Recuerdo que hace algún tiempo, leyendo documentación y cosas por el estilo, leí que C++ era el mejor y mas usado lenguaje para crear malware, entonces, me puse a pensar:
¿Será esto cierto?
¿Es realmente C++ tan útil para crear malware?
Pero, lo que mas me dio intriga, fue que yo he visto malware escrito en ASM y C, y estos dos últimos lenguajes también son útiles a la hora de crear/inspeccionar malware;
Entonces, me surgió una duda final:
¿Que es mejor si hablamos de malware, C++, C o ASM?
Y bueno, esa es mi pregunta, me interesa bastante saber que piensan :rolleyes:
Saludos.
Realmente C++ incluye C además de ASM, es decir, puedes hacer uso de la sintaxis de C, además de las librerías. Por lo tanto C++ además de aportar el estándar y la orientacón a objetos, entre otros, también permite incluir código C que necesite "estar ahí" dado la complejidad del acceso e interacción con el sistema.
Si a esto le sumamos que C/C++ puede incluir secciones escritas en ASM, podemos decir que C++ aparte de agilizar el diseño de cualquier proyecto considerablemente, nos otorga una gran funcionalidad para el bajo nivel.
No olvidemos que C++ trata de forma adecuada: las excepciones, instrucciones atómicas, optimizaciones en compile time (constexpr, volatile), sincronizaciones, paralelismo y mucho más, es completísimo.
Saludos.
Cita de: kub0x en 28 Diciembre 2020, 16:36 PM
Realmente C++ incluye C además de ASM, es decir, puedes hacer uso de la sintaxis de C, además de las librerías. Por lo tanto C++ además de aportar el estándar y la orientacón a objetos, entre otros, también permite incluir código C que necesite "estar ahí" dado la complejidad del acceso e interacción con el sistema.
Si a esto le sumamos que C/C++ puede incluir secciones escritas en ASM, podemos decir que C++ aparte de agilizar el diseño de cualquier proyecto considerablemente, nos otorga una gran funcionalidad para el bajo nivel.
No olvidemos que C++ trata de forma adecuada: las excepciones, instrucciones atómicas, optimizaciones en compile time (constexpr, volatile), sincronizaciones, paralelismo y mucho más, es completísimo.
Saludos.
Wow, no sabía eso sobre C++, y eso de que pueden haber secciones escritas en ASM realmente suena genial :rolleyes: .
Entonces, ¿valdría mucho mas la pena estudiar e intentar dominar C++ que C?
Gracias y saludos.
Cita de: Nk en 28 Diciembre 2020, 16:43 PM
Wow, no sabía eso sobre C++, y eso de que pueden haber secciones escritas en ASM realmente suena genial :rolleyes: .
La verdád que sí. Pero en C puedes coger los opcodes de las instrucciones ASM, ponerlas como shellcode y ejecutarlas. Al final, ambos lenguajes se llevan muy bien.
Cita de: Nk en 28 Diciembre 2020, 16:43 PM
Entonces, ¿valdría mucho mas la pena estudiar e intentar dominar C++ que C?
No olvides que cualquier libro que sigas de C++ te explicará la orientación a objetos y conceptos como herencia, herencia virtual, métodos virtuales, polimorfismo, la API del estándar que es inmensa y un largo etc.
Como tu interés es desarrollar malware, si te fijas el malware actual escrito en C++ sigue un diseño de orientación a objetos para hacer eficiente la escritura del código. Siempre puedes obviar C++ e irte por C si eres más purista porque un diseño modulado por ficheros fuente te basta.
Si tienes muuuucho tiempo toma C++ y lo disfrutarás, pues integra como ya dije todo lo que un programador necesita. Pero es más complejo que aprender C. ¿La sintaxis es la misma? Si y no... pero te puedo decir que si sabes C++ escribes C de forma sencilla si te lo piden. En cambio si sólo sabes C y necesitas codear en C++ suerte majo ;-) ;-)
Saludos.