İnsan, bilindiği gibi, tembel bir varlıktır.
Haliyle, güvenli bir şifre seçme meselesine gelince.
Sanırım, her yönetici zaman zaman basit ve standart şifreler kullanma sorunu ile karşılaşmıştır. Bu durum, şirketin gizli veya ticari bilgilerine erişimi olan üst düzey yöneticiler arasında sıkça görülmektedir. Evet, tam olarak şifre sızıntısı ve ilgili başka olayların sonuçlarını ortadan kaldırmak istemediğimiz kişiler arasında.
Bir keresinde, şifre politikası etkin olan bir Active Directory alanında muhasebecilerin kendi kendilerine 'Pas$w0rd1234' gibi bir şifrenin politika gerekliliklerini karşıladığını düşündükleri bir durumla karşılaştım. Sonuç olarak, bu şifrenin her yerde yaygın olarak kullanılması söz konusu oldu. Bazen yalnızca rakamlar setiyle farklılık gösteriyordu.
Sadece şifre politikasını etkinleştirmek ve karakter setini tanımlamakla kalmayıp aynı zamanda bir kelime hazinesi üzerinden filtreleme yapma imkanı olmasını çok istedim. Böylece bu tür şifrelerin kullanılma olasılığını ortadan kaldırabilseydik.
Microsoft, uygun bir derleyici, IDE tutmayı ve C++'ı doğru bir şekilde telaffuz edebilmeyi öğrenen herkesin gerekli bir kütüphaneyi derleyip kendi isteğine göre kullanabileceğini bildirmektedir. Ben, böyle bir şeyle baş edemedim, bu yüzden hazır bir çözüm aramak zorunda kaldım.
Uzun bir arama sürecinden sonra iki çözüm seçeneği ortaya çıktı. Tabii ki, açık kaynak çözümünden bahsediyorum. Zira ticari seçenekler mevcut.
Seçenek #1.
Son iki yıldır güncelleme yok. Orijinal yükleyici bir çalışıyor, bir çalışmıyor; elle düzeltmem gerekiyor. Kendi ayrı hizmetini yaratıyor. Şifre dosyası güncellendiğinde, DLL otomatik olarak değişen içeriği almaz, hizmeti durdurup bir süre beklemek, dosyayı düzenlemek ve hizmeti başlatmak gerekir.
Pek iyi değil!
Seçenek #2.
Proje aktif, canlı ve gerçekten de itmeye gerek yok.
Filtreyi yüklemek için iki dosyayı kopyalamak ve birkaç kayıt girişi oluşturmak yeterlidir. Şifre dosyası yerel değil; yani, düzenlemeye açıktır ve projenin yazarının düşüncesine göre, her dakika okunur. Ayrıca, ek kayıt girdileri ile filtreyi ve hatta şifre politikası ile ilgili detayları ekstra yapılandırmak mümkündür.
Beləliklə.
Verilen: Active Directory alanı test.local
Windows 8.1 test iş istasyonu (görev şartları için önemsiz)
PassFiltEx şifre filtresi
- Son sürümü indirmek için bağlantıya tıklayın
- Kopyalayın PassFiltEx.dll daxilindədir. C:WindowsSystem32 (və ya %SystemRoot%System32).
Kopyalayın PassFiltExBlacklist.txt daxilindədir. C:WindowsSystem32 (və ya %SystemRoot%System32). Gerekirse kendi şablonlarınızı ekleyin.
- Kayıt dalını düzenleyin: HKLMSYSTEMCurrentControlSetControlLsa => Notification Packages
Ekleyin PassFiltEx siyahının sonuna. (Uzantıyı belirtmenize gerek yok.) Kontrol için kullanılan paketlerin tam listesi şöyle görünecektir «rassfm scecli PassFiltEx«.
- Alan denetleyicisini yeniden başlatıyoruz.
- Yukarıda belirtilen işlemi tüm alan denetleyicileri için tekrarlıyoruz.
Bu filtreyi kullanmada daha fazla esneklik sağlayan aşağıdaki kayıt dosyalarını ekleyebilirsiniz:
Bölüm: HKLMSOFTWAREPassFiltEx — otomatik olarak oluşturulur.
- HKLMSOFTWAREPassFiltExBlacklistFileName, REG_SZ, Varsayılan: PassFiltExBlacklist.txt
BlacklistFileName — şifre şablonları dosyasının özel yolunu belirtmenizi sağlar. Bu kayıt defteri girişi boş bir değere sahipse veya mevcut değilse, varsayılan yol kullanılır, yani — %SystemRoot%System32. Ağa bağlı bir yol bile gösterebilirsiniz, ANCAK dosyanın şablonları için kesin okuma, yazma, silme, değiştirme izinlerinin ayarlandığından emin olmalısınız.
- HKLMSOFTWAREPassFiltExTokenPercentageOfPassword, REG_DWORD, Varsayılan: 60
TokenPercentageOfPassword — yeni şifre içerisinde şablonun yüzdesel görünümünü belirtmenizi sağlar. Varsayılan değer 'tır. Örneğin, görünüm belirtilirse ve şablon dosyasında bir satır starwars varsa, o zaman şifre Starwars1! reddedilecektir, oysa şifre starwars1!DarthVader88 kabul edilecektir, çünkü şifredeki satırın yüzdesel görünümü 'ın altındadır.
- HKLMSOFTWAREPassFiltExRequireCharClasses, REG_DWORD, Varsayılan: 0
RequireCharClasses — şifrelerin Active Directory'nin standart karmaşıklık gereksinimlerinden daha katı gereksinimlerini genişletmenizi sağlar. Yerleşik karmaşıklık gereksinimleri, 5 olası farklı karakter türünden 3'ünü gerektirir: Büyük harf, Küçük harf, Rakam, Özel ve Unicode. Bu kayıt defteri girdisi ile kendi şifre karmaşıklığı gereksinimlerinizi belirleyebilirsiniz. Belirtilmesi gereken değer bir dizi bit olacaktır ve her biri ilgili bir 2'nin kuvvetidir.
Yani — 1 = küçük harf, 2 = büyük harf, 4 = rakam, 8 = özel karakter, ve 16 = Unicode karakteridir.
Dolayısıyla, 7 değeri ile gereksinimler “Büyük harf ) operatorunu istifadə etməlidir. küçük harf ) operatorunu istifadə etməlidir. rakam” olacak, 31 değeri ile “Büyük harf ) operatorunu istifadə etməlidir. küçük harf ) operatorunu istifadə etməlidir. rakam ) operatorunu istifadə etməlidir. özel karakter ) operatorunu istifadə etməlidir. Unicode karakteri” şeklinde olacaktır.
Hatta birleştirebilirsiniz — 19 = “Büyük harf ) operatorunu istifadə etməlidir. küçük harf ) operatorunu istifadə etməlidir. Unicode karakteri” şeklinde olacaktır.
Şablon dosyası oluştururken bazı kurallar:
- Şablonlar büyük/küçük harf duyarsızdır. Dolayısıyla, dosyadaki kayıt starwars və StarWarS aynı değer olarak tanımlanacaktır.
- Blacklist dosyası her 60 saniyede bir yeniden okunur, bu yüzden rahatlıkla düzenleyebilirsiniz, bir dakika sonra yeni veriler filtre tarafından kullanılmaya başlanacaktır.
- Şu anda şablona göre kontrol için Unicode desteği yoktur. Yani, şifrede Unicode karakterlerini kullanabilirsiniz, ancak filtre çalışmayacaktır. Bu kritik değildir çünkü Unicode ile şifre kullanan kullanıcılar görmedim.
- Şablon faylında boş sətirlərin olmaması arzu edilir. Məlumatlar fayldan yüklənərkən debuqda xəta görünür. Filtr işləyir, amma niyə çoxlu istisnalara ehtiyac var?
Debuq üçün arxivdə loq yaradıb sonradan məsələn, onu başa düşmək üçün imkan verən batniklər mövcuddur.
Bu şifrə filtri Windows üçün Hadisə İzləmə istifadə edir.
Bu şifrə filtri üçün ETW provayderi — 07d83223-7594-4852-babc-784803fdf6c5. Məsələn, növbəti yenidən yükləmədən sonra hadisə izləməsini belə quraşdırmaq olar:
logman create trace autosessionPassFiltEx -o %SystemRootbugPassFiltEx.etl -p "{07d83223-7594-4852-babc-784803fdf6c5}" 0xFFFFFFFF -ets
İzləmə növbəti sistemin yenidən yüklənməsindən sonra başlayacaq. Dayandırmaq üçün:
logman stop PassFiltEx -ets && logman delete autosessionPassFiltEx -ets
Bütün bu əmrlər skriptlərdə göstərilib StartTracingAtBoot.cmd və StopTracingAtBoot.cmd.
Filtrin işini bir dəfə yoxlamaq üçün StartTracing.cmd və StopTracing.cmd.
Bu filtrin debuq çıxışını rahat oxumaq üçün Microsoft Message Analyzer aşağıdakı parametrləri istifadə etməyi tövsiyə edirik:


Loq dayandırıldıqda və təhlil edildikdə Microsoft Message Analyzer hər şey belə görünür:

Burada düzgün parolu qoymaq üçün cəhd edildiyini görmək mümkündür — bunu bizə "SET" sehrli sözü bildirir. Debuqda. Və parol şablon faylında olduğu üçün 30%-dən çox uyğunluğu olduğundan rədd edilib. Uğurlu parol dəyişiklik cəhdində aşağıdakıları görürük:
Son istifadəçi üçün müəyyən bir narahatlıq vardır. Şablon faylına düşən parolu dəyişmək cəhdində ekran mesajı, parol siyasətini keçmək uğursuz olan standart mesajdan zehniyyətcə fərqlənmir.

Buna görə zənglərə və hayqırtılara hazır olun: "Mən parolu düz daxil etdim, amma işləmirdi."

Bu kitabxana Active Directory domenində sadə və ya standart parollardan istifadəni qadağan etməyə imkan tanıyır. "P@ssw0rd", "Qwerty123", "ADm1n098" kimi parollara "Xeyir!" dedik.
Nəticə.
Bəli, şübhəsiz ki, istifadəçilər sizin təhlükəsizliklərinə və mürəkkəb parollar düşünməyə olan qayğınıza görə sizi daha çox sevəcəklər. Və bəlkə də sizin parol üçün kömək istəmələri və zənglərin sayı artar. Amma təhlükəsizlik üçün ödəməli olursunuz.
İstifadə olunan resurslara bağlantılar:
Microsoft-un şifrə filtri üçün xüsusi kitabxanası ilə bağlı məqalə:
Password Filters
Buraxılış bağlantısı:
Latest Release
DanielMiessler listesindən:
Link.
berzerk0 repozitoriyasından söz siyahısı:
Microsoft Message Analyzer:
🥇Standart parolları qadağan etmək və hamını sizdən nifrət etməyə məcbur etmək | ProHoster
Mənbə: habr.com
