Top 10 Java-sårbarheder, og hvordan man løser dem
Java får konsekvent et dårligt ry, når det kommer til sikkerhed - men i betragtning af at halvdelen af virksomhedsapplikationer i de sidste 15 år blev skrevet med sproget, kan dets udbredelse (og almindeligt kendte angrebsvektorer) være mere skyld end Javas iboende sikkerhedssvagheder alene. Når det er sagt, udvikles der nye tilgange (f.eks. Rask, Waratek) for at forbedre Java-webapplikationssikkerheden på Java Virtual Machine (JVM)-niveau, men for de fleste organisationer kan indførelse af traditionelle sikkerhedsforsvar for Java-applikationer hjælpe med at beskytte mod størstedelen af Java-relaterede udnyttelser.
På grund af Javas allestedsnærværelse er omfattende sårbarhedsstyring af Java-relaterede værktøjer og teknologier afgørende for at opretholde en stærk sikkerhed - uanset om du kører en komplet CI/CD-pipeline eller et par interne virksomhedswebapplikationer. Følgende er de 10 største sårbarheder i Java-teknologi, herunder værktøjer og populære applikationer til understøttelse af Java-baseret applikationsudvikling.
Top 10 Java-sårbarheder
1. JUnit
Denne ramme for enhedstestning er et standardelement i de fleste Java-udvikleres værktøjssæt, hvilket muliggør hurtig og automatiseret kodebasetestning. JUnit-filer, der følger med andre applikationer, kan dog indeholde sårbarheder. Versioner af Google Web Toolkit (GWT) før 2.5.1 RC indeholder f.eks. flere sårbarheder i forbindelse med scripting på tværs af websteder (XSS).
2. Jenkins
Som den mest almindeligt anvendte CI-server (continuous integration) på markedet har Jenkins en stor tilhængerskare blandt Java-udviklere i overensstemmelse hermed. Desværre betyder popularitet som kontinuerligt integrationsværktøj normalt flere sårbarheder og udnyttelser - og i Jenkins' tilfælde findes der flere XSS-sårbarheder, CSRF (cross-site request forgery) og denial-of-service (Dos).
3. Dvale
Den populære ORM-ramme Hibernate bruges ofte blandt Java-udviklere til at kortlægge relationelle databaseobjekter som tabeller til Java-klasser. Version 4.1.0 før 4.2.1, 4.3.x før 4.3.2 og 5.x før 5.1.2 af open source-værktøjet indeholder en sårbarhed, der kan gøre det muligt for angribere at omgå Java Security Manager (JSM).
4. Maven
Apache Maven er en meget brugt build-manager til Java-projekter, der giver mulighed for central styring af et projekts build, rapportering og dokumentation. En sårbarhed i Apache Maven 3.0.4 gør det muligt for fjernhackere at forfalske servere i et man-in-the-middle-angreb.
5. Tomcat
Denne populære Java-webapplikationsserver har været en evig favorit blandt udviklere til at bygge servlets og applikationer med JavaServer Pages. Tomcat er langt over et årti gammel og har samlet en relativt imponerende række sikkerhedshuller fra XSS til CSRF-sårbarheder - hvoraf mange er blevet udnyttet i naturen.
6. Java 7
På trods af Java 8's indtræden sidste år, er Java 7 stadig i dominerende brug - selvom det forventes, at version 8 i 2016 vil føre flokken. Det siger sig selv, at enhver version af Java under 7 skal opdateres med det samme - selv version 7 har brug for betydelig afhjælpning af sin flåde af sårbarheder.
7. Forårsramme
Spring er en applikationsramme med sin egen model-view-controller-ramme til Java, der giver mulighed for adskillelse af input-, forretnings- og brugergrænsefladelogik. Spring er et open source-projekt, der ikke er uden sin rimelige andel af dokumenterede sårbarheder.
8. JavaServer-ansigter
JavaServer Faces (JSF) er en præsentationsramme til Java, der letter udviklingen af genanvendelige brugergrænsefladeelementer. En sårbarhed i Apache MyFaces Core 2.0.x før 2.0.12 og 2.1.x før 2.1.6 kan give fjernangribere mulighed for at læse vilkårlige filer.
9. Formørkelse IDE
Eclipse er et populært skrivebordsværktøj til opbygning af webapplikationer i Java og har fungeret som det foretrukne integrerede udviklingsmiljø (IDE) for Java-udviklere i årevis. Desværre er visse versioner af dets hjælpefiler - af alle ting - sårbare over for XSS-relaterede udnyttelser.
10. Vaadin
Vaadin er en populær Java-struktur til opbygning af moderne Java-webapplikationer - tænk på moderne webapps med en enkelt side, der drives af Java. En XSS-sårbarhed i frameworket kan gøre det muligt for fjernangribere at injicere vilkårlige scripts på siderne.
Oprydning
For at rette ovenstående sårbarheder skal du identificere, hvilke af disse teknologier der bruges i dit miljø, og besøge den respektive leverandørs/projekts websted for opdaterings-/patchoplysninger. UpGuard kan finde alle disse elementer automatisk med et par museklik. Desuden kan vores politik for redigerbare Java-sårbarheder udvides til at imødekomme eventuelle brugerdefinerede kontroller for yderligere Java-værktøjer. Giv det en prøvetur i dag - det er gratis.
Infografik om Java-sårbarheder
