CVE-2026-74795
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 24 - wyżej niż 24% wszystkich znanych CVE
Streszczenie
Scriban przed wersją 6.6.0 zawiera podatność na niekontrolowaną rekurencję w parserze rekurencyjnym. Parser nie egzekwuje domyślnego limitu głębokości wyrażeń (ExpressionDepthLimit jest domyślnie null/wyłączony), więc atakujący kontrolujący dane wejściowe szablonu może dostarczyć głęboko zagnieżdżony szablon (np. tysiące zagnieżdżonych nawiasów), co wyczerpuje stos wątku i powoduje StackOverflowException. Ponieważ wyjątek StackOverflowException nie może być przechwycony w .NET, prowadzi to do natychmiastowego, nieodwracalnego zakończenia procesu, co skutkuje odmową usługi.
Ocena ryzyka
Ryzyko zdalnej odmowy usługi w aplikacjach przetwarzających niezaufane szablony, co może prowadzić do przerwania działania usługi.
Rekomendacja
Zaktualizuj Scriban do wersji 6.6.0 lub nowszej, która wprowadza domyślny limit głębokości wyrażeń.
Oryginalny opis (angielski, źródło NVD)
Scriban before 6.6.0 contains an uncontrolled recursion vulnerability in its recursive-descent parser. The parser does not enforce a default expression depth limit (the ExpressionDepthLimit property in ParserOptions defaults to null/disabled), so an attacker who controls template input can supply a deeply nested template (e.g., thousands of nested parentheses or blocks) that exhausts thread stack space and raises a StackOverflowException. Because a StackOverflowException cannot be caught in .NET, this causes immediate, unrecoverable termination of the hosting process, resulting in a denial of service. Applications that process untrusted or user-supplied templates can be exploited remotely without authentication.

