CVE-2026-49260

Yüksək

Təsvir

PhpWeasyPrint, URL və ya HTML səhifədən PDF generasiyasına imkan verən bir PHP kitabxanasıdır. Versiya 2.5.1-dən əvvəl `pontedilana/php-weasyprint`, WeasyPrint üçün shell komandasını qurarkən binary yolunu əvvəlcə `escapeshellarg()` funksiyasından keçirir və sonra *dırnaq arası* nəticəni `is_executable()` ilə yoxlayır. POSIX sistemlərində `escapeshellarg('/usr/local/bin/weasyprint')` sətirin tərkibində tək dırnaq simvolları olan `'/usr/local/bin/weasyprint'` dəyərini qaytarır, buna görə də `is_executable()` faktiki adı həmin dırnaqları ehtiva edən faylı axtarır. Belə bir fayl heç vaxt mövcud olmur, "təhlükəsiz" budaq ölü koda çevrilir və xam `$binary` sətiri (konstruktor və ya `setBinary()` vasitəsilə təyin edilmiş) birbaşa `Symfony\Component\Process\Process::fromShellCommandline()` funksiyasına ötürülür. Binary yolu konfiqurasiyadan, mühit dəyişənindən və ya hər bir tenant üçün ayrıca parametrdən götürülən istənilən tətbiq shell-komanda-inyeksiyası riskinə məruz qalır. Kitabxana KnpLabs/snappy üçün bir-bir əvəzedici kimi sənədləşdirilib və KnpLabs-ın GHSA-vpr4-p6fq-85jc-də yamadığı eyni düzəlişdən əvvəlki kod yolunu miras almışdır. PhpWeasyPrint versiya 2.5.1 bu problem üçün yamı ehtiva edir.

CiddilikYüksək
CVSS8.2
İstismar ehtimalı—
MəhsulPontedilana/php-weasyprint
Dərc19 iyn 2026
İlk görülmə19 iyn 2026

Necə düzəltmək olar

Yeniləyin
  • pontedilana/php-weasyprint2.5.1 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
pontedilana/php-weasyprintPackagistv < 2.5.12.5.1

Versiyanızı yoxlayın

Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.

Intelligence 360 paketində

Attack Surface Management

Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.