Assembly
Throughout my assembly series we’ll be examining the MIPS ISA with two goals in mind. First, by understanding MIPS assembly, we’ll understand what the hardware needs to support. Second, once we understand what we need to support, we can determine how to build hardware for the MIPS ISA.
-

ASLR, bypass techniques, and circumvention impacts
Address space layout randomization (ASLR) randomizes memory addresses used by system and application processes.
-

Compilation Phases Explained – Analysis and Synthesis
Compilers work in phases to translate source code into machine code or an intermediate representation.
-

How to use ROP to bypass security mechanisms
Learn how to bypass and circumvent W^X, ASLR, and stack canaries using return-oriented programming (ROP) by controlling execution flow!
-

MIPS Assembly: Data, Registers, and Mimicking Scope
Explore the fundamentals of MIPS assembly data and registers, including their types, uses, and functionalities. Plus, how to mimic scope!
-

Computer Memory and Performance
Computer memory is how computers access and store information, and it is where programs live and run. Memory also effects performance.
-

Instruction Set Architectures and Performance
Instruction Set Architectures (ISA) or “computer architectures” is a common interface and boundary between software and hardware.
-

Converting High Level Languages to Machine Language
High level languages (HLLs) are designed for humans. However, computers can’t understand HLLs, so it translates them into machine language.
-

Understanding Computer Architecture and Development Objectives
Understanding computer architecture can help developers disassemble code to determine poor coding practices which introduce vulnerabilities.