People often ask me "How did you learn how to hack?" The answer: by reading. This page is a collection of the blog posts and other articles that I have accumulated over the years of my journey. Enjoy!
vmware-rawdiskCreator handles the creation of Virtual Machine Disks (VMDK) descriptors and is a setuid binary to root. They decided to review this binary for privilege escalation bugs.<USER_DEFINED>-pt.vmdk and <USER_DEFINED>.vmdk file. These are created within a temporary directory underneath the TMPDIR environment variable. When writing to this directory, it checks the ownership before writing. O_NOFOLLOW but the temporary ones did not. The files are created with root permissions, which is a powerful primitive. The goal is to create a symlimk to /etc/ssh/sshd_config.d with a user controlled file that ends in pt.vmdk.open() will use later. To make the race window bigger, they had to pad the path to include large amounts of folders and symlinks. They also added CPU pressure and the SIGSTOP to hit particular race window points.sshd_config.d didn't do this same filtering. In the SSH config, they configured SSH to log in as the root user and to execute an attacker's bash script.