ProHoster > Blog > Administrácia > Ako zakázať štandardné heslá a prinútiť vás, aby vás všetci nenávideli
Ako zakázať štandardné heslá a prinútiť vás, aby vás všetci nenávideli
Človek, ako viete, je lenivý tvor.
A ešte viac, pokiaľ ide o výber silného hesla.
Myslím, že každý administrátor sa niekedy stretol s problémom používania ľahkých a štandardných hesiel. Tento jav sa často vyskytuje medzi hornými úrovňami manažmentu spoločností. Áno, áno, presne medzi tými, ktorí majú prístup k tajným alebo komerčným informáciám a bolo by krajne nežiaduce eliminovať následky úniku hesiel/hackingu a ďalších incidentov.
V mojej praxi sa vyskytol prípad, keď v doméne Active Directory s povolenou politikou hesiel účtovníci nezávisle dospeli k myšlienke, že heslo ako „Pas$w0rd1234“ dokonale vyhovuje požiadavkám politiky. Dôsledkom toho bolo všade rozšírené používanie tohto hesla. Niekedy sa líšil iba v súbore čísel.
Naozaj som chcel mať možnosť nielen povoliť politiku hesiel a definovať znakovú sadu, ale aj filtrovať podľa slovníka. Vylúčiť možnosť použitia takýchto hesiel.
Microsoft nám prostredníctvom odkazu láskavo oznamuje, že každý, kto vie správne držať v ruke kompilátor, IDE a vie správne vyslovovať C++, si dokáže skompilovať knižnicu, ktorú potrebuje a používať ju podľa vlastného chápania. Tvoj skromný sluha toho nie je schopný, tak som musel hľadať hotové riešenie.
Po dlhej hodine hľadania sa ukázali dve možnosti riešenia problému. Hovorím samozrejme o riešení OpenSource. Koniec koncov, existujú platené možnosti - od začiatku do konca.
Už asi 2 roky neexistujú žiadne commity. Natívny inštalátor funguje každú chvíľu, musíte ho opraviť ručne. Vytvára vlastnú samostatnú službu. Pri aktualizácii súboru hesiel DLL automaticky nezoberie zmenený obsah; musíte službu zastaviť, počkať na časový limit, upraviť súbor a spustiť službu.
Projekt je aktívny, živý a netreba si ani kopnúť do studeného tela.
Inštalácia filtra zahŕňa skopírovanie dvoch súborov a vytvorenie niekoľkých položiek databázy Registry. Súbor hesiel nie je v zámku, to znamená, že je k dispozícii na úpravu a podľa myšlienky autora projektu sa jednoducho číta raz za minútu. Pomocou ďalších položiek registra môžete ďalej konfigurovať samotný filter a dokonca aj nuansy politiky hesiel.
Tak.
Dané: doména Active Directory test.local
Testovacia pracovná stanica Windows 8.1 (nie je dôležitá na účely problému)
filter hesla PassFiltEx
Kopírovať PassFiltEx.dll в C: WindowsSystem32 (Alebo %SystemRoot%System32).
Kopírovať PassFiltExBlacklist.txt в C: WindowsSystem32 (Alebo %SystemRoot%System32). V prípade potreby ho dopĺňame vlastnými šablónami
Úprava vetvy registra: HKLMSYSTEMCurrentControlSetControlLsa => Oznamovacie balíčky
Pridať PassFiltEx na koniec zoznamu. (Rozšírenie nie je potrebné špecifikovať.) Kompletný zoznam balíkov použitých na kontrolu bude vyzerať takto “rassfm scecli PassFiltEx".
Reštartujte radič domény.
Vyššie uvedený postup zopakujeme pre všetky radiče domény.
Môžete tiež pridať nasledujúce položky databázy Registry, čo vám poskytne väčšiu flexibilitu pri používaní tohto filtra:
kapitola: HKLMSOFTWAREPassFiltEx — vytvorí sa automaticky.
BlacklistFileName — umožňuje zadať vlastnú cestu k súboru so šablónami hesiel. Ak je táto položka databázy Registry prázdna alebo neexistuje, použije sa predvolená cesta, ktorá je - %SystemRoot%System32. Môžete dokonca určiť sieťovú cestu, ALE musíte pamätať na to, že súbor šablóny musí mať jasné povolenia na čítanie, zápis, mazanie, zmenu.
TokenPercentageOfPassword — umožňuje určiť percento masky v novom hesle. Predvolená hodnota je 60 %. Napríklad, ak je percentuálny výskyt 60 a reťazec starwars je v súbore šablóny, potom heslo Starwars1! bude odmietnuté, kým bude zadané heslo starwars1!DarthVader88 bude akceptované, pretože percento reťazca v hesle je menšie ako 60 %
VyžadovaťCharClasses — umožňuje rozšíriť požiadavky na heslo v porovnaní so štandardnými požiadavkami na zložitosť hesla ActiveDirectory. Vstavané požiadavky na zložitosť vyžadujú 3 z 5 možných rôznych druhov znakov: veľké písmená, malé písmená, číslice, špeciálne a Unicode. Pomocou tejto položky databázy Registry môžete nastaviť požiadavky na zložitosť hesla. Hodnota, ktorá môže byť špecifikovaná, je množina bitov, z ktorých každý je zodpovedajúcou mocninou dvoch.
To znamená, že 1 = malé písmená, 2 = veľké písmená, 4 = číslica, 8 = špeciálny znak a 16 = znak Unicode.
Takže s hodnotou 7 by požiadavky boli „veľké písmená“ A malými písmenami A číslica“ a s hodnotou 31 – „Veľké písmená A malými písmenami A figúra A špeciálny symbol A znak Unicode."
Môžete dokonca kombinovať - 19 = „Veľké písmená A malými písmenami A znak Unicode."
Niekoľko pravidiel pri vytváraní súboru šablóny:
Šablóny nerozlišujú veľké a malé písmená. Preto záznam súboru hviezdne vojny и Hviezdne vojny bude určená ako rovnaká hodnota.
Súbor čiernej listiny sa načítava každých 60 sekúnd, takže ho môžete jednoducho upravovať; po minúte filter použije nové údaje.
V súčasnosti neexistuje podpora Unicode na porovnávanie vzorov. To znamená, že v heslách môžete použiť znaky Unicode, ale filter nebude fungovať. Toto nie je kritické, pretože som nevidel používateľov, ktorí používajú heslá Unicode.
Odporúča sa nepovoliť prázdne riadky v súbore šablóny. V ladení potom môžete vidieť chybu pri načítavaní údajov zo súboru. Filter funguje, ale prečo ďalšie výnimky?
Pre ladenie obsahuje archív dávkové súbory, ktoré vám umožňujú vytvoriť protokol a následne ho analyzovať pomocou napr. Microsoft Message Analyzer.
Tento filter hesiel používa sledovanie udalostí pre Windows.
Poskytovateľ ETW pre tento filter hesiel je 07d83223-7594-4852-babc-784803fdf6c5. Takže napríklad môžete nakonfigurovať sledovanie udalostí po nasledujúcom reštarte: logman create trace autosessionPassFiltEx -o %SystemRoot%DebugPassFiltEx.etl -p "{07d83223-7594-4852-babc-784803fdf6c5}" 0xFFFFFFFF -ets
Sledovanie sa spustí po ďalšom reštarte systému. Prestať: logman stop PassFiltEx -ets && logman delete autosessionPassFiltEx -ets
Všetky tieto príkazy sú špecifikované v skriptoch StartTracingAtBoot.cmd и StopTracingAtBoot.cmd.
Na jednorazovú kontrolu fungovania filtra môžete použiť StartTracing.cmd и StopTracing.cmd.
Aby ste mohli pohodlne prečítať ladiaci výfuk tohto filtra Analyzátor správ Microsoft Odporúča sa použiť nasledujúce nastavenia:
Pri zastavení prihlasovania a analýzy Analyzátor správ Microsoft všetko vyzerá asi takto:
Tu môžete vidieť, že došlo k pokusu nastaviť heslo pre používateľa - hovorí nám to čarovné slovíčko SET v ladení. A heslo bolo odmietnuté z dôvodu jeho prítomnosti v súbore šablóny a viac ako 30 % zhody v zadanom texte.
Ak dôjde k úspešnému pokusu o zmenu hesla, uvidíme nasledovné:
Pre koncového používateľa to spôsobuje určité nepríjemnosti. Keď sa pokúsite zmeniť heslo, ktoré je zahrnuté v súbore so zoznamom šablón, hlásenie na obrazovke sa nelíši od štandardného hlásenia, keď nie je odovzdaná politika hesiel.
Buďte preto pripravení na hovory a výkriky: "Zadal som heslo správne, ale nefunguje."
Zhrnutie.
Táto knižnica vám umožňuje zakázať používanie jednoduchých alebo štandardných hesiel v doméne Active Directory. Povedzme "Nie!" heslá ako: „P@ssw0rd“, „Qwerty123“, „ADm1n098“.
Áno, samozrejme, používatelia vás budú milovať ešte viac za to, že sa tak staráte o ich bezpečnosť a musíte vymýšľať ohromujúce heslá. A možno sa zvýši počet hovorov a žiadostí o pomoc s vaším heslom. Bezpečnosť však niečo stojí.
Odkazy na použité zdroje:
Článok spoločnosti Microsoft týkajúci sa vlastnej knižnice filtrov hesiel: Filtre hesiel
PassFiltEx: PassFiltEx
Odkaz na vydanie: Najnovšia verzia
Zoznamy hesiel:
DanielMiessler uvádza: Link.
Zoznam slov zo slabej pass.com: Link.
Zoznam slov z repozitára berzerk0: Link.
Microsoft Message Analyzer: Microsoft Message Analyzer.