Something Rotten in the State of Data Centers
This talk demonstrates multiple vulnerabilities in data center management software and hardware, including authenticated command injection, session ID prediction, and firmware integrity bypasses. The researchers analyze a DDI (DNS, DHCP, IPAM) solution and an Avocent KVM switch to identify critical flaws in authentication and update mechanisms. The presentation highlights the risks of assuming internal network components are secure and provides a methodology for exploiting these systems. The researchers successfully demonstrate full attack chains leading to root shell access on the target hardware.
Breaking Data Center Infrastructure: From Session Hijacking to Root Shells
TLDR: Researchers at Black Hat 2023 demonstrated how to compromise critical data center infrastructure by chaining vulnerabilities in DDI software and Avocent KVM switches. By exploiting weak session ID generation and improper firmware integrity checks, they achieved full remote code execution. This research highlights the dangerous assumption that internal management hardware is inherently secure and provides a roadmap for testing similar embedded devices.
Data centers are the backbone of the modern internet, yet they are often managed by a collection of legacy hardware and proprietary software that rarely sees the same level of scrutiny as a public-facing web application. When we talk about the "internal network," we often assume a level of trust that simply does not exist. The research presented at Black Hat 2023 by Jesse Chick and Kasimir Schulz pulls back the curtain on this, proving that if you can reach the management interface of a data center device, you can likely own the entire environment.
The DDI Software Vulnerability Chain
The first target was a DDI solution, which integrates DNS, DHCP, and IPAM. These systems are high-value targets because they control the network configuration of every device in the data center. The researchers identified an authenticated command injection vulnerability, but the real beauty of the research lies in how they bypassed the authentication requirement entirely.
The application generated session IDs using a custom random number generator seeded by a global variable, gSeed. This seed was initialized once at server startup using a combination of time in seconds and milliseconds. Because the seed was updated deterministically, the researchers realized that if they could guess the initial gSeed value, they could predict every past and future session ID.
To make this practical, they used Frida to hook the binary and extract the gSeed value. By spinning up their own instance of the target software, they could observe the initialization process without needing to reverse-engineer the entire codebase. Once they had the seed, they could generate valid session IDs for any user, effectively bypassing authentication. This is a classic example of OWASP A07:2021-Identification and Authentication Failures.
From Firmware Tampering to Root Access
The second target was the Avocent MPU4032DAC KVM switch. KVMs are the ultimate "god mode" devices in a data center, providing remote keyboard, video, and mouse access to servers. The researchers wanted to achieve persistent root access, and they targeted the firmware update mechanism.
The device allowed local firmware uploads through the web console. The researchers unpacked the firmware, which used an outdated SquashFS filesystem. After adding a backdoor—a simple netcat listener—they needed to bypass the firmware integrity check. The device performed a CRC32 check on the filesystem component. By using QEMU in user mode to emulate the checkImage binary, they were able to identify the exact offset where the CRC32 digest was stored in the firmware header.
They then calculated the correct CRC32 for their modified filesystem and patched the header. This resulted in CVE-2023-4285, an improper validation of integrity check value. The researchers also discovered CVE-2023-4288, which allowed for an authentication bypass via a null-byte injection in the login mechanism. By sending a username containing a null byte, the application treated the request as an anonymous local connection, granting access without a password.
Practical Implications for Pentesters
If you are performing an internal penetration test, stop ignoring the "boring" hardware in the rack. These devices are often running embedded Linux kernels that haven't been patched in years. The methodology used here is highly repeatable:
- Enumerate the attack surface: Use
nmapto find management ports. Don't just look for HTTP; look for proprietary protocols like the Avocent Secure Management Protocol (ASMP). - Extract and analyze firmware: If you can download the firmware from the vendor's site, do it. Use
binwalkto identify the filesystem and extract it. - Look for custom state machines: Any time you see a proprietary protocol, there is a custom parser. These are gold mines for memory corruption bugs like heap overflows.
- Test the update mechanism: If the device allows firmware updates, check how it validates the image. If it uses a simple checksum or CRC, you can likely bypass it.
The impact of these vulnerabilities is total. Once you have a root shell on a KVM switch, you have physical-level access to every server connected to it. You can intercept keystrokes, capture screen output, and deploy payloads to the underlying operating systems of the servers themselves.
Securing the Management Plane
Defenders need to treat management hardware with the same rigor as production servers. These devices should never be accessible from the general corporate network. Place them on a dedicated, isolated management VLAN with strict access control lists. Furthermore, ensure that firmware updates are not just possible, but mandatory. If a vendor provides a patch, the delay in deployment is a window of opportunity for an attacker.
The most critical takeaway is that internal components must uphold the same security standards as externally facing elements. Just because a device is "behind the firewall" does not mean it is secure. When you find a custom state machine or a proprietary protocol, assume it is vulnerable. The researchers in this talk didn't find these bugs because they were lucky; they found them because they looked where everyone else was too lazy to check. Start looking at the hardware in your own environment before someone else does.
Vulnerability Classes
Target Technologies
Attack Techniques
All Tags
Up Next From This Conference

A Security RISC? The State of Microarchitectural Attacks on RISC-V

REDIScovering HeadCrab: A Technical Analysis of a Novel Malware and the Mind Behind It

TsuKing: Coordinating DNS Resolvers and Queries into Potent DDoS Amplifiers
Similar Talks

Kill List: Hacking an Assassination Site on the Dark Web

Hacking Apple's USB-C Port Controller

