image

Kritiek lek in Apache Tomcat maakt remote code execution mogelijk

maandag 23 december 2024, 14:48 door Redactie, 14 reacties

Een kritieke kwetsbaarheid in Apache Tomcat maakt remote code execution mogelijk. De Apache Foundation kwam vorige week met een beveiligingsupdate, maar die bleek het probleem niet volledig te verhelpen, waarop nu een nieuwe patch beschikbaar is gemaakt. Tomcat is software voor het draaien van een webserver. Vorige week dinsdag waarschuwde de Apache Foundation voor een kwetsbaarheid aangeduid als CVE-2024-50379.

Wanneer Tomcat draait op een case insensitive bestandssysteem waarbij de default servlet write enabled is, is het mogelijk om bestanden te uploaden en de controle door Tomcat te omzeilen, wat kan leiden tot remote code execution. De impact van deze kwetsbaarheid is door het Amerikaanse cyberagentschap CISA op een schaal van 1 tot en met 10 beoordeeld met een 9.8.

De update die de Apache Foundation uitbracht bleek echter onvolledig, waarop een nieuw CVE-nummer werd toegekend, namelijk CVE-2024-56337. Volgens de Apache Foundation moeten systemen die de eerder genoemde configuratie draaien, wat geen standaardconfiguratie is, afhankelijk van de gebruikte Java-versie aanvullende aanpassingen doorvoeren.

Reacties (14)
23-12-2024, 16:39 door johanw - Bijgewerkt: 23-12-2024, 16:39
Alleen op case insensitive systemen. Dus servers op Linux zijn veilig. Zoveel Apache servers zullen er wel niet op Windows draaien. Is MacOS case sensitive of alleen maar case aware zoals Windows?
24-12-2024, 09:18 door Anoniem
Door johanw: Is MacOS case sensitive of alleen maar case aware zoals Windows?
Als je je disk format dan kun je APFS op 2 verschillende manieren uitrollen, met of zonder casesensitive.
24-12-2024, 09:31 door Anoniem
Door johanw: Alleen op case insensitive systemen. Dus servers op Linux zijn veilig. Zoveel Apache servers zullen er wel niet op Windows draaien. Is MacOS case sensitive of alleen maar case aware zoals Windows?

Is is toch juist andersom? Linux file system is case sensitive, Windows niet.
24-12-2024, 10:36 door Tintin and Milou
Puntje, wat mij opvalt.
Maar dit zegt wel iets kwaliteit van de code. case insensitive but, 2de fix die voor dit issue al gedaan moet worden.

Blijkbaar zegt dit wel weer iets over de claim, dat het veiliger is, dat iedereen de code zelf kan bekijken.

Door johanw: Alleen op case insensitive systemen. Dus servers op Linux zijn veilig. Zoveel Apache servers zullen er wel niet op Windows draaien. Is MacOS case sensitive of alleen maar case aware zoals Windows?
Ik beheer hier anders al direct 1 Windows server met Tomcat en zo zullen er vast wel nog meer zijn bij ons in de infrastructuur.

Ik zou dit niet onderschatten.
24-12-2024, 10:56 door _R0N_
Door johanw: Alleen op case insensitive systemen. Dus servers op Linux zijn veilig. Zoveel Apache servers zullen er wel niet op Windows draaien. Is MacOS case sensitive of alleen maar case aware zoals Windows?

Het ligt aan het filesystem, als iemand zo "slim" is om data op een FAT32 partitie te zetten onder linux is hij net zo lek, al lijkt me die kans klein.

Op Windows geldt het omgekeerde ook, als je data op een NFS mount staat is het ineens case sensitive en dus veilig.
En er draaien heel veel Apache Tomcat servers op Windows.
24-12-2024, 11:23 door Anoniem
Door Anoniem:
Door johanw: Alleen op case insensitive systemen. Dus servers op Linux zijn veilig. Zoveel Apache servers zullen er wel niet op Windows draaien. Is MacOS case sensitive of alleen maar case aware zoals Windows?

Is is toch juist andersom? Linux file system is case sensitive, Windows niet.

Sorry, ik moet beter lezen. *in*sensitive. Miste het stukje 'in'.
24-12-2024, 12:30 door Anoniem
Door _R0N_:
Door johanw: Alleen op case insensitive systemen. Dus servers op Linux zijn veilig. Zoveel Apache servers zullen er wel niet op Windows draaien. Is MacOS case sensitive of alleen maar case aware zoals Windows?

Het ligt aan het filesystem, als iemand zo "slim" is om data op een FAT32 partitie te zetten onder linux is hij net zo lek, al lijkt me die kans klein.

De kans lijkt me ook klein.

Maar veel meer Linux filesystems hebben case-insensitivity (case folding) gekregen, ook bijvoorbeeld ext4 .
Dus Linux + Ext4 + casefolding zou ook kunnen.

Linus HAAT het , en behoorlijk terecht. Er zijn heel veel randgevallen (zeker met UTF karaktersets).

De feature is gekomen vanwege applicatie-protocollen die het verwachten (Samba, Wine ) - en het probleem "oplossen" in userland kost erg veel performance.

Ik geloof dat het ook zit in f2fs, vanwege de verwachtingen van Android.

Op Windows geldt het omgekeerde ook, als je data op een NFS mount staat is het ineens case sensitive en dus veilig.
En er draaien heel veel Apache Tomcat servers op Windows.

Het lijkt me een zeldzame combinatie - Windows + NFS - en werkt dat dan eigenlijk case sensitive ?
Applicaties/OSen die case insentive gewend zijn op een case sensitive file system kan behoorlijk misgaan.
(ervaring met Apple FS'en in 'case sensitive' versie )
24-12-2024, 13:17 door _R0N_
Door Anoniem:
Het lijkt me een zeldzame combinatie - Windows + NFS - en werkt dat dan eigenlijk case sensitive ?
Applicaties/OSen die case insentive gewend zijn op een case sensitive file system kan behoorlijk misgaan.
(ervaring met Apple FS'en in 'case sensitive' versie )

Geen idee hoe/of dat werkt maar er staat dat het om case insensitive filesystems gaat. NFS is doorgaans EXT dus een case sensitive filesystem..

Nou ja, ieder geval Tomcat sux en je moet weer patchen als je dat gebruikt.
24-12-2024, 15:01 door Anoniem
Door _R0N_:
Door johanw: Alleen op case insensitive systemen. Dus servers op Linux zijn veilig. Zoveel Apache servers zullen er wel niet op Windows draaien. Is MacOS case sensitive of alleen maar case aware zoals Windows?

Het ligt aan het filesystem, als iemand zo "slim" is om data op een FAT32 partitie te zetten onder linux is hij net zo lek, al lijkt me die kans klein.

Op Windows geldt het omgekeerde ook, als je data op een NFS mount staat is het ineens case sensitive en dus veilig.
En er draaien heel veel Apache Tomcat servers op Windows.
Op een Linux server gebruikt niemand FAT32 als partitie! Elke windows versie is trouwens case insensitivity. Er zijn wel delen met een flag case sensitive gemaakt (zoals altijd weer houtje toutje oplossing). Het is een misdesign geweest om windows case insensitive te maken:

For example, in ASCII, the uppercase ‘A’ has the value 65, while the lowercase ‘a’ has the value 97. This difference is the fundamental reason behind case sensitivity in computer systems.
24-12-2024, 17:37 door Anoniem
Door Anoniem:
Door _R0N_:
Door johanw: Alleen op case insensitive systemen. Dus servers op Linux zijn veilig. Zoveel Apache servers zullen er wel niet op Windows draaien. Is MacOS case sensitive of alleen maar case aware zoals Windows?

Het ligt aan het filesystem, als iemand zo "slim" is om data op een FAT32 partitie te zetten onder linux is hij net zo lek, al lijkt me die kans klein.

Op Windows geldt het omgekeerde ook, als je data op een NFS mount staat is het ineens case sensitive en dus veilig.
En er draaien heel veel Apache Tomcat servers op Windows.
Op een Linux server gebruikt niemand FAT32 als partitie! Elke windows versie is trouwens case insensitivity. Er zijn wel delen met een flag case sensitive gemaakt (zoals altijd weer houtje toutje oplossing). Het is een misdesign geweest om windows case insensitive te maken:

Het is andersom : NTFS is van origine case sensitive (noodzakelijk om -ook- posix compliancy te claimen), maar in de Windows API wordt het gedrag case insensitive gemaakt.

De keuze om Windows qua gedrag case insitive the HOUDEN is begrijpelijk gezien de origine als schil op MS-DOS, en later de uitgebreide DOS-compatibiliteit.
Leerpunt vanaf IBM tijd - als je bestaande klanten hebt, zorg dat je ze HOUDT met je vernieuwde platform.
Als je je klanten dwingt om alles om te gooien kunnen ze net goed - en soms beter - naar een andere leverancier gaan.


For example, in ASCII, the uppercase ‘A’ has the value 65, while the lowercase ‘a’ has the value 97. This difference is the fundamental reason behind case sensitivity in computer systems.

Is dat bedoeld als inzicht ? Natuurlijk - zolang je uberhaupt verschillende cases kunt (re)presenteren hebben ze ergens een onderscheidende encoding.
vanuit programmeursperspectief is het meest logische om te verwachten dat je van een filesystem exact dezelfde octet string terugkrijgt als naam die je erin stopte.
25-12-2024, 15:05 door johanw
Door Anoniem:
Het is andersom : NTFS is van origine case sensitive (noodzakelijk om -ook- posix compliancy te claimen), maar in de Windows API wordt het gedrag case insensitive gemaakt.

Even de correcte terminologie aanhouden: Windows + NTFS is case aware, niet sensitive. Ik kan m'n bestand dus wel "AFileWithCases.txt" noemen en zo zie ik hem ook, maar "AFILEWITHCASES.TXT" zal hem wel overschrijven.
25-12-2024, 20:51 door Anoniem
Door johanw:
Door Anoniem:
Het is andersom : NTFS is van origine case sensitive (noodzakelijk om -ook- posix compliancy te claimen), maar in de Windows API wordt het gedrag case insensitive gemaakt.

Even de correcte terminologie aanhouden: Windows + NTFS is case aware, niet sensitive. Ik kan m'n bestand dus wel "AFileWithCases.txt" noemen en zo zie ik hem ook, maar "AFILEWITHCASES.TXT" zal hem wel overschrijven.

Ik schreef het net wat beter - ook al had ik moeten zeggen "in de W32 subsystem api met default parameters" .

Wat ik er nog bij had moeten zeggen is dat de API op een per-directory basis case sensitive gemaakt kan worden.

Bedoeld voor die posix compliancy, en (nu eindelijk inmiddels - nuttig bij] WSL .(Windows subsystem for linux).

https://superuser.com/questions/364057/why-is-ntfs-case-sensitive

en
https://learn.microsoft.com/en-us/windows/wsl/case-sensitivity

Het is erg analoog (omgekeerd aan) de case-folding optie voor bijvoorbeeld Ext4 op Linux.
27-12-2024, 14:53 door Anoniem
Door Anoniem:
Door johanw:
Door Anoniem:
Het is andersom : NTFS is van origine case sensitive (noodzakelijk om -ook- posix compliancy te claimen), maar in de Windows API wordt het gedrag case insensitive gemaakt.

Even de correcte terminologie aanhouden: Windows + NTFS is case aware, niet sensitive. Ik kan m'n bestand dus wel "AFileWithCases.txt" noemen en zo zie ik hem ook, maar "AFILEWITHCASES.TXT" zal hem wel overschrijven.

Ik schreef het net wat beter - ook al had ik moeten zeggen "in de W32 subsystem api met default parameters" .

Wat ik er nog bij had moeten zeggen is dat de API op een per-directory basis case sensitive gemaakt kan worden.

Bedoeld voor die posix compliancy, en (nu eindelijk inmiddels - nuttig bij] WSL .(Windows subsystem for linux).

https://superuser.com/questions/364057/why-is-ntfs-case-sensitive

en
https://learn.microsoft.com/en-us/windows/wsl/case-sensitivity

Het is erg analoog (omgekeerd aan) de case-folding optie voor bijvoorbeeld Ext4 op Linux.
Het is onder windows niet consistent en beperkt op dit gebied.

W32 subsysteem kan per directory met een attribute! case_sensitive gemaakt worden. Voor windows applicaties maakt het zelfs ook niet uit wat het is. Dat heet houtje touwtje. Heel veel andere zaken zijn ook case insensitive zoals een machine naam of register keys. Het is 1 grote warboel en dat gecombineerd met een \ terwijl het internet / is. Dan hebben we ook nog de 8.3 bestandsnamen. Ik kom ze nog tegen die .HTM zooi. Het genereren van die extra 8.3 namen kan tegenwoordig op NTFS systeembreed worden uitgezet met risico natuurlijk. Ook de beruchte letter namen van koppelvlakken en beperkte aantal en copieren van bestanden naar een ander OS is intimiderend (BOM). Ik wil het niet meer zien omdat er zoveel fouten mee worden gemaakt. Daarom is het hier verboden om onder windows te programmeren voor onze webapp.
29-12-2024, 21:37 door Anoniem
bij xampp en ook bij de oswap standaart catalina host open en dat is een lek van ander kaliber , zie xml voor de mensen met de juiste kennis.
Reageren
Ondersteunde bbcodes
Bold: [b]bold text[/b]
Italic: [i]italic text[/i]
Underline: [u]underlined text[/u]
Quote: [quote]quoted text[/quote]
URL: [url]https://www.security.nl[/url]
Config: [config]config text[/config]
Code: [code]code text[/code]

Je bent niet en reageert "Anoniem". Dit betekent dat Security.NL geen accountgegevens (e-mailadres en alias) opslaat voor deze reactie. Je reactie wordt niet direct geplaatst maar eerst gemodereerd. Als je nog geen account hebt kun je hier direct een account aanmaken. Wanneer je Anoniem reageert moet je altijd een captchacode opgeven.