Hands-on: Exploit RISC-V CPU using Return-Oriented Programming
In a previous article, I’ve described a step-by-step Return-Oriented Programming (ROP) attack on RISC-V CPU architecture from a theoretical point of view. In this one, I will present a practical attack on a RISC-V CPU deployed on an FPGA. At the end of this article, you will know: * how
Reverse Debugging and other stories
Debugging can be very hard A bug is an undesired state that makes our system behave in a wrong manner. The symptom can be a crash, a wrong result, an unintended operation, etc. In most cases, the bugs are discovered based on symptoms. However, to solve them we have to
Return oriented programming on RISC-V - Part 1
There is a wide spread tendency nowadays to offload computation tasks from CPU to hardware dedicated units that offer better performance in terms of execution time and performance/watt, compared to generic processors. This approach involves the design of new hardware components, in silicon, that outperform the CPUs in tasks
How to generate strong passwords using music theory
I am passionate about music and, in one night, I came up with an idea about how to generate strong passwords that are relatively easy to remember using music theory. In this article I am going to explain the foundations of this method, but firstly, a little background about passwords.