AWS pedoman audit keamanan - AWS Identity and Access Management

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

AWS pedoman audit keamanan

Audit konfigurasi keamanan Anda secara berkala untuk memastikannya memenuhi kebutuhan bisnis Anda saat ini. Audit memberi Anda kesempatan untuk menghapus IAM pengguna, peran, grup, dan kebijakan yang tidak diperlukan, dan untuk memastikan bahwa pengguna dan perangkat lunak Anda tidak memiliki izin yang berlebihan.

Berikut ini adalah pedoman untuk meninjau dan memantau AWS sumber daya Anda secara sistematis untuk praktik terbaik keamanan.

Tip

Anda dapat memantau penggunaan Anda IAM karena berkaitan dengan praktik terbaik keamanan dengan menggunakan AWS Security Hub. Hub Keamanan menggunakan kontrol keamanan untuk mengevaluasi konfigurasi sumber daya dan standar keamanan guna membantu Anda mematuhi berbagai kerangka kerja kepatuhan. Untuk informasi selengkapnya tentang penggunaan Security Hub guna mengevaluasi IAM sumber daya, lihat kontrol AWS Identity and Access Management di Panduan AWS Security Hub Pengguna.

Kapan melakukan audit keamanan

Audit konfigurasi keamanan Anda dalam situasi berikut:

  • Secara periodik. Lakukan langkah-langkah yang dijelaskan dalam dokumen ini secara berkala sebagai praktik terbaik untuk keamanan.

  • Jika ada perubahan di organisasi Anda, seperti orang yang keluar.

  • Jika Anda telah berhenti menggunakan satu atau beberapa AWS layanan individual untuk memverifikasi bahwa Anda telah menghapus izin yang tidak lagi diperlukan oleh pengguna di akun Anda.

  • Jika Anda telah menambahkan atau menghapus perangkat lunak di akun Anda, seperti aplikasi di EC2 instans Amazon, AWS OpsWorks tumpukan, AWS CloudFormation templat, dll.

  • Jika Anda mencurigai bahwa orang yang tidak berwenang mungkin telah mengakses akun Anda.

Pedoman untuk audit

Saat meninjau konfigurasi keamanan akun Anda, ikuti panduan berikut:

  • Jadilah teliti. Lihatlah semua aspek konfigurasi keamanan Anda, termasuk yang jarang digunakan.

  • Jangan berasumsi. Jika Anda tidak terbiasa dengan beberapa aspek konfigurasi keamanan Anda (misalnya, alasan di balik kebijakan tertentu atau keberadaan peran), selidiki kebutuhan bisnis sampai Anda memahami potensi risikonya.

  • Tetap sederhana. Untuk mempermudah audit (dan manajemen), gunakan IAM grup, IAM peran, skema penamaan yang konsisten, dan kebijakan langsung.

Tinjau kredensi AWS akun Anda

Ambil langkah-langkah ini saat Anda mengaudit kredensi AWS akun Anda:

  1. Jika Anda memiliki kunci akses untuk pengguna root yang tidak Anda gunakan, Anda dapat menghapusnya. Kami sangat menyarankan agar Anda tidak menggunakan kunci akses root untuk pekerjaan sehari-hari AWS, dan sebaliknya Anda menggunakan pengguna dengan kredensi sementara, seperti itu. pengguna di Pusat Identitas AWS IAM

  2. Jika Anda memerlukan kunci akses untuk akun Anda, pastikan Anda memperbaruinya saat diperlukan.

Tinjau IAM pengguna Anda

Ambil langkah-langkah ini saat Anda mengaudit IAM pengguna yang sudah ada:

  1. Buat daftar pengguna Anda dan kemudian hapus pengguna yang tidak diperlukan.

  2. Hapus pengguna dari grup yang tidak mereka perlukan aksesnya.

  3. Tinjau kebijakan yang dilampirkan ke grup tempat pengguna berada. Lihat Kiat untuk meninjau kebijakan IAM.

  4. Hapus kredensial keamanan yang tidak dibutuhkan pengguna atau yang mungkin telah diekspos. Misalnya, IAM pengguna yang digunakan untuk aplikasi tidak memerlukan kata sandi (yang diperlukan hanya untuk masuk ke AWS situs web). Demikian pula, jika pengguna tidak menggunakan kunci akses, tidak ada alasan bagi pengguna untuk memilikinya. Untuk informasi selengkapnya, lihat Mengelola Kata Sandi untuk IAM pengguna dan Mengelola Kunci Akses untuk IAM pengguna.

    Anda dapat membuat dan mengunduh laporan kredensi yang mencantumkan semua IAM pengguna di akun Anda dan status berbagai kredensialnya, termasuk kata sandi, kunci akses, dan perangkat. MFA Untuk kata sandi dan kunci akses, laporan kredensi menunjukkan tanggal dan waktu ketika kata sandi atau kunci akses terakhir digunakan. Pertimbangkan untuk menghapus kredensil yang belum digunakan baru-baru ini dari akun Anda. (Jangan hapus pengguna Akses Darurat Anda.) Untuk informasi selengkapnya, lihat Mendapatkan Laporan Kredensi untuk AWS Akun Anda.

  5. Perbarui kata sandi dan kunci akses bila diperlukan untuk kasus penggunaan yang memerlukan kredensi jangka panjang. Untuk informasi selengkapnya, lihat Mengelola Kata Sandi untuk IAM Pengguna dan Mengelola Kunci Akses untuk IAM pengguna.

  6. Sebagai praktik terbaik, mewajibkan pengguna manusia untuk menggunakan federasi dengan penyedia identitas untuk mengakses AWS menggunakan kredensi sementara. Jika memungkinkan, transisi dari IAM pengguna ke pengguna federasi, seperti pengguna di Pusat IAM Identitas. Pertahankan jumlah minimum IAM pengguna yang dibutuhkan untuk aplikasi Anda.

Tinjau IAM grup Anda

Ambil langkah-langkah ini saat Anda mengaudit IAM grup Anda:

  1. Buat daftar grup Anda, lalu hapus grup yang tidak Anda gunakan.

  2. Tinjau pengguna di setiap grup dan hapus pengguna yang tidak termasuk.

  3. Tinjau kebijakan yang dilampirkan ke grup. Lihat Kiat untuk meninjau kebijakan IAM.

Tinjau IAM peran Anda

Ambil langkah-langkah ini saat Anda mengaudit IAM peran Anda:

  1. Buat daftar peran Anda, lalu hapus peran yang tidak Anda gunakan.

  2. Tinjau kebijakan kepercayaan peran. Pastikan Anda mengetahui siapa akun utamanya dan memahami mengapa akun atau pengguna tersebut harus dapat mengambil peran tersebut.

  3. Tinjau kebijakan akses untuk peran tersebut guna memastikan bahwa kebijakan akses memberikan izin yang sesuai kepada siapa pun yang mengambil peran tersebut—lihat Kiat untuk meninjau kebijakan IAM.

Tinjau IAM penyedia Anda untuk SAML dan OpenID Connect () OIDC

Jika Anda telah membuat IAM entitas untuk membangun kepercayaan dengan SAMLatau penyedia OIDC identitas (iDP), lakukan langkah-langkah berikut:

  1. Hapus penyedia yang tidak digunakan.

  2. Unduh dan tinjau dokumen AWS metadata untuk setiap SAML IDP dan pastikan dokumen tersebut mencerminkan kebutuhan bisnis Anda saat ini.

  3. Dapatkan dokumen metadata terbaru dari SAML IdPs dan perbarui penyedia di. IAM

Tinjau aplikasi seluler Anda

Jika Anda telah membuat aplikasi seluler yang membuat permintaan AWS, lakukan langkah-langkah berikut:

  1. Pastikan aplikasi seluler tidak berisi kunci akses yang disematkan, meskipun berada di penyimpanan terenkripsi.

  2. Dapatkan kredensi sementara untuk aplikasi dengan menggunakan yang APIs dirancang untuk tujuan itu.

catatan

Sebaiknya gunakan Amazon Cognito untuk mengelola identitas pengguna di aplikasi Anda. Layanan ini memungkinkan Anda mengautentikasi pengguna menggunakan Login with Amazon, Facebook, Google, atau penyedia identitas yang kompatibel dengan OpenID OIDC Connect (). Untuk informasi selengkapnya, lihat kumpulan identitas Amazon Cognito di Panduan Pengembang Amazon Cognito.

Kiat untuk meninjau kebijakan IAM

Kebijakan sangat kuat dan halus, jadi penting untuk mempelajari dan memahami izin yang diberikan oleh setiap kebijakan. Gunakan pedoman berikut saat meninjau kebijakan:

  • Lampirkan kebijakan ke grup atau peran, bukan ke pengguna individu. Jika pengguna individu memiliki kebijakan, pastikan Anda memahami mengapa pengguna tersebut memerlukan kebijakan tersebut.

  • Pastikan bahwa IAM pengguna, grup, dan peran memiliki izin yang mereka butuhkan dan tidak memiliki izin tambahan.

  • Gunakan Simulator IAM Kebijakan untuk menguji kebijakan yang dilampirkan ke pengguna atau grup.

  • Ingatlah bahwa izin pengguna adalah hasil dari semua kebijakan yang berlaku — baik kebijakan berbasis identitas (pada pengguna, grup, atau peran) maupun kebijakan berbasis sumber daya (pada sumber daya seperti bucket Amazon S3, antrian Amazon, topik Amazon, dan kunci). SQS SNS AWS KMS Penting untuk memeriksa semua kebijakan yang berlaku bagi pengguna dan untuk memahami set lengkap izin yang diberikan kepada pengguna individu.

  • Ketahuilah bahwa mengizinkan pengguna untuk membuat IAM pengguna, grup, peran, atau kebijakan dan melampirkan kebijakan ke entitas utama secara efektif memberikan pengguna tersebut semua izin ke semua sumber daya di akun Anda. Pengguna yang dapat membuat kebijakan dan melampirkannya ke pengguna, grup, atau peran dapat memberikan izin apa pun kepada diri mereka sendiri. Secara umum, jangan memberikan IAM izin kepada pengguna atau peran yang tidak Anda percayai dengan akses penuh ke sumber daya di akun Anda. Saat melakukan audit keamanan, konfirmasikan bahwa IAM izin berikut diberikan kepada identitas tepercaya:

    • iam:PutGroupPolicy

    • iam:PutRolePolicy

    • iam:PutUserPolicy

    • iam:CreatePolicy

    • iam:CreatePolicyVersion

    • iam:AttachGroupPolicy

    • iam:AttachRolePolicy

    • iam:AttachUserPolicy

  • Pastikan kebijakan tidak memberikan izin untuk layanan yang tidak Anda gunakan. Misalnya, jika Anda menggunakan kebijakan AWS terkelola, pastikan kebijakan AWS terkelola yang digunakan di akun Anda adalah untuk layanan yang benar-benar Anda gunakan. Untuk mengetahui kebijakan AWS terkelola mana yang digunakan di akun Anda, gunakan IAM GetAccountAuthorizationDetailsAPI(AWS CLI perintah: aws iam get-account-authorization-details).

  • Jika kebijakan memberikan izin kepada pengguna untuk meluncurkan EC2 instance Amazon, kebijakan tersebut mungkin juga mengizinkan iam:PassRole tindakan tersebut, tetapi jika demikian, kebijakan tersebut harus secara eksplisit mencantumkan peran yang dapat diteruskan pengguna ke instance Amazon. EC2

  • Memeriksa setiap nilai untuk Action atau Resource elemen yang termasuk*. Jika memungkinkan, berikan Allow akses ke tindakan individu dan sumber daya yang dibutuhkan pengguna. Namun, berikut ini adalah alasan yang mungkin cocok untuk menggunakan * dalam kebijakan:

    • Kebijakan ini dirancang untuk memberikan izin tingkat administratif.

    • Karakter wildcard digunakan untuk set tindakan serupa (misalnya, Describe*) sebagai kenyamanan dan Anda merasa nyaman dengan daftar lengkap tindakan yang direferensikan dengan cara ini.

    • Karakter wildcard digunakan untuk menunjukkan kelas sumber daya atau jalur sumber daya (misalnya,arn:aws:iam::account-id:users/division_abc/*), dan Anda merasa nyaman memberikan akses ke semua sumber daya di kelas atau jalur itu.

    • Tindakan layanan tidak mendukung izin tingkat sumber daya, dan satu-satunya pilihan untuk sumber daya adalah. *

  • Periksa nama kebijakan untuk memastikan mereka mencerminkan fungsi kebijakan. Misalnya, meskipun kebijakan mungkin memiliki nama yang menyertakan "hanya baca", kebijakan tersebut mungkin benar-benar memberikan izin tulis atau ubah.

Untuk informasi selengkapnya tentang perencanaan audit keamanan Anda, lihat Praktik Terbaik untuk Keamanan, Identitas, dan Kepatuhan di Pusat AWS Arsitektur.