CVE-2026-110262
NiskieCVSS 3.3Streszczenie
OW2 ASM 3.1 przed wersją 9.11 zawiera podatność nadmiernej alokacji pamięci w klasie AdviceAdapter z asm-commons, umożliwiającą atakującym wyczerpanie pamięci poprzez dostarczenie spreparowanych plików klas. Atakujący może stworzyć bajtkod z wieloma docelowymi skokami w konstruktorach, powodując nieograniczone kopiowanie stosu w forwardJumpStackFrames i alokację setek megabajtów, prowadząc do odmowy usługi.
Ocena ryzyka
Atakujący może wyczerpać pamięć aplikacji przetwarzającej spreparowany bajtkod, powodując odmowę usługi. Ryzyko dotyczy systemów używających OW2 ASM do analizy niezaufanych plików klas.
Rekomendacja
Zaktualizuj OW2 ASM do wersji 9.11 lub nowszej. Do czasu aktualizacji unikaj analizowania niezaufanych plików klas za pomocą ASM.
Inne podatności w OW2 ASM
Zobacz wszystkie- CVE-2026-110591Średnie
OW2 ASM w wersjach od 1.4.3 do 9.11 zawiera podatność nadmiernego zużycia zasobów w funkcji Analyzer.analyze(), która pozwala atakującemu wyczerpać pamięć i CPU za pomocą spreparowanych plików klas. Atakujący może dostarczyć pliki klas analizowane przez BasicVerifier, SimpleVerifier lub SourceInterpreter, aby wywołać nieograniczoną alokację Frame na instrukcję i iteracje punktu stałego, powodując odmowę usługi.
- CVE-2026-110270Średnie
OW2 ASM w wersjach od 3.0 do 9.11 zawiera podatność niekontrolowanej alokacji pamięci w asm-commons JSRInlinerAdapter, który wstawia podprogramy JSR/RET bez limitów pamięci i pracy. Atakujący może dostarczyć spreparowany plik klas z zagnieżdżonymi podprogramami, aby wymusić alokację pamięci O(2^n) i wywołać OutOfMemoryError, który zawiesza JVM.
- CVE-2026-110263Średnie
OW2 ASM w wersjach od 3.0 do 9.11 zawiera podatność niekontrolowanej rekurencji w funkcji SignatureReader.parseType(), która pozwala atakującemu wyczerpać stos poprzez głęboko zagnieżdżone sygnatury typów generycznych. Atakujący może dostarczyć spreparowany plik klas z długim atrybutem Signature zawierającym wiele zagnieżdżonych argumentów typu, aby wywołać StackOverflowError podczas transformacji klas, powodując odmowę usługi.
- CVE-2026-110261Średnie
OW2 ASM w wersjach od 3.0 do 9.11 zawiera podatność typu denial of service, która pozwala atakującemu wyczerpać CPU poprzez dostarczenie spreparowanych plików klas przetwarzanych z użyciem ClassWriter.COMPUTE_FRAMES. Atakujący może przygotować metody, które powodują wolne zbieganie nieograniczonego algorytmu punktu stałego MethodWriter.computeAllFrames(), zajmując wątki transformujące na nieograniczony czas.
- CVE-2026-110260Średnie
OW2 ASM w wersjach od 3.0 do 9.11 zawiera podatność polegającą na kwadratowej alokacji pamięci w metodach MethodWriter.computeMaxStackAndLocal() oraz computeAllFrames() przy użyciu COMPUTE_MAXS lub COMPUTE_FRAMES. Atakujący może dostarczyć spreparowany plik klasy z tysiącami nakładających się handlerów wyjątków, co powoduje nadmierną alokację obiektów Edge i błąd OutOfMemoryError, który zawiesza JVM.
- CVE-2026-110259Średnie
OW2 ASM w wersjach od 3.0 do 9.11 zawiera podatność niekontrolowanej rekurencji w metodzie ClassWriter.replaceAsmInstructions(), która pozwala atakującym wywołać odmowę usługi poprzez spreparowane pliki klas. Atakujący może dostarczyć klasę z dużą metodą zawierającą wiele długich skoków do przodu, co wywołuje nieograniczoną rekurencję w toByteArray() i błąd StackOverflowError podczas transformacji.
- CVE-2026-110258Średnie
OW2 ASM w wersjach od 3.0 do 9.11 zawiera podatność nadmiernej alokacji pamięci w metodzie Label.addSubroutineRetSuccessors(), która nie egzekwuje reguły pojedynczego RET na JSR. Atakujący może dostarczyć spreparowany nieprawidłowy plik klasy z wieloma instrukcjami RET dla jednego JSR, co wywołuje alokację około 2 GB i zawiesza JVM.
- CVE-2026-110257Średnie
OW2 ASM w wersjach od 5.0 do 9.11 zawiera podatność nadmiernej alokacji pamięci w metodzie ClassReader.readBootstrapMethodsAttribute(), która ustala rozmiar tablicy int na podstawie num_bootstrap_methods bez walidacji attribute_length. Atakujący może dostarczyć spreparowany plik klasy o rozmiarze około 100 bajtów, co wymusza alokację około 2 GB, powodując błąd OutOfMemoryError, który zawiesza JVM lub zużywa wątek.
Oryginalny opis (angielski, źródło NVD)
OW2 ASM 3.1 before 9.11 contains an excessive memory allocation vulnerability in the asm-commons AdviceAdapter that allows attackers to exhaust memory by supplying crafted class files. Attackers can craft bytecode with many forward jump targets in constructors, causing unbounded stack copies in forwardJumpStackFrames and allocation of hundreds of megabytes, leading to denial of service.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

