CWE-176
Improper Handling of Unicode Encoding
Produkt nie obsługuje prawidłowo danych wejściowych zawierających kodowanie Unicode. Może to prowadzić do błędów bezpieczeństwa lub nieprawidłowego działania aplikacji.
The product does not properly handle when an input contains Unicode encoding.
Nieprawidłowa walidacja danych wejściowych w produktach Zoom dla systemu Windows umożliwia nieuwierzytelnionemu atakującemu przeprowadzenie privilege escalation przez sieć. Podatność uzyskała ocenę krytyczną CVSS 9.6, co czyni ją poważnym zagrożeniem dla organizacji korzystających z tych rozwiązań.
Podatność w Zoom Desktop Client dla Windows oraz Zoom VDI Client przed wersją 5.15.2 umożliwia nieuwierzytelnionemu atakującemu eskalację uprawnień przez sieć. Wysoki wynik CVSS (9.6) wskazuje na poważne zagrożenie dla systemów korzystających z podatnych wersji.
Narzędzie sqldiff.exe wchodzące w skład SQLite nie obsługuje bezpiecznie konwersji znaków Unicode na strony kodowe ANSI przez środowisko uruchomieniowe Microsoft Windows C runtime. Atakujący może wykorzystać opcję '-L' do załadowania dowolnej biblioteki DLL poprzez odpowiednio spreparowany argument wiersza poleceń, co stanowi poważne zagrożenie dla integralności i poufności systemu.
node-tar,a Tar for Node.js, has a race condition vulnerability in versions up to and including 7.5.3. This is due to an incomplete handling of Unicode path collisions in the `path-reservations` system. On case-insensitive or normalization-insensitive filesystems (such as macOS APFS, In which it has been tested), the library fails to lock colliding paths (e.g., `ß` and `ss`), allowing them to be processed in parallel. This bypasses the library's internal concurrency safeguards and permits Symlink Poisoning attacks via race conditions. The library uses a `PathReservations` system to ensure that metadata checks and file operations for the same path are serialized. This prevents race conditions where one entry might clobber another concurrently. This is a Race Condition which enables Arbitrary File Overwrite. This vulnerability affects users and systems using node-tar on macOS (APFS/HFS+). Because of using `NFD` Unicode normalization (in which `ß` and `ss` are different), conflicting paths do not have their order properly preserved under filesystems that ignore Unicode normalization (e.g., APFS (in which `ß` causes an inode collision with `ss`)). This enables an attacker to circumvent internal parallelization locks (`PathReservations`) using conflicting filenames within a malicious tar archive. The patch in version 7.5.4 updates `path-reservations.js` to use a normalization form that matches the target filesystem's behavior (e.g., `NFKD`), followed by first `toLocaleLowerCase('en')` and then `toLocaleUpperCase('en')`. As a workaround, users who cannot upgrade promptly, and who are programmatically using `node-tar` to extract arbitrary tarball data should filter out all `SymbolicLink` entries (as npm does) to defend against arbitrary file writes via this file system entry name collision issue.
Caddy is an extensible server platform that uses TLS by default. From 2.7.0 until 2.11.3, the FastCGI transport's splitPos() in modules/caddyhttp/reverseproxy/fastcgi/fastcgi.go misuses golang.org/x/text/search with search.IgnoreCase when the request path contains a non-ASCII byte. Two distinct flaws in that fallback let an attacker mislead Caddy's FastCGI splitting into treating a non-.php (or other configured split_path extension) file as a script. In any deployment where the attacker can place content into a file served via FastCGI (uploads, file storage, etc.), this can be escalated to remote code execution by crafting a URL whose path triggers either flaw. This vulnerability is fixed in 2.11.3.
FrankenPHP is a modern application server for PHP. From version 1.11.2 to before version 1.12.3, the splitPos() function in cgi.go misuses golang.org/x/text/search with search.IgnoreCase when the request path contains a non-ASCII byte. Two distinct flaws in that fallback let an attacker mislead FrankenPHP into treating a non-.php file as a .php script. In any deployment where the attacker can place content into a file served by FrankenPHP (uploads, file storage, etc.), this can be escalated to remote code execution by crafting a URL whose path triggers either flaw. This issue has been patched in version 1.12.3.
Text::Minify::XS versions from 0.3.0 before 0.7.8 for Perl have a heap overflow when processing some malformed UTF-8 characters. The minify functions mishandled some malformed UTF-8 characters, leading to heap corruption. Note that the minify_utf8 function is an alias for minify.
XML::Parser versions through 2.45 for Perl could overflow the pre-allocated buffer size cause a heap corruption (double free or corruption) and crashes. A :utf8 PerlIO layer, parse_stream() in Expat.xs could overflow the XML input buffer because Perl's read() returns decoded characters while SvPV() gives back multi-byte UTF-8 bytes that can exceed the pre-allocated buffer size. This can cause heap corruption (double free or corruption) and crashes.
Deno is a JavaScript, TypeScript, and WebAssembly runtime. Prior to 2.7.14, Deno's permission system enforces filesystem and execution restrictions by comparing the requested path against the path supplied to --deny-read, --deny-write, --deny-run, or --deny-ffi. On macOS, that comparison was done at the raw-byte level while the APFS filesystem treats different Unicode spellings of the same name as the same file. That means a program could reach a denied path by spelling it differently than the deny rule. This vulnerability is fixed in 2.7.14.
In shouldHideDocument of ExternalStorageProvider.java, there is a possible bypass of a file path filter designed to prevent access to sensitive directories due to incorrect unicode normalization. This could lead to local escalation of privilege with no additional execution privileges needed. User interaction is needed for exploitation.
Improper handling of Unicode encoding in SonicWall SMA1000 series appliances allows a remote authenticated SSLVPN user to bypass Workplace/Connect Tunnel TOTP authentication.
W wersjach Splunk Enterprise poniżej 10.2.2, 10.0.5, 9.4.10 i 9.3.11 oraz Splunk Cloud Platform poniżej 10.4.2603.0, 10.3.2512.6, 10.2.2510.10, 10.1.2507.20, 10.0.2503.13 i 9.3.2411.127, użytkownik posiadający rolę z uprawnieniem `edit_user` mógł utworzyć crafted nazwę użytkownika zawierającą null byte lub niewłaściwie zakodowany byt spoza UTF-8 z powodu niedostatecznej walidacji danych wejściowych. Mogło to prowadzić do niespójnej konwersji nazw użytkowników do właściwego formatu do przechowywania i niespójności w zarządzaniu kontami, takich jak niemożność edycji lub usunięcia dotkniętych użytkowników.
Nieprawidłowe przetwarzanie kodowania Unicode w urządzeniach SonicWall SMA1000 pozwala zdalnie uwierzytelnionemu administratorowi SSLVPN obejść autoryzację AMC TOTP.
Luka w obsłudze nazw hostów TLS w Node.js może spowodować bypass uwierzytelniania wildcard-depth TLS ze względu na niedopasowanie normalizacji nazw hostów w resolverze i weryfikatorze, związane z obsługą unikodowych separatorów kropek. Może to prowadzić do naruszenia poufności lub obejścia zamierzonej granicy bezpieczeństwa w złożonych konfiguracjach. Podatność dotyczy wszystkich obsługiwanych linii wydań: Node.js 22, Node.js 24 i Node.js 26.
Litestar to framework ASGI. Przed wersją 2.20.0 FileStore mapuje klucze cache'a na nazwy plików przy użyciu normalizacji Unicode NFKD i substytuacji ord() bez separatorów, co powoduje kolizje kluczy. Gdy FileStore jest używany jako backend response-cache, niezalogowany napastnik może wyzwolić kolizje kluczy cache'a za pośrednictwem spreparowanych ścieżek, skutkując obsługiwaniem cached responses z jednego URL dla innego (cache poisoning/mixup). Podatność naprawiono w wersji 2.20.0.
XZ Utils provide a general-purpose data-compression library plus command-line tools. When built for native Windows (MinGW-w64 or MSVC), the command line tools from XZ Utils 5.6.2 and older have a command line argument injection vulnerability. If a command line contains Unicode characters (for example, filenames) that don't exist in the current legacy code page, the characters are converted to similar-looking characters with best-fit mapping. Some best-fit mappings result in ASCII characters that change the meaning of the command line, which can be exploited with malicious filenames to do argument injection or directory traversal attacks. This vulnerability is fixed in 5.6.3. Command line tools built for Cygwin or MSYS2 are unaffected. liblzma is unaffected.
setuptools to pakiet umożliwiający pobieranie, budowanie, instalowanie, uaktualnianie i odinstalowywanie pakietów Pythona. Przed wersją 83.0.0 FileList stosował dyrektywy exclude, global-exclude, recursive-exclude i prune z MANIFEST.in przez dopasowywanie skompilowanych wzorców glob do nazw plików na dysku bez normalizacji Unicode, przez co na macOS APFS lub HFS+ plik o nazwie NFD mógł obejść regułę wykluczenia NFC i zostać spakowany do dystrybucji źródłowej. Problem został naprawiony w wersji 83.0.0.
In versions of Helix Core prior to 2024.1 Patch 2 (2024.1/2655224) a Windows ANSI API Unicode "best fit" argument injection was identified.
HashiCorp go-slug 0.4.0 through 0.18.2 could allow a local attacker to bypass .terraformignore exclusions and cause sensitive files to be included in Terraform slug uploads due to improper handling of Unicode normalization during path matching.
Członek społeczności HackerOne Kassem S. (kassem_s94) zgłosił, że obsługa nazw użytkowników w Revive Adserver była nadal podatna na ataki polegające na podszywaniu się, mimo poprawy CVE-2025-52672, poprzez kilka alternatywnych technik. Atak opierający się na homoglifach został niezależnie zgłoszony przez innych użytkowników HackerOne, takich jak itz_hari_ i khoof.