Skip to content

[SECURITY] Enforce Strong Password Policy di Seluruh Fitur (Change/Reset/Registration) #963

@vickyrolanda

Description

@vickyrolanda

Masalah

Saat ini password policy hanya di-check setelah user berhasil login, sehingga user dengan password lemah tetap bisa terjaga di sistem. Belum ada pencegahan password lemah pada saat registrasi, ganti password, maupun reset.

Dampak

  • Password lemah bahkan yang sudah "pwned" masih bisa digunakan, memudahkan brute force / credential stuffing.
  • Compliance dan keamanan overall menurun.

Langkah Penyelesaian

  1. Buat custom Rule/Validation yang enforce minimum 12 karakter, campuran upper, lower, angka, simbol, serta pengecekan HIBP (HaveIBeenPwned).
  2. Wajibkan pengecekan Rule ini di seluruh proses user membuat/mengganti password.
  3. Terapkan password history dan expiry jika diperlukan.
  4. Audit user existing dan paksa reset password jika terindikasi lemah.

Contoh Implementasi

// app/Rules/StrongPassword.php
public function passes($attribute, $value) {
    return strlen($value) >= 12 && ... // syarat lain
}

Setelah Perbaikan

  • Uji dengan kombinasikan inputs untuk memastikan password lemah tertolak.
  • Jalankan script audit agar user lawas dengan pw lemah forced reset.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions