Category Operating System

Linux Kernel Module example. Rickroll prank.

NOTE: The code used to replace the user's path with the one provided is BAD, never change user's pointer content unless he/she is expecting that to happen. Don't do that at home kids I decided to explain the basics of a Linux Kernel Module with humor. I am not saying this is a good idea for April's fool, but it is quite close ;) This module shares some ideas with the post about LD_PRELOAD, but this time it is not to defend ourselves. The module will replace the open syscall for our own where it... (read more)

Using LD_PRELOAD as defense from unsecure library calls

I have seen LD_PRELOAD used in several cases. From using it to allow programs that link to a newer version of the libstdc++, to cracks for applications that hijack some calls and provide the expected result to tell the application they have a valid license. The aim of this post is to show how to find these dangerous calls in applications that you are running which you cannot fix (i.e. you do not have access to the source code). Imagine that one of these applications uses the library call strcpy,... (read more)