Introducción a la Organización del Ordenador Usando Ensamblador con un Raspberry Pi

[Introduction to Computer OrganizationARM Assembly Language Using the Raspberry Pi] (http://bob.cs.sonoma.edu/IntroCompOrg-RPi/frontmatter-1.html) es un libro electrónico y gratuito que nos enseña cómo funciona el hardware, a bajo nivel, de un ordenador desde el punto de vista del programador. Para ello, se basa en uno de nuestros “juguetes” favoritos: Raspberry Pi, con Raspbian y usando lenguaje ensamblador para la arquitectura de la CPU de dicho dispositivo: ARM. El objetivo del libro es que el lector llegue a entender como funciona un ordenador desde el nivel más bajo.
Leer más

Tutorial sobre ensamblador para ARM

Mientras la arquitectura x86/x64 es la reina del microprocesador para ordenadores personales, ARM la es para dispositivos móviles y de bajo consumo. El entender el sistema a bajo nivel no es quizás uno de los requisitos para un programador web, pero sí lo es para escritores de exploits, o conducir tareas de ingeniería inversa. En este caso, tener un buen control y entendimiento del lenguaje ensamblador es esencial. En Cyberhades ya hemos publicado varias entradas relacionadas con el aprendizaje y conocimiento sobre la arquitectura ARM.
Leer más

Emulador visual para aprender ARM

ARM es quizás, gracias a los dispositivos móviles y el famoso IoT, la arquitectura de procesadores más usada. Incluso Linus Torvalds augura que 2016 será el año de los portátiles con ARM. Por ello para cualquiera que requiera o simplemente desee tener conocimiento a bajo nivel de los sistemas, es esencial conocer el funcionamiento de ARM. Para ayudarnos con esta tarea, toda herramienta o ayuda es siempre bienvenida. Aquí es dónde VisUALviene de perlas.
Leer más

Ejercicios de ingeniería inversa de arquitectura ARM

Ya hemos publicadoalguna vez algún proyecto para la práctica de explotación de software compilado para arquitectura ARM. En esta caso, la entrada es motivo de otro pequeño proyectosobre la ingeniería inversa de aplicaciones compiladas en dicha arquitectura. Son ejemplos de (código fuente en C, más decompilación en ensablador del mismo) patrones de uso común en cualquier aplicación, como por ejemplo son las arraysde cadenas o listas enlazadas. Con estos ejemplos, podemos el código generado por el compilador y así familiarizarnos con dichos patrones, de forma que cuando tengamos que hacer ingeniería inversa a alguna aplicación ARM, podamos identificar de inmediato la estructura de datos usada entre, otras cosas.
Leer más

Explotando la corrupción de memoria en arquitectura ARM

Como ya he dicho muchas otras veces, la mejor forma de aprender es practicando (…y enseñando). Explotación de vulnerabilidades en general en arquitecturas x86, son bien conocidas y hay documentación por doquier, de forma gratuita online y en libros, pero cuando nos enfrentamos a arquitecturas ARM, la documentación ya no es tan abundante. Con el boom de la tecnología móvil y el famoso Internet of things (IoT), la arquitectura ARM está en nuestro día a día y posiblemente interactuemos con ella mucho más de lo que nos imaginemos.
Leer más

Introducción a la arquitectura y programación sobre ARM

Cada vez son más los dispositivos que salen al mercado con procesadores ARM. No sólo teléfonos móviles y tabletas, sino dispositivos embebidos y pequeños como Raspberry Pi, Beaglebone, etc también incorporan dicha arquitectura. Si estás interesado en aprender más sobre ARM, este tutorial está dividido en dos partes: Introduction to ARMy Efficient C for ARM. El índice de la primera parte: Introduction to ARM, es el siguiente:
Leer más

Emulador por hardware para juegos, consolas y ordenadores retro FPGA Arcade Replay

Se llama FPGA Arcade Replay y se puede configurar para emular videojuegos clásicos (y consolas como Colecovision, Odyssey 2etc) además del hardware de ordenadores comoAtari ST y Amiga. De momento se han probado que funcionan todos los juegos que tienen en su site FPGA Arcade así como emulación del core de un Atari ST y otro para Amiga (MiniMig) pero en breve estarán disponibles otras emulaciones comoBBC Micro, Commodore 64 y otros.
Leer más

Ordenador completo ARM del tamaño de una memoria DIMM de portátil

Exactamente del tamañoSO-DIMM(módulo RAM para portátiles), es un PC de 68x26mmcuyo microprocesador es el mismo que da potencia al iPhone, un ARM de 800 MHZ Cortex A8. TRITON TX51 tendrá soporte para Windows CE 6.0y Linux 2.6y llevará un kit de desarrollo llamado StarterKit-5con 128MB de RAMde serie, USB y ethernet, que a su vez sirve de placa de entrada y salida. Y lo mejor, el precio,150€.Más información en MuyComputer
Leer más