Praktik terbaik untuk melindungi dari serangan penambangan mata uang kripto

Last reviewed 2023-10-20 UTC

Penambangan mata uang kripto (disebut juga penambangan bitcoin) adalah proses yang digunakan untuk membuat koin kripto baru dan memverifikasi transaksi. Serangan penambangan mata uang kripto terjadi saat penyerang yang mendapatkan akses ke lingkungan Anda mungkin juga mengeksploitasi resource Anda untuk menjalankan operasi penambangan mereka sendiri dengan biaya Anda.

Menurut laporan Threat Horizons November 2021, serangan penambangan mata uang kripto adalah cara paling umum yang digunakan penyerang untuk mengeksploitasi resource komputasi Anda setelah mereka membahayakan lingkungan Google Cloud Anda. Laporan tersebut juga menyebutkan bahwa penyerang biasanya mendownload software penambangan mata uang kripto ke resource Anda dalam waktu 22 detik setelah memaksa sistem Anda. Penambangan mata uang kripto dapat meningkatkan biaya dengan cepat, dan serangan penambangan mata uang kripto dapat menimbulkan tagihan yang jauh lebih besar daripada yang Anda perkirakan. Karena biaya dapat bertambah dengan cepat, Anda harus menerapkan langkah-langkah perlindungan, detektif, dan dan mitigasi untuk melindungi organisasi Anda.

Dokumen ini ditujukan untuk arsitek keamanan dan administrator. Panduan ini menjelaskan praktik terbaik yang dapat Anda ambil untuk membantu melindungi resource Google Cloud Anda dari serangan penambangan mata uang kripto dan membantu mengurangi dampaknya jika terjadi serangan.

Identifikasi vektor ancaman

Untuk menentukan eksposur organisasi Anda terhadap serangan penambangan mata uang kripto, Anda harus mengidentifikasi vektor ancaman yang berlaku pada organisasi Anda.

Laporan Threat Horizons November 2021 menunjukkan bahwa sebagian besar penyerang mengeksploitasi kerentanan seperti berikut:

  • Sandi lemah atau tidak ada sandi untuk akun pengguna
  • Lemah atau tidak adanya autentikasi untuk Google Cloud API
  • Kerentanan dalam software pihak ketiga
  • Kesalahan konfigurasi di lingkungan Google Cloud Anda atau pada aplikasi pihak ketiga yang Anda jalankan di Google Cloud
  • Kebocoran kredensial, seperti kunci akun layanan yang dipublikasikan di repositori GitHub publik

Selain itu, Anda dapat berlangganan dan meninjau dokumen berikut untuk melihat daftar vektor ancaman:

Setelah mengidentifikasi vektor ancaman yang berlaku bagi Anda, gunakan praktik terbaik lainnya dalam dokumen ini untuk membantu mengatasinya.

Melindungi akun dan kredensial akun

Penyerang dapat mengeksploitasi akun yang tidak diawasi atau tidak dikelola untuk mendapatkan akses ke resource Compute Engine Anda. Google Cloud mencakup berbagai opsi yang dapat Anda konfigurasi untuk mengelola akun dan grup.

Membatasi akses ke lingkungan cloud Anda

Tabel berikut menjelaskan.kebijakan organisasi yang dapat Anda gunakan untuk menentukan siapa saja yang dapat mengakses lingkungan cloud Anda.

Batasan kebijakan organisasi Deskripsi
Berbagi dengan domain terbatas Tentukan ID pelanggan untuk Cloud Identity atau Google Workspace yang valid.
Akun AWS yang diizinkan yang dapat dikonfigurasi untuk workload identity federation di Cloud IAM Dalam lingkungan hybrid cloud, tentukan akun AWS yang dapat menggunakan federasi identifikasi workload.
Penyedia identitas eksternal yang diizinkan untuk workload Dalam lingkungan hybrid cloud, tentukan penyedia identitas yang dapat digunakan oleh workload Anda.

Siapkan MFA atau 2FA

Cloud Identity mendukung autentikasi multi-faktor (MFA) menggunakan berbagai metode. Konfigurasikan MFA, khususnya untuk akun istimewa Anda. Untuk mengetahui informasi selengkapnya, lihat Menerapkan MFA seragam untuk resource yang dimiliki perusahaan.

Untuk membantu mencegah serangan phishing yang dapat menyebabkan serangan penambangan mata uang kripto, gunakan Kunci Keamanan Titan untuk autentikasi dua langkah (2FA).

Mengonfigurasi hak istimewa terendah

Hak istimewa terendah mungkinkan pengguna dan layanan hanya memiliki akses yang mereka butuhkan untuk melakukan tugas tertentu. Hak istimewa terendah memperlambat kemampuan serangan untuk menyebar ke seluruh organisasi karena penyerang tidak dapat mengeskalasikan hak istimewanya dengan mudah.

Untuk memenuhi kebutuhan organisasi Anda, gunakan kebijakan, peran, dan izin yang terperinci di Identity and Access Management (IAM). Selain itu, analisis izin Anda secara rutin menggunakan pemberi rekomendasi peran dan Penganalisis Kebijakan. Pemberi rekomendasi peran menggunakan machine learning untuk menganalisis setelan Anda dan memberikan rekomendasi guna membantu memastikan setelan peran Anda mematuhi prinsip hak istimewa terendah. Dengan Penganalisis Kebijakan, Anda dapat melihat akun mana yang memiliki akses ke resource cloud Anda.

Pantau akun

Jika Anda menggunakan grup untuk menetapkan kebijakan IAM, pantau log grupuntuk memastikan tidak ada akun non-perusahaan yang ditambahkan. Selain itu, batasi identitas, berdasarkan domain Cloud Identity atau Google Workspace yang dapat mengakses resource Anda. Untuk informasi selengkapnya, lihat Membatasi identitas berdasarkan domain.

Pastikan bahwa prosedur penghentian organisasi Anda menyertakan proses untuk menonaktifkan akun dan mereset izin saat karyawan keluar dari organisasi atau berganti peran. Untuk informasi selengkapnya, lihat Mencabut Akses ke Google Cloud.

Untuk mengaudit pengguna dan grup, lihat Log audit untuk Google Workspace.

Mengurangi eksposur internet untuk resource Compute Engine dan GKE Anda

Mengurangi eksposur internet berarti penyerang memiliki lebih sedikit peluang untuk menemukan dan mengeksploitasi kerentanan. Bagian ini menjelaskan praktik terbaik yang dapat membantu melindungi VM Compute Engine dan cluster Google Kubernetes Engine (GKE) Anda dari eksposur internet.

Batasi traffic eksternal

Jangan menetapkan alamat IP eksternal ke VM Anda. Anda dapat menggunakanNonaktifkan penggunaan IPv6 Eksternal VPC batasan kebijakan organisasi untuk menolak alamat IP eksternal ke semua VM. Untuk melihat VM yang memiliki alamat IP yang dapat diakses secara publik, lihat Menemukan alamat IP untuk instance. Jika arsitektur Anda memerlukan alamat IP eksternal untuk VM, gunakan kebijakan organisasi Menentukan IP eksternal yang diizinkan untuk instance VM, yang memungkinkan Anda menentukan daftar nama instance yang diizinkan untuk memiliki alamat IP eksternal.

Batasi node GKE ke alamat IP internal saja. Untuk mengetahui informasi selengkapnya, lihat Membuat cluster pribadi.

Batasi traffic masuk (ingress) dan traffic keluar (egress) ke internet untuk semua resource dalam project Anda. Untuk mengetahui informasi selengkapnya, lihat Aturan firewall VPC dan Kebijakan firewall hierarkis.

Untuk mengetahui informasi selengkapnya tentang pembatasan traffic eksternal, seperti mengonfigurasi Cloud NAT guna mengizinkan komunikasi keluar untuk VM tanpa alamat IP eksternal atau menggunakan proxy load balancer untuk komunikasi masuk, baca Menghubungkan ke VM dengan aman.

Menggunakan perimeter layanan

Buat perimeter layanan untuk resource Compute Engine dan GKE Anda menggunakan Kontrol Layanan VPC. Dengan Kontrol Layanan VPC, Anda dapat mengontrol komunikasi ke resource Compute Engine dari luar perimeter. Perimeter layanan memungkinkan komunikasi gratis di dalam perimeter, memblokir pemindahan data yang tidak sah, dan memblokir komunikasi layanan dari luar perimeter. Gunakan atribut akses kontekstual seperti alamat IP dan identitas pengguna untuk mengontrol akses lebih lanjut ke layanan Google Cloud dari internet.

Menyiapkan keamanan zero-trust

Siapkan keamanan zero-trust dengan BeyondCorp Enterprise. BeyondCorp Enterprise menyediakan perlindungan terhadap ancaman dan perlindungan data serta kontrol akses. Jika workload Anda berada di infrastruktur lokal dan di Google Cloud, konfigurasikan Identity-Aware Proxy (IAP). Konfigurasi penerusan TCP untuk mengontrol siapa saja yang dapat mengakses layanan administratif, seperti SSH dan RDP di resource Google Cloud Anda dari internet publik. Penerusan TCP mencegah layanan ini terekspos ke internet secara terbuka.

Mengamankan resource Compute Engine dan GKE

Penambangan mata uang kripto memerlukan akses ke resource Compute Engine dan GKE Anda. Bagian ini menjelaskan praktik terbaik yang akan membantu Anda mengamankan resource Compute Engine dan GKE.

Mengamankan image VM Anda

Gunakan image VM yang telah melalui proses hardening dan seleksi dengan mengonfigurasi Shielded VM. Shielded VM dirancang untuk mencegah pemuatan kode berbahaya seperti malware atau rootkit tingkat kernel selama siklus booting. Shielded VM memberikan keamanan booting, pemantauan integritas, dan menggunakan Virtual Trusted Platform Module (vTPM).

Untuk membatasi image mana yang dapat di-deploy, Anda dapat menerapkan kebijakan image tepercaya. Kebijakan organisasi Tentukan project gambar tepercaya menentukan project mana yang dapat menyimpan image dan persistent disk. Pastikan hanya ada image tepercaya dan yang dikelola dalam project tersebut.

Di GKE, pastikan container Anda menggunakan images dasar, yang diupdate secara rutin dengan patch keamanan. Selain itu, pertimbangkan image container tanpa distro yang hanya menyertakan aplikasi Anda dan dependensi runtime-nya.

Mengamankan akses SSH ke VM

Konfigurasi Login OS untuk mengelola akses SSH ke VM yang berjalan di Compute Engine. Login OS menyederhanakan pengelolaan akses SSH dengan menautkan akun pengguna Linux administrator ke identitas Google mereka. Login OS berfungsi dengan IAM sehingga Anda dapat menentukan hak istimewa yang dimiliki oleh administrator.

Untuk mengetahui informasi selengkapnya, lihat Melindungi VM dan container.

Batasi akun layanan

Sebuah akun layanan adalah akun Google Cloud yang digunakan workload untuk memanggil Google API terhadap suatu layanan.

Jangan izinkan Google Cloud menetapkan peran akun layanan default ke resource saat dibuat. Untuk informasi selengkapnya, lihat Membatasi penggunaan akun layanan.

Jika aplikasi Anda berjalan di luar Google Cloud, tetapi memerlukan akses ke resource Google Cloud, jangan gunakan kunci akun layanan. Sebagai gantinya, terapkan workload identity federation untuk mengelola identitas eksternal dan izin yang Anda kaitkan dengan identitas tersebut. Untuk GKE, Anda dapat menerapkan workload identities. Untuk mengetahui informasi selengkapnya, baca artikel Memilih metode autentikasi yang tepat untuk kasus penggunaan Anda.

Untuk praktik terbaik lainnya yang membantu mengamankan akun layanan, lihat Praktik terbaik untuk menggunakan akun layanan.

Memantau penggunaan akun layanan dan kunci akun layanan

Siapkan pemantauan agar Anda dapat melacak penggunaan akun layanan dan kunci akun layanan di organisasi Anda. Untuk mendapatkan visibilitas pola penggunaan penting, gunakan insight akun layanan. Misalnya, Anda dapat menggunakan insight akun layanan untuk melacak cara izin yang digunakan dalam project Anda dan untuk mengidentifikasi akun layanan yang tidak digunakan. Untuk melihat kapan kunci dan akun layanan Anda terakhir digunakan guna memanggil Google API untuk aktivitas autentikasi, lihat penggunaan terbaru untuk akun layanan dan kunci akun layanan.

Memantau dan mem-patch VM dan container

Untuk memulai serangan penambangan mata uang kripto, penyerang sering kali mengeksploitasi kesalahan konfigurasi dan kerentanan software untuk mendapatkan akses ke resource Compute Engine dan GKE.

Untuk mendapatkan insight tentang kerentanan dan kesalahan konfigurasi yang berlaku pada lingkungan Anda, gunakan Security Health Analytics untuk memindai resource Anda. Secara khusus, jika Anda menggunakan Security Command Center Premium, tinjau setiap temuan instance Compute Engine dan temuan Container dan atur proses untuk menyelesaikannya dengan cepat.

Gunakan Artifact Analysis untuk memeriksa kerentanan pada image container yang Anda simpan di Artifact Registry atau Container Registry.

Pastikan organisasi Anda dapat men-deploy patch segera setelah tersedia. Anda dapat menggunakan OS patch management untuk Compute Engine. Google secara otomatis men-patch kerentanan di GKE. Untuk informasi selengkapnya, lihat Memastikan image dan cluster Anda selalu terbaru.

Melindungi aplikasi Anda menggunakan WAF

Penyerang dapat mencoba mengakses jaringan Anda dengan menemukan kerentanan di Lapisan 7 dalam aplikasi yang di-deploy. Untuk membantu mengurangi serangan ini, konfigurasikan Google Cloud Armor, yang merupakan firewall aplikasi web (WAF) yang menggunakan kebijakan pemfilteran dan keamanan Lapisan 7. Google Cloud Armor menyediakan perlindungan denial of service (DoS) dan WAF untuk aplikasi serta layanan yang dihosting di Google Cloud, di tempat Anda, atau di cloud lainnya.

Google Cloud Armor menyertakan aturan WAF untuk membantu mengatasi kerentanan Apache Log4j. Penyerang dapat menggunakan kerentanan Log4j untuk memperkenalkan malware yang dapat melakukan penambangan mata uang kripto tanpa izin. Untuk mengetahui informasi selengkapnya, lihat Aturan WAF Google Cloud Armor untuk membantu mengatasi kerentanan Apache Log4j.

Mengamankan supply chain Anda

Continuous integration and continuous delivery (CI/CD) menyediakan mekanisme untuk memberikan fungsi terbaru Anda kepada pelanggan dengan cepat. Untuk membantu mencegah serangan penambangan mata uang kripto terhadap pipeline Anda, jalankan analisis kode dan pantau pipeline Anda terhadap serangan berbahaya.

Terapkan Otorisasi Biner untuk memastikan bahwa semua image ditandatangani oleh otoritas tepercaya selama proses pengembangan lalu terapkan validasi tanda tangan saat Anda men-deploy image.

Pindahkan pemeriksaan keamanan sedini mungkin ke dalam proses CI/CD (terkadang disebut geser ke kiri). Untuk mengetahui informasi selengkapnya, lihat Mengalihkan ke kiri dalam keamanan: Mengamankan supply chain software. Untuk informasi tentang cara menyiapkan supply chain yang aman dengan GKE, lihat Keamanan supply chain software.

Mengelola secret dan kunci

Vektor serangan kunci untuk serangan penambangan mata uang kripto tanpa izin adalah rahasia yang tidak aman atau bocor. Bagian ini menjelaskan praktik terbaik yang dapat Anda gunakan untuk membantu melindungi rahasia dan kunci enkripsi Anda.

Merotasi kunci enkripsi secara rutin

Pastikan semua kunci enkripsi dirotasi secara rutin. Jika Cloud KMS mengelola kunci enkripsi, Anda dapat merotasi kunci enkripsi secara otomatis.

Jika Anda menggunakan akun layanan yang memiliki pasangan kunci yang dikelola Google, kunci tersebut juga secara otomatis dirotasi.

Menghindari download secret

Secret yang terekspos adalah vektor serangan kunci bagi penyerang. Jika memungkinkan, jangan mendownload kunci enkripsi atau secret lainnya, termasuk kunci akun layanan. Jika Anda harus mendownload kunci, pastikan organisasi Anda menerapkan proses rotasi kunci.

Jika menggunakan GitHub atau repositori publik lainnya, Anda harus menghindari kebocoran kredensial. Implementasikan alat seperti pemindaian secret, yang akan memperingatkan Anda tentang secret yang terekspos di repositori GitHub Anda. Agar kunci tidak di-commit ke repositori GitHub Anda, pertimbangkan untuk menggunakan alat seperti git-secrets.

Gunakan solusi pengelolaan secret seperti Secret Manager dan Hashicorp Vault untuk menyimpan secret, merotasi nya secara rutin, dan menerapkan hak istimewa terendah.

Mendeteksi aktivitas anomali

Untuk memantau aktivitas anomali, konfigurasikan Google Cloud dan alat pemantauan pihak ketiga serta siapkan pemberitahuan. Misalnya, konfigurasikan pemberitahuan berdasarkan aktivitas administrator di informasi logging audit Compute Engine dan log audit GKE.

Selain itu, gunakan Event Threat Detection di Security Command Center untuk mengidentifikasi ancaman yang didasarkan pada aktivitas administrator, perubahan Google Grup, dan perubahan izin IAM. Gunakan Virtual Machine Threat Detection di Security Command Center untuk mengidentifikasi ancaman yang terkait dengan VM Compute Engine Anda. Untuk informasi selengkapnya tentang layanan Security Command Center, lihat Tingkat layanan Security Command Center.

Untuk membantu mendeteksi ancaman berbasis jaringan seperti malware, konfigurasikan Cloud IDS.

Berpartisipasi dalam Program Perlindungan terhadap Penambangan Kripto Security Command Center

Jika Anda adalah pelanggan Security Command Center Premium dan menggunakan Compute Engine, Anda dapat berpartisipasi dalam Program Perlindungan terhadap Penambangan Kripto Security Command Center. Dengan program ini, Anda dapat membiayai biaya VM Compute Engine yang terkait dengan serangan penambangan kripto yang tidak terdeteksi dan tidak sah di lingkungan VM Compute Engine Anda. Anda harus menerapkan praktik terbaik deteksi cryptomining, yang beberapa di antaranya tumpang tindih dengan praktik terbaik lain yang dijelaskan di halaman ini.

Memperbarui rencana respons insiden

Pastikan rencana respons insiden dan playbook Anda memberikan panduan preskriptif terkait cara organisasi Anda merespons serangan penambangan mata uang kripto. Misalnya, pastikan rencana Anda menyertakan hal berikut:

  • Cara mengajukan kasus dukungan ke Cloud Customer Care dan menghubungi Google technical account manager (TAM) Anda. Jika Anda tidak memiliki akun dukungan, tinjau paket dukungan yang tersedia, lalu buat akun dukungan.
  • Cara membedakan antara workload komputasi berperforma tinggi (HPC) yang sah dan serangan penambangan mata uang kripto. Misalnya, Anda dapat memberi tag pada project mana yang mengaktifkan HPC, dan menyiapkan pemberitahuan untuk kenaikan biaya yang tidak terduga.
  • Cara menangani kredensial Google Cloud yang disusupi.
  • Cara mengkarantina sistem yang terinfeksi dan memulihkannya dari cadangan yang sehat.
  • Siapa saja di organisasi Anda yang harus diberi tahu untuk menyelidiki dan merespons serangan tersebut.
  • Informasi apa saja yang perlu dicatat untuk kegiatan retrospektif Anda.
  • Cara memastikan bahwa aktivitas perbaikan Anda telah efektif menghapus aktivitas penambangan dan mengatasi kerentanan awal yang menyebabkan serangan.
  • Cara merespons pemberitahuan yang dikirim dari Cloud Customer Care. Untuk mengetahui informasi selengkapnya, lihat FAQ pelanggaran kebijakan.

Untuk mengetahui informasi selengkapnya, lihat Merespons dan memulihkan dari serangan.

Menerapkan rencana pemulihan bencana

Untuk bersiap menghadapi serangan penambangan mata uang kripto, selesaikan keberlangsungan bisnis dan rencana pemulihan bencana, buat playbook respons insiden, dan lakukan latihan di atas meja.

Jika terjadi penambangan mata uang kripto tanpa izin, pastikan Anda dapat mengatasi vektor ancaman yang menyebabkan pelanggaran awal dan dapat merekonstruksi lingkungan dari kondisi yang diketahui baik. Rencana pemulihan dari bencana harus memberikan kemampuan untuk menentukan kondisi yang baik, sehingga penyerang tidak bisa berulang kali menggunakan kerentanan yang sama untuk mengeksploitasi resource Anda.

Langkah selanjutnya