Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Log4j 2 Π²ΡΡΠ²Π»Π΅Π½Π° Π΅ΡΡ ΠΎΠ΄Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ (CVE-2021-45105), ΠΊΠΎΡΠΎΡΠ°Ρ Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π΄Π²ΡΡ ΠΏΡΠΎΡΠ»ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΎΡΠ½Π΅ΡΠ΅Π½Π° ΠΊ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ ΠΎΠΏΠ°ΡΠ½ΡΡ , Π½ΠΎ Π½Π΅ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ . ΠΠΎΠ²Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ·Π²Π°ΡΡ ΠΎΡΠΊΠ°Π· Π² ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈ ΠΈ ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π² Π²ΠΈΠ΄Π΅ Π·Π°ΡΠΈΠΊΠ»ΠΈΠ²Π°Π½ΠΈΡ ΠΈ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΡΡΡΠΎΠΊ. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΡΡΡΡΠ°Π½Π΅Π½Π° Π² ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΠΎΠ² Π½Π°Π·Π°Π΄ Π²ΡΠΏΡΡΠΊΠ΅ Log4j 2.17. ΠΠΏΠ°ΡΠ½ΠΎΡΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΡΠ³Π»Π°ΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎ, ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ Java 8.
Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½Ρ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠΎΡΠΌΠ°ΡΠ° Π²ΡΠ²ΠΎΠ΄Π° Π² Π»ΠΎΠ³ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ (Context Lookup), ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ${ctx:var}. Π Π²Π΅ΡΡΠΈΡΡ Log4j, Π½Π°ΡΠΈΠ½Π°Ρ Ρ 2.0-alpha1 ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ 2.16.0, ΠΎΡΡΡΡΡΡΠ²ΠΎΠ²Π°Π»Π° Π·Π°ΡΠΈΡΠ° ΠΎΡ Π½Π΅ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠ΅ΠΊΡΡΡΠΈΠΈ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ»ΠΎ Π°ΡΠ°ΠΊΡΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ΅Π· ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌ ΠΏΡΠΈ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅, Π²ΡΠ·Π²Π°ΡΡ Π·Π°ΡΠΈΠΊΠ»ΠΈΠ²Π°Π½ΠΈΠ΅, ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΠ΅Π΅ ΠΊ ΠΈΡΡΠ΅ΡΠΏΠ°Π½ΠΈΡ ΠΌΠ΅ΡΡΠ° Π² ΡΡΠ΅ΠΊΠ΅ ΠΈ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠΌΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»Π° ΠΏΡΠΈ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΡΠ°ΠΊΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ «${${::-${::-$${::-j}}}}».
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠ· ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Blumira ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ»ΠΈ Π²Π°ΡΠΈΠ°Π½Ρ Π°ΡΠ°ΠΊΠΈ Π½Π° ΡΡΠ·Π²ΠΈΠΌΡΠ΅ Java-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΠ΅ Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π²ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π°ΡΠ°ΠΊΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Java-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π‘ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΡΠ·Π²ΠΈΠΌΡΡ Java-ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΡ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Ρ ΠΎΡΡΠ° (localhost), ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΠΈΡ RMI-Π·Π°ΠΏΡΠΎΡΡ (Remote Method Invocation, 1099 ΠΏΠΎΡΡ), Π°ΡΠ°ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π° JavaScript-ΠΊΠΎΠ΄ΠΎΠΌ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΌ ΠΏΡΠΈ ΠΎΡΠΊΡΡΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠ»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ ΡΠ΅ΡΠ΅Π²ΡΠΌ ΠΏΠΎΡΡΠΎΠΌ Java-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ Π°ΡΠ°ΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ API WebSocket, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ HTTP-Π·Π°ΠΏΡΠΎΡΠΎΠ² Π½Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ same-origin (WebSocket ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΏΠΎΡΡΠΎΠ² Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ Ρ ΠΎΡΡΠ΅ Ρ ΡΠ΅Π»ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²).
Π’Π°ΠΊΠΆΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Google ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΎΡΠ΅Π½ΠΊΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ Ρ Log4j. ΠΠΎ Π΄Π°Π½Π½ΡΠΌ Google, ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Π΅Ρ 8% ΠΎΡ Π²ΡΠ΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Maven Central. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΎΠΊΠ°Π·Π°Π»ΠΈΡΡ ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½Ρ 35863 Java-ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Log4j ΠΏΡΡΠΌΡΠΌΠΈ ΠΈ ΠΊΠΎΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ Log4j ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΡΠΌΠΎΠΉ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π² 17% ΡΠ»ΡΡΠ°Π΅Π², Π° Π² 83% ΠΎΡ Π²Π°ΡΠ΅Π½Π½ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΎΡ Log4j, Ρ.Π΅. Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π²ΡΠΎΡΠΎΠ³ΠΎ ΠΈ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ (21% — Π²ΡΠΎΡΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, 12% — ΡΡΠ΅ΡΡΠ΅Π³ΠΎ, 14% — ΡΠ΅ΡΠ²ΡΡΡΠΎΠ³ΠΎ, 26% — ΠΏΡΡΠΎΠ³ΠΎ, 6% — ΡΠ΅ΡΡΠΎΠ³ΠΎ). Π’Π΅ΠΌΠΏΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎΠΊΠ° ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΆΠ΅Π»Π°ΡΡ Π»ΡΡΡΠ΅Π³ΠΎ, ΡΠ΅ΡΠ΅Π· Π½Π΅Π΄Π΅Π»Ρ ΠΏΠΎΡΠ»Π΅ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΈΠ· 35863 Π²ΡΡΠ²Π»Π΅Π½Π½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΡΡΡΠ°Π½Π΅Π½Π° ΠΏΠΎΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ Π² 4620, Ρ.Π΅. Π² 13%.
Π’Π΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, ΠΠ³Π΅Π½ΡΡΡΠ²ΠΎ ΠΏΠΎ ΠΊΠΈΠ±Π΅ΡΠ±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ Π·Π°ΡΠΈΡΠ΅ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ Π‘Π¨Π ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΎ ΡΠΊΡΡΡΠ΅Π½Π½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΠΎΠ±ΡΠ·ΡΠ²Π°ΡΡΡΡ ΡΠ΅Π΄Π΅ΡΠ°Π»ΡΠ½ΡΠ΅ Π°Π³Π΅Π½ΡΡΡΠ²Π° ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌ, ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½Π½ΡΡ
ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π² Log4j, ΠΈ Π΄ΠΎ 23 Π΄Π΅ΠΊΠ°Π±ΡΡ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ, Π±Π»ΠΎΠΊΠΈΡΡΡΡΠΈΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΠΎ 28 Π΄Π΅ΠΊΠ°Π±ΡΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΠΌ ΠΏΡΠ΅Π΄ΠΏΠΈΡΠ°Π½ΠΎ ΠΎΡΡΠΈΡΠ°ΡΡΡΡ ΠΎ ΠΏΡΠΎΠ΄Π΅Π»Π°Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅. ΠΠ»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΡΡ
ΡΠΈΡΡΠ΅ΠΌ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½ ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ², Π² ΠΊΠΎΡΠΎΡΡΡ
ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΎ ΠΏΡΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ (Π² ΡΠΏΠΈΡΠΊΠ΅ Π±ΠΎΠ»Π΅Π΅ 23 ΡΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ).
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru