Уязвимост Π² 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 6.x, ΠΈΠ·Π΄Π°Π΄Π΅Π½Π° ΠΏΡ€Π΅Π΄ΠΈ 13 Π³ΠΎΠ΄ΠΈΠ½ΠΈ. ОсвСн самия Tomcat, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ засяга ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈ, ΠΊΠ°Ρ‚ΠΎ Red Hat JBoss Web Server (JWS), JBoss Enterprise Application Platform (EAP), Π° ΡΡŠΡ‰ΠΎ ΠΈ самостоятСлни ΡƒΠ΅Π± прилоТСния, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ Spring Boot. Аналогичната уязвимост (CVE-2020-1745) ΠΏΡ€ΠΈΡΡŠΡΡ‚Π²Π° Π² ΡƒΠ΅Π± ΡΡŠΡ€Π²ΡŠΡ€Π° Undertow, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π² ΡΡŠΡ€Π²ΡŠΡ€Π° Wildfly. Π’ JBoss ΠΈ Wildfly ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΡŠΡ‚ AJP ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ само Π² standalone-full-ha.xml, standalone-ha.xml ΠΈ ha/full-ha ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ Π² domain.xml. ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° AJP Π² Spring Boot Π΅ Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π° ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅. Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π³Ρ€ΡƒΠΏΠΈ са ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ дСсСт Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π½Π° Сксплоити (
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, SUSE, FreeBSD. ΠšΠ°Ρ‚ΠΎ ΠΎΠ±Ρ…ΠΎΠ΄Π½Π° мярка Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚Π΅ услугата Tomcat AJP Connector (Π΄Π° ΡΠ²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ ΡΠ»ΡƒΡˆΠ°Ρ‰ΠΈΡ сокСт към localhost ΠΈΠ»ΠΈ Π΄Π° ΠΊΠΎΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Ρ‚Π΅ Ρ€Π΅Π΄Π° с Connector port = "8009"), Π°ΠΊΠΎ тя Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°, ΠΈΠ»ΠΈ Π΄Π° настроят Π΄Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚Π΅ автСнтификация с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΈΡ‚Π΅ "secret" ΠΈ "address", Π°ΠΊΠΎ услугата сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° взаимодСйствиС с Π΄Ρ€ΡƒΠ³ΠΈ ΡΡŠΡ€Π²ΡŠΡ€ΠΈ ΠΈ прокси, Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° mod_jk ΠΈ mod_proxy_ajp (mod_cluster Π½Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° автСнтификация).

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster