Installing REMnux as a Proxmox VM - Build From Scratch

For the uninitiated, REMnux is a Linux Distribution (based on Ubuntu 20.04) for reverse-engineering and analyzing malware (REM). I’ve ran into too many hurdles these past few weeks trying to install it as a Proxmox VM for me to not share how I got it working. Here we go!

Prerequisites

REMnux Install From Scratch Guide (link here)

Ubuntu 20.04 Mini ISO (link here).

Note: Using the other installers (live server, desktop, etc.) is not recommended due to the automatic updates stage of the installation - it’ll (I suspect) update 20.04 to whatever the latest LTS is during time of installation (22.04 at time of writing, which is incompatible with REMnux), and come pre-installed with packages causing dependency issues with the REMnux installer.

VM Config

image

Ubuntu Installation Process

Select Language, Region, Keyboard Layout, Hostname, Ubuntu Archive Location, HTTPS Proxy, Full Name, Username, Password, Time Zone, and System Clock to your liking. Let it Install the base system, apt, and software.

Select “No automatic updates” in the PAM configuration, Install GRUB, Let system clock to UTC, reboot the system.

Hurdle 1: No Login Prompt after Installation

I suspect the system did install correctly, there is a broken configuration somewhere that stops the login prompt from showing up.

image

After Google-ing, this is a known issue (documented here).

To resolve:
Stop the VM > start it up > press Escape during the boot up process to bring up the boot devices menu > select the drive you installed Ubuntu to > select Advanced Options for Ubuntu > Recovery Mode > root: Drop to root shell prompt > open /etc/default/grub in whatever editor tickles your fancy > remove “splash” from GRUB CMDLINE LINUX DEFAULT (before and after screenshots below) > run update-grub after saving changes to regenerate GRUB > reboot, and enjoy a login prompt.

Failing to show login prompt

Original GRUB

Edited GRUB

After GRUB Changes: A Login Shell

image

REMnux Install

Step 2s (there are two step 2s in the REMnux Install from Scratch guide)

Download and check the SHA256 hash against what’s in the REMnux guide.

rename, add execute permissions, and move the remnux cli tool.

Install script dependencies and qemu-guest-agent (i’ve already done this - hence the already installed output).

image

Initiate the REMnux Installation script. This will take a while.

Hurdle 2: Install Failed: Update returned exit code not zero

Investigating errors in /var/cache/remnux/cli/v2024.28.1/saltstack.log - Python option is not supported by venv

image

I suspect there is a dependency mismatch somewhere - setuptools 67.7.2 is installed and there is a dependency somewhere that is not compatible with it.

Attempting fix in this Github issue (here).

Regressing setuptools to 58.3.0:

Installation is successful:

1 Like

Update: I’ve built it again and the remnux installation went through without any of the dependency regressions.