Memindai paket Go secara manual
Panduan memulai ini menunjukkan cara mengambil image container, memindainya secara manual dengan Pemindaian On-Demand, dan mengambil kerentanan yang diidentifikasi untuk paket sistem dan Go. Untuk mengikuti panduan memulai ini, Anda akan menggunakan Cloud Shell dan contoh gambar Alpine.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the On-Demand Scanning API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the On-Demand Scanning API.
Mendownload dan memindai gambar
Buka Cloud Shell di project Anda.
Tindakan ini akan membuka terminal dengan semua alat yang diperlukan untuk mengikuti panduan ini.
Gunakan docker untuk mengambil image container:
docker pull golang:1.17.6-alpine
Jalankan pemindaian:
gcloud artifacts docker images scan golang:1.17.6-alpine --additional-package-types=GO
Tindakan ini akan memicu proses pemindaian dan menampilkan nama pemindaian setelah selesai:
✓ Scanning container image ✓ Locally extracting packages and versions from local container image ✓ Remotely initiating analysis of packages and versions ✓ Waiting for analysis operation to complete [projects/my-project/locations/us/operations/849db1f8-2fb2-4559-9fe0-8720d8cd347c] Done. done: true metadata: '@type': type.googleapis.com/google.cloud.ondemandscanning.v1.AnalyzePackagesMetadata createTime: '2022-01-11T16:58:11.711487Z' resourceUri: golang:1.16.13-alpine name: projects/my-project/locations/us/operations/f4adb1f8-20b2-4579-9fe0-8720d8cd347c response: '@type': type.googleapis.com/google.cloud.ondemandscanning.v1.AnalyzePackagesResponse scan: projects/my-project/locations/us/scans/a54f12b0-ca2d-4d93-8da5-5cf48e9e20ef
Gunakan nama pemindaian, nilai
scan
dari output, untuk mengambil hasil pemindaian:gcloud artifacts docker images list-vulnerabilities \ projects/my-project/locations/us/scans/a54f12b0-ca2d-4d93-8da5-5cf48e9e20ef
Output-nya berisi daftar kerentanan paket Go, library standar Go, dan Linux. Label berikut menunjukkan jenis kerentanan Go:
packageType:GO_STDLIB
. Kerentanan library standar Go. Hal ini menunjukkan bahwa kerentanan ditemukan di toolchain Go yang digunakan untuk mem-build biner, atau di library standar yang dipaketkan dengan toolchain. Perbaikan yang mungkin dilakukan adalah mengupgrade toolchain build Anda.packageType:GO
. Kerentanan paket Go. Hal ini menunjukkan bahwa kerentanan ditemukan dalam paket pihak ketiga. Solusi yang mungkin adalah mengupgrade modul dependen Anda.
Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.