جزئیات آسیب‌پذیری

CVE-2026-70658

pay-rails pay

pay-rails/pay: non-constant-time HMAC comparison in Paddle Billing webhook signature verifier

CVSS 3.1
7.4بالا

شرح رسمی (انگلیسی)

Pay is a payments engine for Ruby on Rails 6.0 and higher. Prior to 11.6.2, Pay::Webhooks::PaddleBillingController#valid_signature? in app/controllers/pay/webhooks/paddle_billing_controller.rb compares the computed 64-character SHA-256 HMAC with the attacker-controlled h1 token from the Paddle-Signature header using Ruby String#==. An unauthenticated remote attacker who can repeatedly submit requests to /pay/webhooks/paddle_billing and obtain sufficiently precise timing measurements can infer matching digest prefixes and recover a valid signature. A forged accepted webhook is enqueued through Pay::Webhooks::ProcessJob and can cause a host application to update billing state, provision paid features, record refunds, or trigger customer notifications. This issue is fixed in version 11.6.2.

امتیازهای CVSS

امتیازنسخهمنبعبردار
7.4بالا 3.1 CVEProject cvelistV5 (CNA) (GitHub_M) CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

محصولات آسیب‌پذیر

فروشندهمحصولنسخه‌هامنبع
pay-rails pay < 11.6.2 CVEProject cvelistV5 (CNA)

منابع و راهنماها

۳
هشدار CVEهای بعدی این محصولمحصول را دنبال کنید تا آسیب‌پذیری‌های تازه را در تلگرام بگیرید.

اطلاعات

تاریخ انتشار
۱۴۰۵/۰۶/۲۳
آخرین به‌روزرسانی
۱۴۰۵/۰۶/۲۳
وضعیت
منتشرشده
صادرکننده (CNA)
GitHub_M

پیش‌بینی بهره‌برداری (EPSS)

۰٫۵۷٪
احتمال بهره‌برداری در ۳۰ روز
۴۷٫۷٪
صدک (نسبت به همه‌ی CVEها)

ارزیابی SSVC (CISA)

قابل خودکارسازی
خیر
وضعیت بهره‌برداری
اثبات مفهوم
اثر فنی
کامل

ضعف‌ها (CWE)

  • CWE-208
    Observable Timing Discrepancy