TMZ Lair - Underground Coding

Running ELF executables from memory

7 minute read Published:

Executing ELF binary files from memory with memfd_create syscall
Something that always fascinated me was running code directly from memory. From Process Hollowing (aka RunPE) to PTRACE injection. I had some success playing around with it in C in the past, without using any of the previous mentioned methods, but unfortunately the code is lost somewhere in the forums of VXHeavens (sadly no longer online) but the code was buggy and worked only with Linux 32bit systems (I wish I knew about shm_open back then, which is sort of an alternative for the syscall we are using in this post, mainly targeting older systems where memfd_create is not available).

Lenovo Thinkpad E485 Review

5 minute read Published:

This is my honest, much needed and unbiased review of the new (budget) Lenovo Thinkpad E485 with AMD Ryzen (Raven Ridge) APU
Last year I built a PC with a AMD Ryzen 5 1600 and I was truly impressed. Then now its time for me to get a new laptop and it was only natural to look for something that had AMD in it. I am very excited for my first Thinkpad, I even starting writing the same day as I ordered the unit (which took its damn time to be delived.

Return to Crunchbang With OpenSUSE and Openbox

3 minute read Published:

Giving Crunchbang's look to your OpenSUSE Openbox installation.
I’ve been running OpenSUSE (Tumbleweed) for some years now and KDE was my Desktop Environment of choice since years ago but before that, I was a die hard user of the Crunchbang (#!) Linux distro, which featured an awesome gray Openbox desktop. The simplicity Crunchbang offered is something that I missed during the years and after I found out that the community had revived the project in the for of Crunchbangplusplus and also Bunsenlabs, I just had to try it again but this time OpenSUSE Tumbleweed was my choice, instead of the good old Debian.

Yet Another Weather Indicator

3 minute read Published:

A simple GTK weather indicator written in Go because why not.
Recently I started using Openbox as my WM again (after a long time with KDE, the nostalgia hit me). After I had everything working as I wanted to, I noticed the lack of a weather indicator in my systray. Usually, the desktop environments I have used (Gnome, KDE, Mate) have some sort of applet for this included and I really never bothered (when I was using Openbox before, I had some hacky script that would display the weather in my tint2, but I can’t find it anymore).

More fun with ELF files and GoLang - Code Caves

2 minute read Published:

Finding code caves in ELF binaries with GoLang
A code cave is a piece of code that is written to a process's memory by another program. The code can be executed by creating a remote thread within the target process. The Code cave of a code is often a reference to a section of the code’s script functions that have capacity for the injection of custom instructions. For example, if a script’s memory allows for 5 bytes and only 3 bytes are used, then the remaining 2 bytes can be used to add external code to the script.

Linux.Cephei: a Nim virus

3 minute read Published:

Simple prepender virus written in Nim
Nim is a systems and applications programming language. It has nice features such as producing dependency-free binaries, running on a huge list of operating systems and architectures and compiling to C, C++ or JavaScript. I’ve been messing with it for a while and I am very pleased with it. To be honest, Nim and Go have been my choices when I need to start a new project (goodbye Python, at least for now).