Podatności jackson-databind
34 znanych podatności CVE w jackson-databind, przetłumaczonych i ocenionych.
- CVE-2026-110879Krytyczne
Podatność w jackson-databind polega na tym, że walidacja typu ID sprawdza tylko klasę zewnętrzną, a nie klasy przekazane jako argumenty generyczne. Pozwala to na deserializację niebezpiecznych klas (np. HashMap<FileSystemXmlApplicationContext,String>) mimo włączonego walidatora, co może prowadzić do zdalnego wykonania kodu. Problem dotyczy wersji 2.10.0+ oraz 3.0.0+ i jest niekompletną poprawką dla CVE-2026-54512.
- CVE-2021-20190Wysokie
Błąd w jackson-databind przed wersją 2.9.10.7 powoduje nieprawidłowe zarządzanie interakcją między gadżetami serializacji a typowaniem. Największe zagrożenie dotyczy poufności i integralności danych oraz dostępności systemu.
- CVE-2020-11620Wysokie
Biblioteka FasterXML jackson-databind w wersjach 2.x przed 2.9.10.4 nieprawidłowo obsługuje interakcję między gadżetami serializacji a typowaniem, w szczególności w powiązaniu z klasą org.apache.commons.jelly.impl.Embedded (commons-jelly). Może to umożliwić atakującemu wykonanie niebezpiecznych operacji podczas deserializacji danych.
- CVE-2019-14893Krytyczne
Odkryto usterkę w FasterXML jackson-databind we wszystkich wersjach przed 2.9.10 i 2.10.0, która umożliwiała polimorficzną deserializację złośliwych obiektów przy użyciu gadżetu xalan JNDI, gdy używana jest z metodami obsługi typów polimorficznych, takimi jak `enableDefaultTyping()` lub gdy @JsonTypeInfo używa `Id.CLASS` lub `Id.MINIMAL_CLASS`, lub w inny sposób, w którym ObjectMapper.readValue może tworzyć obiekty z niebezpiecznych źródeł. Atakujący mógł wykorzystać tę usterkę do wykonania dowolnego kodu.
- CVE-2019-14892Krytyczne
Odkryto usterkę w jackson-databind w wersjach przed 2.9.10, 2.8.11.5 i 2.6.7.3, która umożliwiała polimorficzną deserializację złośliwego obiektu przy użyciu klas JNDI z commons-configuration 1 i 2. Atakujący mógł wykorzystać tę usterkę do wykonania dowolnego kodu.
- CVE-2020-9547Krytyczne
FasterXML jackson-databind 2.x przed 2.9.10.4 nieprawidłowo obsługuje interakcję między gadżetami serializacji a typowaniem, związaną z com.ibatis.sqlmap.engine.transaction.jta.JtaTransactionConfig (znanym jako ibatis-sqlmap).
- CVE-2020-8840Krytyczne
FasterXML jackson-databind w wersjach od 2.0.0 do 2.9.10.2 nie blokuje odpowiednio klas xbean-reflect/JNDI, co demonstruje org.apache.xbean.propertyeditor.JndiConverter. Może to umożliwić zdalne wykonanie kodu.
- CVE-2019-20330Krytyczne
FasterXML jackson-databind w wersjach 2.x przed 2.9.10.2 nie zawiera odpowiedniej blokady klas net.sf.ehcache. Może to umożliwić atakującemu wykorzystanie deserializacji polimorficznej do wykonania niebezpiecznych operacji.
- CVE-2019-17531Krytyczne
Odkryto problem z polimorficznym typowaniem w FasterXML jackson-databind od wersji 2.0.0 do 2.9.10. Gdy domyślne typowanie jest włączone (globalnie lub dla konkretnej właściwości) dla zewnętrznie wystawionego punktu końcowego JSON, a usługa ma w classpath bibliotekę apache-log4j-extra (wersja 1.2.x), atakujący może dostarczyć usługę JNDI, co umożliwia wykonanie złośliwego ładunku.
- CVE-2019-17267Krytyczne
Wykryto problem z typowaniem polimorficznym w FasterXML jackson-databind przed 2.9.10, związany z net.sf.ehcache.hibernate.EhcacheJtaTransactionManagerLookup.
- CVE-2019-16943Krytyczne
Wykryto problem z typowaniem polimorficznym w FasterXML jackson-databind od 2.0.0 do 2.9.10. Gdy domyślne typowanie jest włączone (globalnie lub dla konkretnej właściwości) dla zewnętrznie wystawionego punktu końcowego JSON, a usługa ma w classpath bibliotekę p6spy (3.8.6), atakujący może znaleźć punkt końcowy RMI i wykonać złośliwy kod. Problem wynika z nieprawidłowej obsługi com.p6spy.engine.spy.P6DataSource.
- CVE-2019-16942Krytyczne
W bibliotece FasterXML jackson-databind w wersjach od 2.0.0 do 2.9.10 wykryto problem polimorficznego typowania. Gdy domyślne typowanie jest włączone dla zewnętrznie dostępnego punktu końcowego JSON, a w classpath znajduje się biblioteka commons-dbcp (1.4), atakujący może doprowadzić do wykonania złośliwego ładunku poprzez usługę RMI. Problem wynika z nieprawidłowej obsługi klas org.apache.commons.dbcp.datasources.SharedPoolDataSource i PerUserPoolDataSource.
- CVE-2019-16335Krytyczne
Odkryto problem z polimorficznym typowaniem w FasterXML jackson-databind przed wersją 2.9.10. Jest on związany z com.zaxxer.hikari.HikariDataSource. To inna podatność niż CVE-2019-14540.
- CVE-2019-14540Krytyczne
Problem z typowaniem polimorficznym w FasterXML jackson-databind przed wersją 2.9.10, związany z com.zaxxer.hikari.HikariConfig, może umożliwić zdalne wykonanie kodu.
- CVE-2019-14379Krytyczne
W pliku SubTypeValidator.java w bibliotece FasterXML jackson-databind przed wersją 2.9.9.2 nieprawidłowo obsługiwane jest domyślne typowanie, gdy używany jest ehcache (poprzez net.sf.ehcache.transaction.manager.DefaultTransactionManagerLookup). Prowadzi to do zdalnego wykonania kodu.
- CVE-2018-11307Krytyczne
W bibliotece FasterXML jackson-databind w wersjach od 2.0.0 do 2.9.5 wykryto problem polegający na tym, że użycie domyślnego typowania Jacksona wraz z klasą gadget z iBatis umożliwia eksfiltrację danych. Podatność naprawiono w wersjach 2.7.9.4, 2.8.11.2 i 2.9.6.
- CVE-2019-12384Średnie
FasterXML jackson-databind w wersjach 2.x przed 2.9.9.1 może umożliwić atakującym różnorodne skutki poprzez wykorzystanie braku blokady klasy logback-core przed polimorficzną deserializacją. W zależności od zawartości classpath, możliwe jest zdalne wykonanie kodu.
- CVE-2019-12086Wysokie
W FasterXML jackson-databind 2.x przed 2.9.9 odkryto problem typu Polymorphic Typing. Gdy włączone jest Default Typing dla zewnętrznie eksponowanego punktu końcowego JSON, usługa ma w classpath bibliotekę mysql-connector-java (8.0.14 lub starszą), a atakujący może hostować spreparowany serwer MySQL osiągalny dla ofiary, atakujący może wysłać spreparowaną wiadomość JSON umożliwiającą odczyt dowolnych plików lokalnych na serwerze. Wynika to z braku walidacji com.mysql.cj.jdbc.admin.MiniAdmin.
- CVE-2018-12022Wysokie
Podatność w bibliotece FasterXML jackson-databind w wersjach przed 2.7.9.4, 2.8.11.2 i 2.9.6. Gdy włączone jest Default Typing, a w classpath znajduje się biblioteka Jodd-db, atakujący może dostarczyć usługę LDAP, co pozwala na wykonanie złośliwego kodu.
- CVE-2018-14719Krytyczne
Biblioteka FasterXML jackson-databind w wersjach 2.x przed 2.9.7 nie blokuje klas blaze-ds-opt i blaze-ds-core podczas deserializacji polimorficznej. Umożliwia to zdalnym atakującym wykonanie dowolnego kodu.
- CVE-2018-14718Krytyczne
FasterXML jackson-databind w wersjach 2.x przed 2.9.7 może pozwolić zdalnym atakującym na wykonanie dowolnego kodu poprzez wykorzystanie braku blokady klasy slf4j-ext w deserializacji polimorficznej.
- CVE-2017-7525Krytyczne
Wada deserializacji w jackson-databind (wersje przed 2.6.7.1, 2.7.9.1 i 2.8.9) może pozwolić nieuwierzytelnionemu użytkownikowi na wykonanie kodu poprzez wysłanie złośliwie spreparowanych danych do metody readValue klasy ObjectMapper.
- CVE-2017-15095Krytyczne
W bibliotece jackson-databind w wersjach przed 2.8.10 i 2.9.1 wykryto błąd deserializacji, który umożliwia nieuwierzytelnionemu użytkownikowi wykonanie kodu poprzez przesłanie spreparowanych danych do metody readValue klasy ObjectMapper. Podatność rozszerza wcześniejszy problem CVE-2017-7525 poprzez dodanie do blacklisty kolejnych niebezpiecznych klas.
- CVE-2018-5968Wysokie
FasterXML jackson-databind do 2.8.11 oraz 2.9.x do 2.9.3 pozwala na nieuwierzytelnione zdalne wykonanie kodu z powodu niekompletnej poprawki podatności deserializacji CVE-2017-7525 i CVE-2017-17485. Jest to wykorzystywalne poprzez dwa różne gadżety omijające czarną listę.
- CVE-2026-68497Wysokie
Podatność w bibliotece jackson-databind polega na tym, że deserializatory typów XML (Duration, XMLGregorianCalendar) przekazują surowy łańcuch JSON bezpośrednio do konstruktorów BigInteger/BigDecimal, które mają złożoność kwadratową względem liczby cyfr. Ponieważ cyfry znajdują się w tokenie łańcucha znaków, a nie liczby, zabezpieczenie StreamReadConstraints.maxNumberLength nie działa, co pozwala atakującemu na wywołanie długotrwałego obciążenia CPU pojedynczym żądaniem.
- CVE-2026-83557Średnie
Walidator DefaultBaseTypeLimitingValidator w bibliotece jackson-databind, stosowany automatycznie przy użyciu adnotacji @JsonTypeInfo bez własnego walidatora, nie uwzględniał typu java.lang.Comparable na liście niebezpiecznych typów bazowych. W efekcie aplikacja deklarująca właściwość lub klasę z Comparable jako typem bazowym akceptuje identyfikatory typów dla praktycznie dowolnej klasy implementującej Comparable, co pozwala atakującemu na tworzenie obiektów pod jego kontrolą. Wykazano możliwość utworzenia obiektu java.io.File dla dowolnej ścieżki.
- CVE-2026-19032Średnie
Deserializator jackson-databind dla java.nio.file.Path rozwiązuje URI dostarczone przez atakującego bez ograniczania schematu URI. Może to pozwolić na wybranie i sterowanie dowolnym zarejestrowanym FileSystemProvider podczas deserializacji niezaufanego JSON. Wpływ jest ograniczony, jeśli dostępne są tylko wbudowane providery JDK, ale może być poważniejszy przy obecności zewnętrznych providerów.
- CVE-2026-77310Średnie
jackson-databind, biblioteka do wiązania danych ogólnego przeznaczenia dla Jackson Data Processor, przed wersjami 2.18.9, 2.21.5, 2.22.1, 3.1.5 i 3.2.1 zawiera podatność w gałęzi java.net.InetAddress w metodzie FromStringDeserializer.Std._deserialize(). Funkcja wywołuje InetAddress.getByName() na danych kontrolowanych przez atakującego, co powoduje niecierpliwe rozwiązywanie DNS podczas deserializacji i umożliwia ataki SSRF oparte na DNS oraz enumerację wewnętrznych hostów.
- CVE-2026-59889Średnie
W bibliotece jackson-databind wykryto podatność polegającą na tym, że metoda UnwrappedPropertyHandler.processUnwrapped() przetwarza buforowany JSON dla właściwości @JsonUnwrapped bez sprawdzania widoczności (@JsonView). Umożliwia to atakującemu zapisanie właściwości oznaczonej zarówno @JsonView, jak i @JsonUnwrapped, nawet przy mniej uprzywilejowanym widoku aktywnym.
- CVE-2026-59888Średnie
Podatność w jackson-databind pozwala na ominięcie adnotacji @JsonIgnore w rekordach Javy używających PropertyNamingStrategy. Problem występuje w wersjach od 2.15.0 do 2.18.8, 2.21.4 i 3.1.4, gdzie ignorowane pole jest rejestrowane pod oryginalną nazwą przed zastosowaniem strategii nazewnictwa, co umożliwia przypisanie zmienionego klucza JSON do parametru konstruktora rekordu.
- CVE-2026-54515Średnie
W bibliotece jackson-databind od wersji 2.8.0 do 2.18.9, 2.21.5 i 3.1.4 występuje podatność polegająca na tym, że podczas deserializacji obiektów z adnotacją @JsonIgnoreProperties, wykluczone właściwości są usuwane z mapy BeanPropertyMap, ale późniejsze przetwarzanie z uwzględnieniem wielkości liter (ACCEPT_CASE_INSENSITIVE_PROPERTIES) odtwarza oryginalną, niefiltrowaną mapę, przywracając usunięte właściwości. W rezultacie zignorowana właściwość staje się ponownie zapisywalna.
- CVE-2026-54514Średnie
Podatność w jackson-databind od wersji 2.0.0 do 2.18.8, 2.21.4 i 3.1.4 powoduje, że podczas deserializacji obiektu InetSocketAddress następuje natychmiastowe rozwiązywanie nazw DNS dla danych wejściowych pochodzących z niezaufanego źródła. Atakujący może wymusić wykonanie zapytania DNS na wybranym przez siebie hoście jeszcze przed jakąkolwiek walidacją aplikacyjną.
- CVE-2026-54513Wysokie
Jackson-databind od wersji 2.10.0 do 2.18.8, 2.21.4 i 3.1.4 zawiera lukę w BasicPolymorphicTypeValidator, gdzie metoda allowIfSubTypeIsArray() zezwala na dowolne typy tablicowe bez walidacji typu elementu. Pozwala to na ominięcie listy dozwolonych typów i deserializację niebezpiecznych obiektów, takich jak EvilType[].
- CVE-2023-35116Średnie
Jackson-databind w wersjach do 2.15.2 pozwala atakującym na spowodowanie odmowy usługi lub innego nieokreślonego wpływu poprzez skonstruowany obiekt wykorzystujący cykliczne zależności.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

