From Weapon to Target: Quantum Computers Paradox
This talk explores the security implications of quantum computing, specifically focusing on the vulnerability of quantum cloud infrastructure to classical attacks. The researchers demonstrate how an attacker can compromise the quantum software development kit (SDK) environment to steal API tokens or inject malicious quantum circuits into a victim's job. The presentation highlights the critical need for secure handling of credentials and isolation of quantum workloads to prevent cross-user interference and unauthorized access. The researchers provide a threat matrix and proof-of-concept attacks targeting popular quantum cloud platforms.
Quantum Cloud Infrastructure: The Next Frontier for Supply Chain Attacks
TLDR: Researchers at Black Hat 2024 demonstrated that quantum cloud platforms are vulnerable to classical supply chain and credential theft attacks. By compromising the local development environment, an attacker can steal API tokens or inject malicious circuits into a victim's quantum jobs. This research proves that quantum security is not just about post-quantum cryptography, but about securing the classical infrastructure that orchestrates these powerful machines.
Quantum computing is often discussed in the context of "Q-Day"—the theoretical moment when quantum machines render current asymmetric encryption obsolete. While that future threat is real, the immediate security reality is far more mundane and dangerous. The infrastructure used to access these quantum processing units (QPUs) is built on standard, classical web technologies. If you are a researcher or developer using these platforms, your biggest risk isn't a quantum-enabled adversary; it is a standard, classical attacker compromising your local machine or your CI/CD pipeline.
The Reality of Quantum Cloud Access
Accessing a QPU today is not done by plugging a laptop into a dilution refrigerator. It is done via cloud-based APIs. Platforms like IBM Quantum and IonQ provide SDKs—most notably Qiskit—that allow users to write quantum circuits in Python, compile them, and submit them to a remote QPU.
The research presented at Black Hat highlights that this workflow is riddled with classic security pitfalls. The SDKs often encourage users to store their API tokens in plain text files or environment variables. If an attacker gains access to a developer's workstation, they don't need to understand quantum mechanics to do damage. They simply need to read a JSON file or dump the process environment to steal the credentials.
From Credential Theft to Circuit Injection
Once an attacker has a valid API token, they can impersonate the victim. The impact goes beyond just burning through someone else's quantum compute credits. Because the SDKs are designed to be flexible, an attacker can manipulate the quantum circuits themselves.
The researchers demonstrated a proof-of-concept where they intercepted the circuit submission process. By modifying the local SDK configuration or hooking into the Python process, an attacker can inject malicious quantum circuits alongside the victim's legitimate code. This is a form of fault injection at the software level. If the QPU is shared among multiple users, an attacker can craft circuits that interfere with the execution of other jobs, potentially leaking information about the state of the QPU or the results of other users' computations.
The following Python snippet illustrates how easily an attacker can identify and hook into the processes running these SDKs:
import psutil
def get_quantum_processes():
python_pids = []
for p in psutil.process_iter():
if "python" in p.name().lower():
# Logic to check for SDK-specific environment variables
# or loaded modules in the process memory space
python_pids.append(p.pid)
return python_pids
The Threat Matrix
The researchers categorized these threats into a matrix based on the weapon and the target. A classical attacker using classical tools to target the classical infrastructure that manages quantum jobs is the most immediate threat. This falls squarely into OWASP A05:2021 – Security Misconfiguration and OWASP A07:2021 – Identification and Authentication Failures.
When you are testing these environments, look for the same things you would look for in any cloud-native application. Are the API keys hardcoded in the source code? Is the SDK configuration file world-readable? Does the CI/CD pipeline log the API tokens during the build process? If you can answer yes to any of these, you have a viable path to compromise.
Securing the Pipeline
Defending against these attacks requires moving away from the "convenience first" model of current quantum SDKs. Developers must treat quantum API tokens with the same level of protection as production cloud credentials. This means using secret management services rather than local files, and enforcing strict IAM policies on the quantum cloud platform.
Furthermore, the research suggests that quantum platforms need to implement better isolation between user jobs. If a QPU is running multiple circuits, the platform must ensure that one user's circuit cannot influence the measurement results of another. This is a hardware-level challenge, but it is one that cloud providers must solve before these platforms can be considered enterprise-ready.
The takeaway for the security community is clear: do not let the "quantum" label distract you from the underlying classical vulnerabilities. The same supply chain attacks that plague traditional software development are now being imported into the quantum era. If you are auditing a quantum-enabled application, start by looking at the classical entry points. You will likely find that the most significant vulnerabilities are not in the quantum algorithms, but in the way those algorithms are packaged, authenticated, and deployed. The quantum revolution is coming, but the old-school bugs are already here.
Vulnerability Classes
Target Technologies
Attack Techniques
Up Next From This Conference
Similar Talks

Inside the FBI's Secret Encrypted Phone Company 'Anom'

Hacking Apple's USB-C Port Controller




