CRITICAL🇬🇧 English

CVE-2024-4253

Command Injection w workflow CI/CD repozytorium Gradio (GitHub Actions)

CVSS 9.1v3.1pub. 2024-06-04upd. 2025-10-15

W repozytorium gradio-app/gradio wykryto podatność typu command injection w pliku workflow 'test-functional.yml'. Pozwala ona nieuwierzytelnionemu atakującemu na nieautoryzowaną modyfikację repozytorium bazowego lub eksfiltrację poufnych sekretów CI/CD.

Pokaż oryginał (EN)

A command injection vulnerability exists in the gradio-app/gradio repository, specifically within the 'test-functional.yml' workflow. The vulnerability arises due to improper neutralization of special elements used in a command, allowing for unauthorized modification of the base repository or secrets exfiltration. The issue affects versions up to and including '@gradio/video@0.6.12'. The flaw is present in the workflow's handling of GitHub context information, where it echoes the full name of the head repository, the head branch, and the workflow reference without adequate sanitization. This could potentially lead to the exfiltration of sensitive secrets such as 'GITHUB_TOKEN', 'COMMENT_TOKEN', and 'CHROMATIC_PROJECT_TOKEN'.

🤖 Analiza AI
Jak działa

Podatność wynika z nieprawidłowej neutralizacji znaków specjalnych w poleceniach wykonywanych przez GitHub Actions workflow. Workflow bez odpowiedniej sanityzacji przetwarza dane kontekstu GitHub: pełną nazwę repozytorium źródłowego (head repository), nazwę gałęzi (head branch) oraz referencję workflow — bezpośrednio przekazując je do poleceń powłoki. Atakujący może spreparować złośliwą nazwę gałęzi lub forka, która zostanie zinterpretowana jako polecenie systemowe, prowadząc do wykonania arbitralnego kodu w kontekście pipeline'u CI/CD.

Skutki

Atakujący może doprowadzić do eksfiltracji poufnych sekretów przechowywanych w środowisku CI/CD, w tym tokenów 'GITHUB_TOKEN', 'COMMENT_TOKEN' oraz 'CHROMATIC_PROJECT_TOKEN', a także do nieautoryzowanej modyfikacji zawartości repozytorium bazowego.

Mitygacja

Należy zastosować patch dostępny w commicie a0e70366a8a406fdd80abb21e8c88a3c8e682a2b w repozytorium gradio-app/gradio. Zgodnie z referencjami producenta zaleca się aktualizację do wersji zawierającej wskazaną poprawkę oraz przegląd wszystkich workflow pod kątem właściwej sanityzacji danych kontekstu GitHub przed ich użyciem w poleceniach powłoki.

Kogo dotyczy

Repozytorium gradio-app/gradio w wersjach do '@gradio/video@0.6.12' włącznie, korzystające z workflow 'test-functional.yml'.

Uwagi

Podatność została zgłoszona za pośrednictwem platformy Huntr (bounty: 23cb3749-8ae9-4e1a-9023-4a20ca6b675e). Wektor ataku jest sieciowy, bez wymagania uwierzytelnienia (PR:N, UI:N), co znacząco zwiększa ryzyko dla publicznych repozytoriów przyjmujących pull requesty z zewnętrznych forków.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
  • Gradio Project Gradio

    APP
    Gradio Project
    < 4.29.0
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Command Injection
CWE
Referencje

Powiązane podatności

CVE-2024-39236CRITICAL9.8PL ✓ten sam produkt

Code injection w Gradio v4.36.1 via component_meta.py

CVE-2024-0964CRITICAL9.4PL ✓ten sam produkt

Path Traversal (LFI) w Gradio poprzez złośliwą wartość JSON w API

CVE-2026-49119HIGH8.7ten sam produkt

Gradio before 6.16.0 contain a path traversal vulnerability in the FileExplorer component's preprocess() metho...

CVE-2026-48545HIGH7.6ten sam produkt

Gradio before version 6.15.0 contains a cookie injection vulnerability that allows remote attackers to perform...

CVE-2026-28414HIGH7.5ten sam produkt

Gradio is an open-source Python package designed for quick prototyping. Prior to version 6.7, Gradio apps runn...