CVE-2026-19872
NieznaneStreszczenie
HTML::FormHandler przed wersją 0.410000 dla Perla pozwala na cross-site scripting poprzez przesłaną wartość renderowaną bez escapowania w komunikacie błędu. Wrappery i renderery emitujące błędy formularza interpolują ciąg błędu bezpośrednio do HTML bez escapowania. Komunikaty no_match i not_allowed wstawiają przesłaną wartość do tego ciągu, a nieudane ograniczenie typu umieszcza odrzuconą wartość w komunikacie. Żądanie sieciowe przesyłające znaczniki do takiego pola może spowodować wykonanie skryptu w kontekście ofiary.
Ocena ryzyka
Ryzyko obejmuje wstrzyknięcie skryptów (XSS) zarówno w wersji odbitej, jak i przechowywanej, co może prowadzić do kradzieży danych, przejęcia sesji lub innych złośliwych działań.
Rekomendacja
Zaktualizuj HTML::FormHandler do wersji 0.410000 lub nowszej. Upewnij się, że komunikaty błędów są odpowiednio escapowane.
Inne podatności w HTML::FormHandler
Zobacz wszystkie- CVE-2026-85630Nieznane
HTML::FormHandler przed wersją 0.410002 dla Perla renderuje atrybuty pól do HTML bez escapowania, używając metody process_attrs. Aplikacje, w których atrybuty pól lub etykiety są budowane z danych, a nie literałów, mogą pozwolić atakującemu na wstrzyknięcie tekstu do wartości atrybutu, co może nadpisać atrybuty pól lub osadzić JavaScript w renderowanych stronach.
- CVE-2026-85485Nieznane
HTML::FormHandler przed wersją 0.410002 dla Perla renderuje niektóre komunikaty błędów do HTML bez escapowania. Układ Table oraz wrappery Bootstrap 2 i 3 wstawiają każdy ciąg błędu bezpośrednio do otaczającego znacznika. Komunikaty błędów zawierające treści kontrolowane przez atakującego, takie jak odrzucone wartości pól, mogą osadzić JavaScript w renderowanych stronach.
- CVE-2026-85484Nieznane
HTML::FormHandler przed wersją 0.410002 dla Perla renderuje etykiety grup opcji i etykiety przycisków radiowych do HTML bez escapowania. Widgety Select, RadioGroup, CheckboxGroup i HorizCheckboxGroup renderują etykietę grupy bez escapowania, a RadioGroup dodatkowo renderuje etykietę każdego przycisku radiowego bez escapowania. Aplikacje, których lista opcji jest budowana z danych, mogą pozwolić atakującemu na wstrzyknięcie tekstu do etykiety, co może nadpisać opcje lub osadzić JavaScript.
- CVE-2022-4993Krytyczne
Podatność w HTML::FormHandler przed wersją 0.410000 dla Perla pozwala atakującemu na wybór metody i wyczerpanie zasobów. Dzieje się tak, ponieważ funkcje _apply_actions i add_error używają tekstu błędów z danych żądania jako szablonu notacji Locale::Maketext, co może prowadzić do wykonania niebezpiecznych metod lub alokacji pamięci.
Oryginalny opis (angielski, źródło NVD)
HTML::FormHandler versions before 0.410000 for Perl allow cross-site scripting via a submitted value rendered unescaped in an error message. The wrappers and renderers that emit a form's errors interpolate the error string straight into HTML with no escaping. Two of the library's own messages, no_match and not_allowed, splice the submitted value into that string, and a failing type constraint puts the rejected value into the message it builds, which _apply_actions hands to add_error. A field declared with a check regexp, a check list or a type constraint reaches those messages, with no custom validator and no non-default configuration. Errors rendered through an application's own escaping template layer rather than the library's rendering roles are not affected. A request over the network that submits markup to such a field gets it back live inside the error span, running script in the victim's origin. Re-rendering a rejected value later gives the stored variant.

