ProHoster > Blogs > AdministrÄcija > KÄ nepatentÄtais Docker API un kopienas publiskie attÄli tiek izmantoti, lai izplatÄ«tu kriptovalÅ«tas kalnraÄus
KÄ nepatentÄtais Docker API un kopienas publiskie attÄli tiek izmantoti, lai izplatÄ«tu kriptovalÅ«tas kalnraÄus
MÄs analizÄjÄm datus, kas savÄkti, izmantojot medus podu konteinerus, kurus izveidojÄm, lai izsekotu draudiem. MÄs atklÄjÄm ievÄrojamas aktivitÄtes no nevÄlamiem vai neatļautiem kriptovalÅ«tas ieguvÄjiem, kas tika izvietoti kÄ negodÄ«gi konteineri, izmantojot kopienas publicÄtu attÄlu vietnÄ Docker Hub. AttÄls tiek izmantots kÄ daļa no pakalpojuma, kas nodroÅ”ina ļaunprÄtÄ«gas kriptovalÅ«tas kalnraÄus.
TurklÄt ir instalÄtas programmas darbam ar tÄ«kliem, lai iekļūtu atvÄrtos blakus esoÅ”ajos konteineros un lietojumprogrammÄs.
MÄs atstÄjam savus meduspodus tÄdus, kÄdi ir, tas ir, ar noklusÄjuma iestatÄ«jumiem, bez jebkÄdiem droŔības pasÄkumiem vai papildu programmatÅ«ras instalÄÅ”anas. LÅ«dzu, Åemiet vÄrÄ, ka Docker ir ieteikumi sÄkotnÄjai iestatÄ«Å”anai, lai izvairÄ«tos no kļūdÄm un vienkÄrÅ”Äm ievainojamÄ«bÄm. Bet izmantotie meduspodi ir konteineri, kas paredzÄti, lai atklÄtu uzbrukumus, kas vÄrsti pret konteineru platformu, nevis konteineros esoÅ”ajÄm lietojumprogrammÄm.
AtklÄtÄ Ä¼aunprÄtÄ«gÄ darbÄ«ba ir arÄ« ievÄrojama, jo tai nav nepiecieÅ”ama ievainojamÄ«ba un tÄ ir arÄ« neatkarÄ«ga no Docker versijas. Nepareizi konfigurÄta un lÄ«dz ar to atvÄrta konteinera attÄla atraÅ”ana ir viss, kas uzbrucÄjiem nepiecieÅ”ams, lai inficÄtu daudzus atvÄrtus serverus.
NeaizvÄrta Docker API ļauj lietotÄjam veikt plaÅ”u darbÄ«bu klÄstu komandas, tostarp, iegÅ«stot darbojoÅ”os konteineru sarakstu, iegÅ«stot žurnÄlus no konkrÄta konteinera, sÄkÅ”anu, apturÄÅ”anu (tostarp piespiedu kÄrtÄ) un pat izveidojot jaunu konteineru no konkrÄta attÄla ar noteiktiem iestatÄ«jumiem.
KreisajÄ pusÄ ir ļaunprÄtÄ«gas programmatÅ«ras piegÄdes veids. LabajÄ pusÄ ir uzbrucÄja vide, kas ļauj attÄlinÄti izlaist attÄlus.
3762 atvÄrto Docker API izplatÄ«Å”ana pa valstÄ«m. Pamatojoties uz Shodan meklÄÅ”anu, kas datÄta ar 12.02.2019/XNUMX/XNUMX
Uzbrukuma Ä·Ädes un kravnesÄ«bas iespÄjas
Ä»aunprÄtÄ«ga darbÄ«ba konstatÄta ne tikai ar meduspodu palÄ«dzÄ«bu. Dati no Shodan liecina, ka atklÄto Docker API skaits (skatiet otro grafiku) ir palielinÄjies, kopÅ” mÄs pÄtÄ«jÄm nepareizi konfigurÄtu konteineru, ko izmantoja kÄ tiltu Monero kriptovalÅ«tas ieguves programmatÅ«ras izvietoÅ”anai. PagÄjuÅ”Ä gada oktobrÄ« (2018, aktuÄlie dati tu vari izskatÄ«ties Å”Ädiapm. tulkotÄjs) bija tikai 856 atvÄrtas API.
Medus podu žurnÄlu pÄrbaude parÄdÄ«ja, ka konteinera attÄlu izmantoÅ”ana bija saistÄ«ta arÄ« ar izmantoÅ”anu ngrok, rÄ«ks droÅ”u savienojumu izveidoÅ”anai vai trafika pÄrsÅ«tÄ«Å”anai no publiski pieejamiem punktiem uz noteiktÄm adresÄm vai resursiem (piemÄram, localhost). Tas ļauj uzbrucÄjiem dinamiski izveidot vietrÄžus URL, piegÄdÄjot lietderÄ«go slodzi uz atvÄrtu serveri. TÄlÄk ir sniegti kodu piemÄri no žurnÄliem, kas parÄda ngrok pakalpojuma ļaunprÄtÄ«gu izmantoÅ”anu:
KÄ redzat, augÅ”upielÄdÄtie faili tiek lejupielÄdÄti no pastÄvÄ«gi mainÄ«giem URL. Å iem vietrÄžiem URL ir Ä«ss derÄ«guma termiÅÅ”, tÄpÄc lietderÄ«gÄs slodzes nevar lejupielÄdÄt pÄc derÄ«guma termiÅa beigÄm.
Ir divas kravnesÄ«bas iespÄjas. Pirmais ir apkopots ELF miner operÄtÄjsistÄmai Linux (definÄts kÄ Coinminer.SH.MALXMR.ATNO), kas savienojas ar ieguves baseinu. Otrais ir skripts (TrojanSpy.SH.ZNETMAP.A), kas paredzÄts noteiktu tÄ«kla rÄ«ku iegÅ«Å”anai, ko izmanto tÄ«kla diapazonu skenÄÅ”anai un pÄc tam jaunu mÄrÄ·u meklÄÅ”anai.
PilinÄtÄja skripts iestata divus mainÄ«gos, kurus pÄc tam izmanto, lai izvietotu kriptovalÅ«tas kalnraÄu. MainÄ«gais HOST satur vietrÄdi URL, kurÄ atrodas ļaunprÄtÄ«gie faili, un RIP mainÄ«gais ir izvietojamÄ kalnraÄu faila nosaukums (faktiski jaucÄjvÄrds). MainÄ«gais HOST mainÄs ikreiz, kad mainÄs jaukÅ”anas mainÄ«gais. Skripts arÄ« mÄÄ£ina pÄrbaudÄ«t, vai uzbruktajÄ serverÄ« nedarbojas citi kriptovalÅ«tas ieguvÄji.
HOST un RIP mainÄ«go piemÄri, kÄ arÄ« koda fragments, ko izmanto, lai pÄrbaudÄ«tu, vai nedarbojas citi kalnraÄi
Pirms kalnraÄu palaiÅ”anas tas tiek pÄrdÄvÄts par nginx. Citas Ŕī skripta versijas pÄrdÄvÄ kalnraÄu uz citiem likumÄ«giem pakalpojumiem, kas var bÅ«t pieejami Linux vidÄs. Parasti ar to pietiek, lai apietu palaiÅ”anas procesu saraksta pÄrbaudes.
MeklÄÅ”anas skriptam ir arÄ« funkcijas. Tas darbojas ar to paÅ”u URL pakalpojumu, lai izvietotu nepiecieÅ”amos rÄ«kus. Starp tiem ir zmap binÄrs, ko izmanto tÄ«klu skenÄÅ”anai un atvÄrto portu saraksta iegÅ«Å”anai. Skripts arÄ« ielÄdÄ citu binÄro failu, kas tiek izmantots, lai mijiedarbotos ar atrastajiem pakalpojumiem un saÅemtu no tiem banerus, lai noteiktu papildu informÄciju par atrasto pakalpojumu (piemÄram, tÄ versiju).
Skripts arÄ« iepriekÅ” nosaka dažus skenÄjamos tÄ«kla diapazonus, taÄu tas ir atkarÄ«gs no skripta versijas. Tas arÄ« iestata mÄrÄ·a portus no pakalpojumiem, Å”ajÄ gadÄ«jumÄ no Docker, pirms skenÄÅ”anas.
TiklÄ«dz iespÄjamie mÄrÄ·i tiek atrasti, baneri no tiem tiek automÄtiski noÅemti. Skripts arÄ« filtrÄ mÄrÄ·us atkarÄ«bÄ no interesÄjoÅ”ajiem pakalpojumiem, lietojumprogrammÄm, komponentiem vai platformÄm: Redis, Jenkins, Drupal, MODX, Kubernetes meistars, Docker 1.16 klients un Apache CouchDB. Ja skenÄtais serveris atbilst kÄdam no tiem, tas tiek saglabÄts teksta failÄ, ko uzbrucÄji vÄlÄk var izmantot turpmÄkai analÄ«zei un uzlauÅ”anai. Å ie teksta faili tiek augÅ”upielÄdÄti uzbrucÄju serveros, izmantojot dinamiskas saites. Tas nozÄ«mÄ, ka katram failam tiek izmantots atseviŔķs URL, kas nozÄ«mÄ, ka turpmÄkÄ piekļuve ir sarežģīta.
Uzbrukuma vektors ir Docker attÄls, kÄ redzams nÄkamajÄs divÄs koda daļÄs.
AugÅ”pusÄ ir pÄrdÄvÄÅ”ana par likumÄ«gu pakalpojumu, bet apakÅ”Ä ir norÄdÄ«ts, kÄ zmap tiek izmantots tÄ«klu skenÄÅ”anai.
AugÅ”pusÄ ir iepriekÅ” noteikti tÄ«kla diapazoni, apakÅ”Ä ir Ä«paÅ”i porti pakalpojumu, tostarp Docker, meklÄÅ”anai
EkrÄnuzÅÄmums parÄda, ka kalnu ÄokuroÅ”anÄs attÄls ir lejupielÄdÄts vairÄk nekÄ 10 miljonus reižu
Pamatojoties uz Alpine Linux un curl, resursefektÄ«vu CLI rÄ«ku failu pÄrsÅ«tÄ«Å”anai, izmantojot dažÄdus protokolus, varat izveidot Docker attÄls. KÄ redzams iepriekÅ”ÄjÄ attÄlÄ, Å”is attÄls jau ir lejupielÄdÄts vairÄk nekÄ 10 miljonus reižu. Liels lejupielÄžu skaits var nozÄ«mÄt Ŕī attÄla izmantoÅ”anu kÄ ieejas punktu; Å”is attÄls tika atjauninÄts pirms vairÄk nekÄ seÅ”iem mÄneÅ”iem; lietotÄji ne tik bieži lejupielÄdÄja citus attÄlus no Ŕī krÄtuves. ProgrammÄ Docker ieejas punkts - instrukciju kopa, ko izmanto, lai konfigurÄtu konteineru tÄ palaiÅ”anai. Ja ieejas punkta iestatÄ«jumi ir nepareizi (piemÄram, konteiners ir atstÄts atvÄrts no interneta), attÄlu var izmantot kÄ uzbrukuma vektoru. UzbrucÄji to var izmantot, lai piegÄdÄtu lietderÄ«go kravu, ja viÅi atrod nepareizi konfigurÄtu vai atvÄrtu konteineru, kas nav atbalstÄ«ts.
Ir svarÄ«gi atzÄ«mÄt, ka Å”is attÄls (alpu ÄokuroÅ”anÄs) pats par sevi nav ļaunprÄtÄ«gs, taÄu, kÄ redzat iepriekÅ”, to var izmantot ļaunprÄtÄ«gu funkciju veikÅ”anai. LÄ«dzÄ«gus Docker attÄlus var izmantot arÄ« ļaunprÄtÄ«gu darbÄ«bu veikÅ”anai. MÄs sazinÄjÄmies ar Docker un sadarbojÄmies ar viÅiem Å”ajÄ jautÄjumÄ.
Ieteikumi
Nepareizs iestatÄ«jums paliek pastÄvÄ«ga problÄma daudziem uzÅÄmumiem, Ä«paÅ”i tiem, kas ievieÅ” DevOps, kas vÄrsta uz strauju attÄ«stÄ«bu un piegÄdi. Visu pasliktina nepiecieÅ”amÄ«ba ievÄrot audita un uzraudzÄ«bas noteikumus, nepiecieÅ”amÄ«ba uzraudzÄ«t datu konfidencialitÄti, kÄ arÄ« to neievÄroÅ”anas radÄ«tais milzÄ«gais kaitÄjums. DroŔības automatizÄcijas iekļauÅ”ana izstrÄdes dzÄ«ves ciklÄ ne tikai palÄ«dz atrast droŔības robus, kas citÄdi varÄtu palikt nepamanÄ«ti, bet arÄ« palÄ«dz samazinÄt nevajadzÄ«gu darba slodzi, piemÄram, palaist papildu programmatÅ«ras bÅ«vÄjumus katrai atklÄtajai ievainojamÄ«bai vai nepareizai konfigurÄcijai pÄc lietojumprogrammas izvietoÅ”anas.
Å ajÄ rakstÄ apspriestais negadÄ«jums uzsver nepiecieÅ”amÄ«bu no paÅ”a sÄkuma Åemt vÄrÄ droŔību, tostarp Å”Ädus ieteikumus:
SistÄmas administratoriem un izstrÄdÄtÄjiem: vienmÄr pÄrbaudiet API iestatÄ«jumus, lai pÄrliecinÄtos, ka viss ir konfigurÄts, lai pieÅemtu pieprasÄ«jumus tikai no konkrÄta servera vai iekÅ”ÄjÄ tÄ«kla.
Izmantojiet automÄtisku izpildlaiku un attÄlu skenÄÅ”anu, lai iegÅ«tu papildu informÄciju par procesiem, kas darbojas konteinerÄ (piemÄram, lai noteiktu viltojumus vai meklÄtu ievainojamÄ«bas). Lietojumprogrammu kontrole un integritÄtes uzraudzÄ«ba palÄ«dz izsekot neparastÄm izmaiÅÄm serveros, failos un sistÄmas apgabalos.
Trendmicro palÄ«dz DevOps komandÄm droÅ”i izveidot, Ätri izlaist un palaist jebkurÄ vietÄ. Trend Micro HibrÄ«da mÄkoÅdroŔība NodroÅ”ina jaudÄ«gu, racionalizÄtu un automatizÄtu droŔību visÄ organizÄcijas DevOps konveijerÄ un nodroÅ”ina vairÄkus aizsardzÄ«bu pret draudiem. XGen lai aizsargÄtu fiziskÄs, virtuÄlÄs un mÄkoÅa darba slodzes izpildlaikÄ. Tas arÄ« palielina konteinera droŔību Dziļa droŔība Šø DziļÄs droŔības viedÄ pÄrbaude, kas skenÄ Docker konteinera attÄlus, lai atrastu ļaunprÄtÄ«gu programmatÅ«ru un ievainojamÄ«bas jebkurÄ izstrÄdes procesa punktÄ, lai novÄrstu draudus pirms to izvietoÅ”anas.
uz Docker video kurss Praktiski skaļruÅi parÄda, kÄdi iestatÄ«jumi vispirms ir jÄveic, lai samazinÄtu iepriekÅ” aprakstÄ«tÄs situÄcijas iespÄjamÄ«bu vai pilnÄ«bÄ izvairÄ«tos no tÄs. Un 19.-21.augustÄ tieÅ”saistes intensÄ«vajÄ DevOps Tools&Cheats Å Ä«s un lÄ«dzÄ«gas droŔības problÄmas varat pÄrrunÄt ar kolÄÄ£iem un praktizÄjoÅ”iem skolotÄjiem pie apaÄ¼Ä galda, kur ikviens var izteikties un ieklausÄ«ties pieredzÄjuÅ”o kolÄÄ£u sÄpÄs un veiksmÄs.