Ранливост Π²ΠΎ Apache Tomcat ΡˆΡ‚ΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° Π³ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΡ‚ JSP ΠΈ Π΄Π° Π΄ΠΎΠ±ΠΈΠ΅Ρ‚Π΅ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ со Π²Π΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ

Π˜ΡΡ‚Ρ€Π°ΠΆΡƒΠ²Π°Ρ‡ΠΈΡ‚Π΅ ΠΎΠ΄ кинСската компанија Chaitin Tech ΠΎΡ‚ΠΊΡ€ΠΈΡ˜Π° ранливост (CVE-2020-1938) Π²ΠΎ Apache Tomcat, ΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π° Π½Π° Java Servlet, JavaServer Pages, Java Expression Language ΠΈ Java WebSocket Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. На ранливоста ΠΈ Π΅ Π΄ΠΎΠ΄Π΅Π»Π΅Π½ΠΎ ΠΊΠΎΠ΄Π½ΠΎΡ‚ΠΎ ΠΈΠΌΠ΅ Ghostcat ΠΈ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° сСриозност (9.8 CVSS). ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΡ‚ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π°, Π²ΠΎ стандардната ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π°, со ΠΈΡΠΏΡ€Π°ΡœΠ°ΡšΠ΅ Π±Π°Ρ€Π°ΡšΠ΅ Π½Π° ΠΌΡ€Π΅ΠΆΠ½Π°Ρ‚Π° ΠΏΠΎΡ€Ρ‚Π° 8009, Π΄Π° сС ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π° содрТината Π½Π° која Π±ΠΈΠ»ΠΎ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° ΠΎΠ΄ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΎΡ‚ Π½Π° Π²Π΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π°Ρ˜ΡœΠΈ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ со поставки ΠΈ ΠΈΠ·Π²ΠΎΡ€Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π°.

Ранливоста, исто Ρ‚Π°ΠΊΠ°, ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° ΡƒΠ²ΠΎΠ· Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ‚ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π°, ΡˆΡ‚ΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΡ‚ Π½Π° сСрвСрот Π°ΠΊΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π΄ΠΎΠ·Π²ΠΎΠ»ΡƒΠ²Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅ Π΄Π° сС ΠΏΠΎΠ΄ΠΈΠ³Π½Π°Ρ‚ Π½Π° сСрвСрот (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π°ΠΏΠ°Ρ“Π°Ρ‡ΠΎΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡ€ΠΈΠΊΠ°Ρ‡ΠΈ JSP скрипта маскиран ΠΊΠ°ΠΊΠΎ слика ΠΏΡ€Π΅ΠΊΡƒ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π°Ρ€ΠΎΡ‚ Π·Π° ΠΏΡ€ΠΈΠΊΠ°Ρ‡ΡƒΠ²Π°ΡšΠ΅ Π½Π° сликата). Нападот ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·Π²Ρ€ΡˆΠΈ ΠΊΠΎΠ³Π° Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° сС испрати Π±Π°Ρ€Π°ΡšΠ΅ Π΄ΠΎ ΠΌΡ€Π΅ΠΆΠ½Π° ΠΏΠΎΡ€Ρ‚Π° со AJP ΡƒΠΏΡ€Π°Π²ΡƒΠ²Π°Ρ‡. Π‘ΠΏΠΎΡ€Π΅Π΄ ΠΏΡ€Π΅Π»ΠΈΠΌΠΈΠ½Π°Ρ€Π½ΠΈΡ‚Π΅ ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ, онлајн ΠΏΡ€ΠΎΠ½Π°Ρ˜Π΄Π΅Π½ повСќС ΠΎΠ΄ 1.2 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ домаќини ΠΏΡ€ΠΈΡ„Π°ΡœΠ°Π°Ρ‚ Π±Π°Ρ€Π°ΡšΠ° ΠΏΡ€Π΅ΠΊΡƒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΡ‚ AJP.

Ранливоста постои Π²ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΡ‚ AJP, ΠΈ Π½Π΅ ΠΏΠΎΠ²ΠΈΠΊΠ°Π½ Π³Ρ€Π΅ΡˆΠΊΠ° Π²ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°Ρ‚Π°. ΠŸΠΎΠΊΡ€Π°Ρ˜ ΠΏΡ€ΠΈΡ„Π°ΡœΠ°ΡšΠ΅Ρ‚ΠΎ ΠΊΠΎΠ½Π΅ΠΊΡ†ΠΈΠΈ ΠΏΡ€Π΅ΠΊΡƒ HTTP (ΠΏΠΎΡ€Ρ‚Π° 8080), Apache Tomcat стандардно Π΄ΠΎΠ·Π²ΠΎΠ»ΡƒΠ²Π° пристап Π΄ΠΎ Π²Π΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° ΠΏΡ€Π΅ΠΊΡƒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΡ‚ AJP (Apache Jserv Protocol, ΠΏΠΎΡ€Ρ‚Π° 8009), кој Π΅ Π±ΠΈΠ½Π°Ρ€Π΅Π½ Π°Π½Π°Π»ΠΎΠ³ Π½Π° HTTP ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ Π·Π° повисоки пСрформанси, Π²ΠΎΠΎΠ±ΠΈΡ‡Π°Π΅Π½ΠΎ сС користи ΠΏΡ€ΠΈ ΠΊΡ€Π΅ΠΈΡ€Π°ΡšΠ΅ кластСр Π½Π° Tomcat сСрвСри ΠΈΠ»ΠΈ Π·Π° Π·Π°Π±Ρ€Π·ΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° со Tomcat Π½Π° ΠΎΠ±Ρ€Π°Ρ‚Π΅Π½ прокси ΠΈΠ»ΠΈ балансСр Π½Π° ΠΎΠΏΡ‚ΠΎΠ²Π°Ρ€ΡƒΠ²Π°ΡšΠ΅.

AJP ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° стандардна Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π° Π·Π° пристап Π΄ΠΎ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ Π½Π° сСрвСрот, која ΠΌΠΎΠΆΠ΅ Π΄Π° сС користи, Π²ΠΊΠ»ΡƒΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈ добивањС Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ ΡˆΡ‚ΠΎ Π½Π΅ сС ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ Π½Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°ΡšΠ΅. AJP Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π±ΠΈΠ΄Π΅ достапСн само Π·Π° Π΄ΠΎΠ²Π΅Ρ€Π»ΠΈΠ²ΠΈ сСрвСри, Π½ΠΎ Π²ΡΡƒΡˆΠ½ΠΎΡΡ‚ стандардната ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π° Π½Π° Tomcat Π³ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π° ΡƒΠΏΡ€Π°Π²ΡƒΠ²Π°Ρ‡ΠΎΡ‚ Π½Π° ситС ΠΌΡ€Π΅ΠΆΠ½ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜ΡΠΈ ΠΈ ΠΏΡ€ΠΈΡ„Π°ΡœΠ° Π±Π°Ρ€Π°ΡšΠ° Π±Π΅Π· Π°Π²Ρ‚Π΅Π½Ρ‚ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°. ΠŸΡ€ΠΈΡΡ‚Π°ΠΏΠΎΡ‚ Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π΄ΠΎ ситС Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ Π½Π° Π²Π΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π°Ρ˜ΡœΠΈ ја содрТината Π½Π° WEB-INF, META-INF ΠΈ ситС Π΄Ρ€ΡƒΠ³ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΈ ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½ΠΈ ΠΏΡ€Π΅ΠΊΡƒ ΠΏΠΎΠ²ΠΈΠΊ Π΄ΠΎ ServletContext.getResourceAsStream(). AJP исто Ρ‚Π°ΠΊΠ° Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° користитС која Π±ΠΈΠ»ΠΎ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° Π²ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΈ достапни Π·Π° Π²Π΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π° ΠΊΠ°ΠΊΠΎ JSP скрипта.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΡ‚ сС ΠΏΠΎΡ˜Π°Π²ΡƒΠ²Π° ΠΎΡ‚ΠΊΠ°ΠΊΠΎ Π³Ρ€Π°Π½ΠΊΠ°Ρ‚Π° Tomcat 13.x бСшС објавСна ΠΏΡ€Π΅Π΄ 6 Π³ΠΎΠ΄ΠΈΠ½ΠΈ. ΠŸΠΎΠΊΡ€Π°Ρ˜ самиот ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ со Tomcat влијаС ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈ ΠΊΠΎΠΈ Π³ΠΎ користат, ΠΊΠ°ΠΊΠΎ ΡˆΡ‚ΠΎ сС Red Hat JBoss Web Server (JWS), JBoss Enterprise Application Platform (EAP), ΠΊΠ°ΠΊΠΎ ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡ˜Π½ΠΈ Π²Π΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠΈ користат ΠŸΡ€ΠΎΠ»Π΅Ρ‚Π½Π° Ρ‡ΠΈΠ·ΠΌΠ°. Π‘Π»ΠΈΡ‡Π½Π° ранливост (CVE-2020-1745) присутни Π²ΠΎ Π²Π΅Π±-сСрвСрот ΠŸΠΎΠ΄Π΄ΠΎΠ»Ρƒ, ΡˆΡ‚ΠΎ сС користи Π²ΠΎ сСрвСрот Π·Π° Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Wildfly. Π’ΠΎ JBoss ΠΈ Wildfly, AJP Π΅ стандардно ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ само Π²ΠΎ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡ˜Π½ΠΈ-ΠΏΠΎΠ»Π½Π°-ha.xml, ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡ˜Π½ΠΈ-ha.xml ΠΈ ha/full-ha ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ Π²ΠΎ domain.xml. Π’ΠΎ Spring Boot, ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ°Ρ‚Π° Π·Π° AJP Π΅ стандардно ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½Π°. Π’ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ², Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π³Ρ€ΡƒΠΏΠΈ ΠΈΠΌΠ°Π°Ρ‚ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΎ повСќС ΠΎΠ΄ дСсСтина Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π½Π° Сксплоатации (
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11).

ΠŸΠΎΠΏΡ€Π°Π²Π΅Π½Π° Π΅ ранливоста Π²ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΡ˜Π°Ρ‚Π° Π½Π° Tomcat 9.0.31, 8.5.51 ΠΈ 7.0.100 (ΠΎΠ΄Ρ€ΠΆΡƒΠ²Π°ΡšΠ΅ Π½Π° Π³Ρ€Π°Π½ΠΊΠ°Ρ‚Π° 6.x ΠΏΡ€Π΅ΠΊΠΈΠ½Π°Ρ‚Π°). ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ја слСдитС достапноста Π½Π° Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ°Ρ‚Π° Π²ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅Ρ‚ΠΈΡ‚Π΅ Π·Π° Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π° Π½Π° ΠΎΠ²ΠΈΠ΅ страници: Debian, Ubuntu, RHEL, Fedora, Π‘Π£EΠ•, FreeBSD. Како Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ја ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠΈΡ‚Π΅ услугата Tomcat AJP Connector (ΠΏΠΎΠ²Ρ€Π·Π΅Ρ‚Π΅ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ Π·Π° ΡΠ»ΡƒΡˆΠ°ΡšΠ΅ Π½Π° localhost ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Ρ˜Ρ‚Π΅ ја Π»ΠΈΠ½ΠΈΡ˜Π°Ρ‚Π° со ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ Π·Π° ΠΊΠΎΠ½Π΅ΠΊΡ‚ΠΎΡ€ = β€ž8009β€œ) Π°ΠΊΠΎ Π½Π΅ Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎ, ΠΈΠ»ΠΈ постави Π°Π²Ρ‚Π΅Π½Ρ‚ΠΈΡ†ΠΈΡ€Π°Π½ пристап со ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΈΡ‚Π΅ β€žΡ‚Π°Ρ˜Π½Π°β€œ ΠΈ β€žΠ°Π΄Ρ€Π΅ΡΠ°β€œ, Π΄ΠΎΠΊΠΎΠ»ΠΊΡƒ услугата сС користи Π·Π° ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ†ΠΈΡ˜Π° со Π΄Ρ€ΡƒΠ³ΠΈ сСрвСри ΠΈ прокси Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° mod_jk ΠΈ mod_proxy_ajp (mod_cluster Π½Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΠΆΡƒΠ²Π° Π°Π²Ρ‚Π΅Π½Ρ‚ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°).

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€