Isang kritikal na kahinaan sa malawakang ginagamit na Apache Log4j logging library ang nagdulot ng agarang pagtugon sa industriya ng teknolohiya, matapos ipakita ng mga mananaliksik na maaaring pagsamantalahan ng mga umaatake ang mga mahihinang Java application nang malayuan at posibleng kontrolin ang mga apektadong sistema gamit lamang ang isang espesyal na ginawang string.
Ang depekto, na sinusubaybayan bilang CVE-2021-44228 at karaniwang tinatawag na Log4Shell, ay nakakaapekto sa Log4j 2, isang open-source na bahagi na naka-embed sa napakaraming hanay ng mga enterprise application, cloud services, at mga produktong pangkonsumo. ng Cloudflare noong Biyernes na nagpatupad ito ng mga mitigation rule matapos kumpirmahin ang mga aktibong pagtatangka sa pagsasamantala, habang ang mga security team sa buong mundo ay nagsimulang mag-imbentaryo ng software na maaaring naglalaman ng mahinang library.
Ang isang maliit na library ay lumilikha ng isang malaking surface ng pag-atake
Ang Log4j ay dinisenyo upang itala ang mga kaganapan sa aplikasyon, ngunit ang mga vulnerable na bersyon ay maaaring bigyang-kahulugan ang ilang tekstong kontrolado ng attacker bilang mga tagubilin upang makuha at maisagawa ang remote code. Ang pag-uugaling iyon ay ginagawang isang potensyal na entry point ang isang routine logging function. Ipinaliwanag ng isang hiwalay na teknikal na pagsusuri ng Cloudflare kung paano maaaring abusuhin ang mga paghahanap ng Java Naming at Directory Interface upang idirekta ang isang vulnerable na server patungo sa imprastraktura na kontrolado ng attacker.
Pinalala pa ang panganib dahil sa pagiging laganap ng Log4j. Matagal na itong isinama ng mga developer sa Java software, kadalasan ay hindi direkta sa pamamagitan ng mga dependency na ilang patong ang lalim. Samakatuwid, maaaring malantad ang mga organisasyon nang hindi namamalayan na mayroon nang Log4j sa kanilang mga sistema. Ang kahinaan ay nakatanggap ng pinakamataas na marka ng kalubhaan sa ilalim ng karaniwang balangkas ng CVSS, na sumasalamin sa potensyal para sa pagsasamantala batay sa network nang walang paunang pagpapatotoo.
Naglabas ang Oracle ng alerto sa seguridad na tumutukoy sa mga apektadong produkto at hinihimok ang mga customer na maglapat ng mga available na patch. Naglathala rin ang Cisco ng isang advisory habang sinusuri nito ang isang malawak na portfolio ng mga produkto ng networking at kolaborasyon para sa mga mahihinang bahagi ng Log4j.
Ang problema sa pag-patch ay mas malaki kaysa sa isang update
Inilabas ng Apache ang Log4j 2.15.0 upang matugunan ang depekto, ngunit ang paglalapat ng pag-aayos na iyon sa buong ecosystem ng software ay hindi isang simpleng bagay ng pag-update ng isang pakete sa isang server. Maraming kumpanya ang umaasa sa mga komersyal na produkto na nagbubuklod ng Log4j sa loob, ibig sabihin ay kailangang maghintay ang mga customer para matukoy ng mga vendor ang mga apektadong bersyon, makagawa ng mga nasubukang patch at magbigay ng mga tagubilin sa pag-deploy.
Ang mga distributor ng Linux ay gumagalaw nang sabay-sabay. security notice ng Ubuntu ang mga apektadong package at pag-aayos, na nagbibigay sa mga administrator ng distribution-level path patungo sa remediation. Ngunit ang mga organisasyong nagpapatakbo ng mga custom na Java application ay dapat ding siyasatin ang mga build file, container, at packaged dependencies na maaaring hindi nakikita sa mga imbentaryo ng karaniwang operating system.
Naglathala ang Microsoft ng gabay noong Sabado na naglalarawan ng mga hakbang upang matukoy ang mga pagtatangka sa pagsasamantala, tukuyin ang mga mahihinang asset, at tugisin ang mga kahina-hinalang aktibidad. Nagbabala ang kumpanya na sinusuri na ng mga umaatake ang mga sistema, na nagpapataas ng pangangailangan ng mga organisasyon na mag-patch sa halip na ituring ang kahinaan bilang isang teoretikal na panganib.
Ang mga serbisyong nakaharap sa internet ang agarang prayoridad
Ang mga security team ay unang nakatuon sa mga application na nakaharap sa internet dahil maaaring kailanganin lamang ng isang attacker na ipadala ang malisyosong string sa pamamagitan ng isang field na kalaunan ay mai-log. Depende sa application, maaaring kasama rito ang mga header, mensahe sa chat, username o iba pang ordinaryong input. Ang landas ng pag-atake ay lalong nakababahala dahil maaaring hindi alam ng mga defensive team kung aling mga field ang naka-log o kung saan matatagpuan ang mga vulnerable code sa isang kumplikadong arkitektura ng serbisyo.
Isang ulat ng TechCrunch ang nagdokumento ng mga maagang indikasyon na sinusuri ng mga pangunahing serbisyo at produkto sa internet ang pagkakalantad, kabilang ang malawakang ginagamit na larong Minecraft. Ang lawak ng tugon ay nagpapakita kung bakit tinatrato ng mga security practitioner ang Log4Shell bilang isang kaganapan sa antas ng ecosystem sa halip na isang nakahiwalay na bug ng software.
Mahirap din matukoy. Ang isang organisasyong nag-patch ngayon ay maaaring kailanganin pa ring matukoy kung sinamantala ng mga attacker ang depekto bago ilapat ang update. Nangangailangan ito ng pagsusuri sa mga log, outbound network connection, mga bagong gawang proseso at iba pang mga indicator na maaaring magpakita ng remote code execution o follow-on activity.
Ang panganib ng pagiging dependent sa open source ay nangunguna na
Ang insidente ay malamang na magpatindi ng mas malawak na debate tungkol sa seguridad ng supply-chain ng software. Ang Log4j ay isang open-source software na pinapanatili sa loob ng Apache ecosystem at malayang ginagamit sa komersyal na teknolohiya. Ang halaga nito ay nagmumula mismo sa muling paggamit: hindi kailangang muling likhain ng mga developer ang pag-log para sa bawat aplikasyon. Ngunit ang parehong muling paggamit ay nangangahulugan na ang isang kahinaan sa isang pangunahing bahagi ay maaaring kumalat sa libu-libong produkto.
Para sa mga nangunguna sa teknolohiya, ang agarang gawain ay gumagana na: tukuyin ang Log4j 2 saanman ito umiiral, maglapat ng mga patched na bersyon o mga validated na mitigation, paghigpitan ang mga hindi kinakailangang outbound na koneksyon at subaybayan ang mga kompromiso. Sa mas mahabang panahon, inilalantad ng episode ang isang pangunahing kahinaan sa modernong pamamahala ng software. Maraming organisasyon ang kulang pa rin sa kumpletong imbentaryo ng mga third-party na bahagi na naka-embed sa kanilang mga aplikasyon, na nag-iiwan sa kanila na hindi masagot ang unang tanong na hinihingi ng isang kahinaan sa ganitong saklaw: saan ba tayo eksaktong nalalantad?