Fine-Grained Password Policy (FGPP)

# Fine-Grained Password Policy (FGPP) Bilgilerini Çıkarmak İçin Bir Araç: GetFGPP

Active Directory ortamlarında, Fine-Grained Password Policy (FGPP), farklı kullanıcı grupları için farklı parola politikaları tanımlamaya olanak sağlar. Bu, özellikle büyük ve karmaşık ağ yapılarında, farklı kullanıcı gruplarına farklı güvenlik seviyeleri uygulamak isteyen yöneticiler için oldukça kullanışlıdır. Ancak, bu politikaların yönetimi ve denetimi bazen karmaşık olabilir. İşte tam da bu noktada, **GetFGPP** adlı Python tabanlı bir araç devreye giriyor.

 

## GetFGPP Nedir?

GetFGPP, bir Active Directory ortamında Fine-Grained Password Policy (FGPP) bilgilerini çıkarmak için geliştirilmiş bir araçtır. Bu araç, belirli bir kullanıcı hesabı ve parola ile Active Directory'ye bağlanır ve FGPP ile ilgili detaylı bilgileri çıkarır. Bu bilgiler arasında parola uzunluğu, karmaşıklık gereksinimleri, kilitleme eşikleri ve politikaların hangi kullanıcı gruplarına uygulandığı gibi detaylar bulunur.

## GetFGPP Nasıl Çalışır?

GetFGPP, Python programlama dili ve `ldap3` kütüphanesi kullanılarak geliştirilmiştir. Araç, kullanıcıdan gerekli bilgileri (kullanıcı adı, parola, etki alanı ve opsiyonel olarak LDAP sunucusu) alır ve bu bilgileri kullanarak Active Directory'ye bağlanır. Daha sonra, FGPP ile ilgili nesneleri arar ve bu nesnelere uygulanan politikaların detaylarını çıkarır.

### Temel Özellikler

- **FGPP Nesnelerini Bulma:** Araç, Active Directory'deki FGPP nesnelerini bulur ve bu nesnelere uygulanan politikaları listeler.
- **Detaylı Politika Bilgileri:** Her bir FGPP nesnesi için parola uzunluğu, karmaşıklık gereksinimleri, kilitleme süreleri gibi detaylı bilgiler çıkarılır.
- **Yetki Kontrolü:** Araç, kullanıcının FGPP nesnelerini görüntüleme yetkisi olup olmadığını kontrol eder ve yetkisiz erişim durumunda uyarı verir.

## GetFGPP Kullanımı

GetFGPP, komut satırı üzerinden kullanılabileceği gibi, bir GUI (Grafiksel Kullanıcı Arayüzü) ile de kullanılabilir. Aşağıda, her iki kullanım şekline dair örnekler bulunmaktadır.

### Komut Satırı Kullanımı

Aracı komut satırından kullanmak için aşağıdaki komutu çalıştırmanız yeterlidir:

```bash
python3 fgpp.py -u Administrator -p Password -d n00py.local
```

Bu komut, `Administrator` kullanıcısı ile `n00py.local` etki alanına bağlanır ve FGPP bilgilerini çıkarır.

### GUI Kullanımı

Aracın GUI versiyonu, kullanıcı dostu bir arayüz sunar. Kullanıcı adı, parola, etki alanı ve LDAP sunucusu bilgilerini girerek FGPP bilgilerini kolayca çıkarabilirsiniz. Arayüzdeki "Bağlan ve Bilgileri Çıkar" butonu ile işlemi başlatabilir, "Temizle" butonu ile tüm alanları temizleyebilirsiniz.

## Örnek Çıktı

Aracın çalıştırılması sonucunda elde edilen çıktı, FGPP nesneleri ve bu nesnelere uygulanan politikalar hakkında detaylı bilgiler içerir. Örneğin:

```
Policy Name: DU Policy
Description: This Policy Applies to Domain Users
Policy Applies to: CN=Domain Users,CN=Users,DC=n00py,DC=local
Minimum Password Length: 6
Lockout Threshold: 100
Observation Window: 0 days 0 hours 30 minutes 0 seconds
Lockout Duration: 0 days 0 hours 30 minutes 0 seconds
Complexity Enabled: False
Minimum Password Age: 1 days 0 hours 0 minutes 0 seconds
Maximum Password Age: 42 days 0 hours 0 minutes 0 seconds
Reversible Encryption: True
Precedence: 1
```

Bu çıktı, `DU Policy` adlı FGPP nesnesinin `Domain Users` grubuna uygulandığını ve bu politikanın detaylarını göstermektedir.

## Sonuç

GetFGPP, Active Directory ortamlarında Fine-Grained Password Policy (FGPP) bilgilerini çıkarmak için kullanışlı bir araçtır. Hem komut satırı hem de GUI desteği sayesinde, farklı kullanıcıların ihtiyaçlarına uygun şekilde kullanılabilir. Özellikle sistem yöneticileri ve güvenlik uzmanları için, FGPP politikalarını denetlemek ve yönetmek adına büyük kolaylık sağlar.

Eğer siz de Active Directory ortamınızda FGPP politikalarını daha etkin bir şekilde yönetmek istiyorsanız, GetFGPP aracını denemeyi düşünebilirsiniz.

---

Bu blog yazısı, GetFGPP aracının temel özelliklerini, nasıl çalıştığını ve nasıl kullanıldığını açıklamaktadır. Eğer bu araçla ilgili daha fazla bilgi edinmek veya kullanmaya başlamak isterseniz, GitHub deposunu ziyaret edebilirsiniz.