All that glitters is not cryptomining, but almost

There is a new trend in the world of malware, called cryptojacking. In many wars they used enemy prisoners to mine minerals, this would be similar to this case but transferred to the 21st century. It consists in using the

Starting code debugging (II) – Breakpoints

One of the most useful functions provided by debuggers is setting breakpoints in certain lines of code to stop execution at those points and examine the status of the program. Breakpoints can be both hardware and software. GDB can set

A simple click can generate a logic explosion

Not all malware executes its malicious payload instantly as soon as they are downloaded and executed for the first time. Many times, these are kept in the shadow and are triggered only when a certain situation occurs (something like an

Starting code debugging (I)

Errors are a collateral (and undesired) phenomenon that occur when writing code. Some, like syntactic errors, are easy to detect and correct, since normally the compiler,  interpreter or  IDE itself will warn us that we have some open parentheses for

Everything started with the USB of that hacker

When someone finds out that your computer is infected, a question automatically pops up in your mind, how has this happened? First you think about the recent files downloaded / installed, then in the visited pages, and if no answer

Fatal optimizations

Compilers transform the code we write to make it more efficient, however, there are times when these optimizations made by the compiler can cause security problems. A clear example of this is the dead code elimination, an optimization that aims