Kebijakan Kata Sandi dan Autentikasi Multifaktor
Pahami persyaratan kata sandi yang kuat, faktor MFA (sesuatu yang Anda ketahui/miliki/merupakan bagian dari diri Anda), serta alasan pelapisan faktor secara drastis mengurangi risiko pengambilalihan akun.
Kebijakan Kata Sandi dan Autentikasi Multifaktor adalah pelajaran Security+ Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Security+ Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Security+ Academy mencakup 4 pelajaran total.
Kata Sandi: Tautan Terlemah
Kata sandi tetap menjadi mekanisme autentikasi yang paling umum meskipun paling sering dibobol. Penyerang mencuri kata sandi melalui phishing, pengisian kredensial (menggunakan kembali kredensial yang telah bocor), serangan brute force, dan pencatat ketikan. Bahkan kata sandi yang "kuat" hanya memberikan perlindungan terbatas jika penyerang dapat menangkapnya secara diam-diam. Kebijakan kata sandi menetapkan persyaratan minimum untuk kompleksitas dan penggantian guna mengurangi risiko, tetapi peningkatan Security yang paling berdampak adalah menambahkan faktor kedua — karena mengetahui kata sandi saja tidak lagi cukup untuk memperoleh akses.
Persyaratan Kompleksitas Kata Sandi
Kebijakan kompleksitas kata sandi yang efektif menetapkan standar minimum agar kata sandi lebih sulit diretas. Persyaratan tradisional mencakup: panjang minimum (minimal 12–16 karakter; panjang lebih penting daripada kompleksitas), jenis karakter yang diwajibkan (huruf besar, huruf kecil, angka, simbol), larangan menggunakan kata sandi umum (kamus kata sandi), serta larangan mencantumkan nama pengguna atau nama organisasi dalam kata sandi. Pedoman NIST SP 800-63B yang diperbarui pada 2017 merekomendasikan untuk memprioritaskan panjang daripada aturan kompleksitas yang sewenang-wenang dan memeriksa kata sandi terhadap basis data kredensial yang telah bocor, alih-alih mewajibkan penggantian secara berkala.
# Check if a password appears in known breach databases
# NIST recommends this approach vs forced periodic rotation
# Example: Using Have I Been Pwned (HIBP) API
# Hash the password first (k-anonymity model - sends only first 5 chars of SHA-1)
echo -n 'mysecretpassword' | sha1sum
# Returns: e5e9fa1ba31ecd1ae84f75caaa474f3a663f05f4 -
# Send first 5 chars to HIBP API:
# GET https://api.pwnedpasswords.com/range/E5E9F
# Response includes suffix of any matching hashes
# If found: this password is compromised - reject itPanduan Kata Sandi Modern NIST SP 800-63B
NIST SP 800-63B (Pedoman Identitas Digital) merevisi praktik terbaik kata sandi secara signifikan. Pembaruan utamanya: jangan mewajibkan penggantian berkala kecuali terdapat bukti pembobolan — penggantian paksa membuat pengguna melakukan perubahan yang mudah diprediksi (Password1! → Password2!); periksa kata sandi terhadap basis data kebocoran saat pembuatan dan izinkan pengguna melihat kata sandi saat mengetik; izinkan frasa sandi yang panjang hingga 64 karakter; hapus aturan kompleksitas yang sewenang-wenang yang menghasilkan pola mudah diprediksi; serta terapkan penguncian Account atau pembatasan laju untuk mencegah serangan brute force, bukan hanya mengandalkan kompleksitas.
Tiga Faktor Autentikasi
Autentikasi mengandalkan satu atau lebih dari tiga jenis faktor. Sesuatu yang Anda ketahui (faktor pengetahuan): kata sandi, PIN, pertanyaan Security, dan frasa sandi. Sesuatu yang Anda miliki (faktor kepemilikan): token fisik, ponsel cerdas dengan aplikasi autentikator, kartu cerdas, atau kunci perangkat keras (YubiKey). Sesuatu yang merupakan diri Anda (faktor inheren): sidik jari, pemindaian retina, pengenalan wajah, pola suara, dan biometrik perilaku. Kategori keempat — tempat Anda berada (lokasi) — terkadang juga ditambahkan. Menggunakan faktor dari dua kategori atau lebih disebut autentikasi multi-faktor (MFA). Dua faktor dari kategori yang sama (seperti dua kata sandi) bukan MFA.
Mengapa MFA Sangat Efektif
Autentikasi multi-faktor (MFA) merupakan salah satu pengendalian Security yang paling berdampak. Riset Microsoft menunjukkan bahwa MFA memblokir 99,9% serangan pembobolan Account. Alasannya: phishing atau pencurian kredensial memberi penyerang "sesuatu yang Anda ketahui" (kata sandi), tetapi biasanya mereka tidak dapat memperoleh faktor kedua (kode sekali pakai dari ponsel cerdas atau kunci perangkat keras). Bahkan jika kata sandi pengguna dipublikasikan dalam basis data kebocoran, Account tetap terlindungi jika MFA diaktifkan. Organisasi yang telah menerapkan MFA jarang muncul dalam laporan kebocoran yang melibatkan pengambilalihan Account berbasis kredensial.
OTP SMS dan Kelemahannya
Kata Sandi Sekali Pakai SMS (OTP) adalah metode MFA yang paling banyak diterapkan — kode 6 digit yang dikirim melalui pesan teks. Metode ini lebih baik daripada tidak menggunakan MFA, tetapi memiliki kelemahan yang telah terdokumentasi. Serangan pertukaran SIM: penyerang menyamar sebagai korban kepada operator seluler lalu memindahkan nomor telepon ke SIM mereka untuk mencegat kode OTP berikutnya. Kerentanan protokol SS7: protokol pensinyalan jaringan telepon memiliki kelemahan yang diketahui sehingga SMS dapat dicegat. Phishing waktu nyata: proksi phishing canggih meneruskan OTP secara waktu nyata untuk melewatinya. NIST SP 800-63B membatasi OTP SMS pada status "autentikator terbatas". Aplikasi autentikator atau token perangkat keras lebih disarankan.
TOTP: Kata Sandi Sekali Pakai Berbasis Waktu
TOTP (Kata Sandi Sekali Pakai Berbasis Waktu) — distandardisasi dalam RFC 6238 — menghasilkan kode 6 digit dari rahasia bersama dan waktu saat ini. Aplikasi seperti Google Authenticator, Authy, dan Microsoft Authenticator menerapkan TOTP. Kode berubah setiap 30 detik dan hanya valid untuk satu percobaan autentikasi. Berbeda dari OTP SMS, TOTP tidak melewati jaringan telepon, sehingga kebal terhadap pertukaran SIM dan serangan SS7. Rahasia bersama dipertukarkan satu kali (melalui kode QR saat penyiapan) dan disimpan dalam aplikasi autentikator — sehingga diperlukan akses fisik ke perangkat yang terdaftar untuk menghasilkan kode.
# TOTP algorithm (RFC 6238) conceptual implementation
import hmac, hashlib, time, struct, base64
def totp(secret_b32, digits=6, interval=30):
# Decode the base32 secret
secret = base64.b32decode(secret_b32, True)
# Time counter: number of 30-second intervals since epoch
counter = int(time.time()) // interval
# HMAC-SHA1 of counter with secret
msg = struct.pack('>Q', counter)
digest = hmac.new(secret, msg, hashlib.sha1).digest()
# Dynamic truncation to get 6 digits
offset = digest[-1] & 0xf
code = struct.unpack('>I', digest[offset:offset+4])[0] & 0x7fffffff
return str(code % (10**digits)).zfill(digits)FIDO2 dan WebAuthn: MFA yang Tahan terhadap Phishing
FIDO2 (Fast Identity Online 2) dan implementasi webnya, WebAuthn, merupakan standar autentikasi yang paling tahan terhadap phishing. FIDO2 menggunakan kriptografi kunci publik pada tingkat perangkat — autentikator (kunci perangkat keras seperti YubiKey atau biometrik perangkat seperti Windows Hello) menyimpan kunci privat yang tidak pernah meninggalkan perangkat. Autentikasi terikat secara kriptografis pada origin (situs web) tertentu, sehingga kebal terhadap phishing: bahkan jika pengguna tertipu untuk mengunjungi situs palsu, tantangan autentikasi akan gagal karena origin-nya tidak cocok. FIDO2 adalah standar emas untuk autentikasi dengan Security tinggi.
Token Perangkat Keras: HOTP dan Kartu Cerdas
Token perangkat keras fisik menyediakan "sesuatu yang Anda miliki" secara terpisah dari ponsel cerdas. HOTP (OTP berbasis HMAC) — distandardisasi dalam RFC 4226 — menghasilkan kode dari penghitung dan rahasia bersama; penghitung bertambah setiap kali tombol ditekan. Berbeda dari TOTP, kode HOTP tidak kedaluwarsa berdasarkan waktu, tetapi harus digunakan secara berurutan. Kartu cerdas (seperti kartu PIV yang digunakan oleh pegawai pemerintah US) menyimpan kunci privat dalam perangkat keras tahan manipulasi dan memerlukan PIN untuk dibuka, sehingga menggabungkan "sesuatu yang Anda miliki" (kartu) dengan "sesuatu yang Anda ketahui" (PIN). Autentikasi kartu cerdas merupakan standar untuk akses istimewa di lingkungan dengan Security tinggi.
Pengelola Kata Sandi: Mengatasi Masalah Manusia
Pengelola kata sandi mengatasi kecenderungan manusia untuk menggunakan kembali kata sandi dengan membuat dan menyimpan kata sandi unik serta acak untuk setiap situs. Kata sandi utama membuka brankas terenkripsi yang berisi semua kredensial. Pengelola kata sandi untuk perusahaan (1Password Teams, Bitwarden Business, CyberArk) menambahkan fitur seperti penerapan Policy terpusat, log audit, berbagi secara aman, dan akses darurat. Tim Security harus secara aktif mendorong atau mewajibkan penggunaan pengelola kata sandi — ini adalah pengendalian Security yang jarang ditemui karena meningkatkan Security (kata sandi unik di setiap tempat) sekaligus kemudahan penggunaan (tidak perlu mengingat puluhan kata sandi). Jika digabungkan dengan MFA, pengelola kata sandi secara drastis mengurangi pembobolan Account berbasis kredensial.
Penguncian dan Pembatasan Account
Penguncian Account menonaktifkan Account setelah sejumlah upaya masuk yang gagal, sehingga mencegah serangan brute force. Policy umum mengunci Account setelah 3–10 upaya gagal, dengan durasi penguncian mulai dari jangka waktu tetap (30 menit) hingga memerlukan pembukaan oleh administrator. Pembatasan laju merupakan alternatif yang lebih lunak: alih-alih mengunci Account, sistem secara bertahap memperpanjang jeda antarupaya masuk, sehingga serangan brute force memerlukan waktu bertahun-tahun, bukan beberapa menit, tanpa dampak terhadap pengalaman pengguna seperti pada penguncian. Aplikasi web harus menerapkan keduanya — pembatasan laju pada tingkat API dan pembatasan pada tingkat Account — untuk mencegah serangan kredensial otomatis.
# Configure account lockout policy via Windows Group Policy
# Computer Configuration > Windows Settings > Security Settings
# > Account Policies > Account Lockout Policy
#
# Account lockout threshold: 5 invalid logon attempts
# Account lockout duration: 30 minutes
# Reset account lockout after: 30 minutes
# Linux PAM-based lockout (/etc/pam.d/common-auth)
# auth required pam_tally2.so deny=5 unlock_time=1800
# auth required pam_faillock.so preauth deny=5 unlock_time=1800Pemeriksaan Singkat
Uji pemahaman Anda tentang konsep CompTIA Security+ (SY0-701) dari pelajaran ini.
Ringkasan Pelajaran
Dalam pelajaran ini, Anda telah mempelajari bahwa NIST SP 800-63B merekomendasikan frasa sandi yang panjang dan pemeriksaan kebocoran daripada Policy penggantian yang rumit; tiga faktor MFA adalah mengetahui, memiliki, dan menjadi; aplikasi TOTP lebih aman daripada OTP SMS; FIDO2/WebAuthn tahan terhadap phishing; dan penguncian Account mencegah serangan brute force. Selanjutnya, kita akan membahas Biometrik dan Autentikasi Berbasis Token.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Kebijakan Kata Sandi dan Autentikasi Multifaktor” gratis?
Ya — teks lengkap “Kebijakan Kata Sandi dan Autentikasi Multifaktor” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Security+ Academy, upgrade ke CoddyKit PRO. Kursus Security+ Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Kebijakan Kata Sandi dan Autentikasi Multifaktor”?
Pahami persyaratan kata sandi yang kuat, faktor MFA (sesuatu yang Anda ketahui/miliki/merupakan bagian dari diri Anda), serta alasan pelapisan faktor secara drastis mengurangi risiko pengambilalihan… Kamu berlatih Security+ Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Security+ Academy?
Tidak diperlukan pengalaman sebelumnya. Security+ Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Kebijakan Kata Sandi dan Autentikasi Multifaktor” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Security+ Academy ini?
Ya. Setiap pelajaran Security+ Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Kebijakan Kata Sandi dan Autentikasi Multifaktor
- Biometrik dan Autentikasi Berbasis Token
- Model Otorisasi: RBAC, MAC, dan DAC
- Identitas Terfederasi: SAML, OAuth, dan OpenID Connect