Стандартты құпия сөздерге қалай тыйым салуға және сізді барлығына жек көруге болады

Адам, өздеріңіз білетіндей, жалқау жаратылыс.
Және одан да күшті құпия сөзді таңдауға келгенде.

Менің ойымша, әрбір әкімші жеңіл және стандартты құпия сөздерді пайдалану мәселесіне тап болды. Бұл құбылыс компания басшылығының жоғарғы эшелонында жиі кездеседі. Иә, иә, дәл құпия немесе коммерциялық ақпаратқа қол жеткізе алатындар арасында және құпия сөздің ағып кетуі/бұзу және одан әрі оқиғалардың салдарын жою өте қажет емес.

Менің тәжірибемде құпия сөз саясаты қосылған Active Directory доменінде бухгалтерлер «Pas$w0rd1234» сияқты құпия сөз саясат талаптарына толық сәйкес келеді деген ойға өз бетінше келген жағдай болды. Мұның салдары осы парольді барлық жерде кеңінен қолдану болды. Кейде ол өзінің сандар жиынтығымен ғана ерекшеленетін.

Мен шынымен де құпия сөз саясатын қосып, таңбалар жиынын анықтап қана қоймай, сөздік бойынша сүзгілеуді де қаладым. Мұндай құпия сөздерді пайдалану мүмкіндігін болдырмау.

Microsoft корпорациясы компиляторды, IDE-ді қолында дұрыс ұстауды білетін және C++ тілін дұрыс айтуды білетін кез келген адам өзіне қажетті кітапхананы құрастырып, оны өз түсінігіне қарай пайдалана алатынын бізге сілтеме арқылы хабарлайды. Қарапайым қызметшіңіздің бұған шамасы жоқ, сондықтан мен дайын шешім іздеуге тура келді.

Ұзақ сағаттық іздеуден кейін мәселені шешудің екі нұсқасы анықталды. Мен, әрине, OpenSource шешімі туралы айтып отырмын. Өйткені, ақылы опциялар бар - басынан аяғына дейін.

№1 нұсқа. OpenPasswordFilter

Шамамен 2 жыл бойы ешқандай міндеттеме жоқ. Жергілікті орнатушы анда-санда жұмыс істейді, оны қолмен түзетуге тура келеді. Өзінің жеке қызметін жасайды. Құпия сөз файлын жаңартқан кезде DLL өзгертілген мазмұнды автоматты түрде қабылдамайды; қызметті тоқтату, күту уақытын күту, файлды өңдеу және қызметті бастау керек.

Мұз жоқ!

№2 нұсқа. PassFiltEx

Жоба белсенді, тірі және тіпті суық денені теуудің қажеті жоқ.
Сүзгіні орнату екі файлды көшіруді және бірнеше тізілім жазбаларын жасауды қамтиды. Құпия сөз файлы құлыпта емес, яғни өңдеу үшін қол жетімді және жоба авторының идеясына сәйкес, ол минутына бір рет оқылады. Сондай-ақ, қосымша тізілім жазбаларын пайдалана отырып, сүзгінің өзін де, тіпті құпия сөз саясатының нюанстарын да конфигурациялауға болады.

Ал, сонда.
Берілген: Active Directory домені test.local
Windows 8.1 сынақ жұмыс станциясы (мәселенің мақсаты үшін маңызды емес)
PassFiltEx құпия сөз сүзгісі

  • Сілтемеден соңғы шығарылымды жүктеп алыңыз PassFiltEx
  • Көшіру PassFiltEx.dll в C: WindowsSystem32 (немесе %SystemRoot%System32).
    Көшіру PassFiltExBlacklist.txt в C: WindowsSystem32 (немесе %SystemRoot%System32). Қажет болса, біз оны өз шаблондарымызбен толықтырамыз
    Стандартты құпия сөздерге қалай тыйым салуға және сізді барлығына жек көруге болады
  • Тіркеу бөлімін өңдеу: HKLMSYSTEMCurrentControlSetControlLsa => Хабарландыру пакеттері
    қосу PassFiltEx тізімнің соңына дейін. (Кеңейтімді көрсету қажет емес.) Сканерлеу үшін пайдаланылатын бумалардың толық тізімі келесідей болады "rassfm scecli PassFiltEx«.
    Стандартты құпия сөздерге қалай тыйым салуға және сізді барлығына жек көруге болады
  • Домен контроллерін қайта жүктеңіз.
  • Барлық домен контроллерлері үшін жоғарыдағы процедураны қайталаймыз.

Сондай-ақ, осы сүзгіні пайдалануда көбірек икемділік беретін келесі тізбе жазбаларын қосуға болады:

Секция: HKLMSOFTWAREPassFiltEx — автоматты түрде жасалады.

  • HKLMSOFTWAREPassFiltExBlacklistFileName, REG_SZ, Әдепкі: PassFiltExBlacklist.txt

    Қара тізімФайлАты — құпия сөз үлгілері бар файлға реттелетін жолды көрсетуге мүмкіндік береді. Бұл тізілім жазбасы бос немесе жоқ болса, әдепкі жол пайдаланылады, ол - %SystemRoot%System32. Сіз тіпті желілік жолды көрсете аласыз, БІРАҚ үлгі файлында оқу, жазу, жою, өзгерту үшін анық рұқсаттар болуы керек екенін есте ұстаған жөн.

  • HKLMSOFTWAREPassFiltExTokenPercentageOfPassword, REG_DWORD, Әдепкі: 60

    TokenPercentageOfPassword — жаңа құпия сөздегі маска пайызын көрсетуге мүмкіндік береді. Әдепкі мән - 60%. Мысалы, егер пайда болу пайызы 60 болса және starwars жолы үлгі файлында болса, онда құпия сөз Жұлдызды соғыстар1! құпия сөзді енгізу кезінде қабылданбайды жұлдызды соғыстар1!DarthVader88 парольдегі жолдың пайызы 60%-дан аз болғандықтан қабылданады

  • HKLMSOFTWAREPassFiltExRequireCharClasses, REG_DWORD, Әдепкі: 0

    RequireCharClasses — стандартты ActiveDirectory құпиясөз күрделілігі талаптарымен салыстырғанда құпия сөз талаптарын кеңейтуге мүмкіндік береді. Кірістірілген күрделілік талаптары мүмкін болатын 3 түрлі таңба түрінің 5-еуін талап етеді: бас әріп, кіші әріп, сан, арнайы және Юникод. Бұл тізілім жазбасын пайдаланып, құпия сөздің күрделілік талаптарын орнатуға болады. Көрсетілуі мүмкін мән - әрқайсысы екінің сәйкес күші болатын биттердің жиыны.
    Яғни, 1 = кіші әріп, 2 = бас әріп, 4 = цифр, 8 = арнайы таңба және 16 = Юникод таңбасы.
    Осылайша, 7 мәнімен талаптар «Үлкен әріп» болады ЖӘНЕ кіші әріп ЖӘНЕ цифр», ал 31 мәнімен - «Бас әріп ЖӘНЕ кіші әріп ЖӘНЕ сан ЖӘНЕ арнайы таңба ЖӘНЕ Юникод таңбасы."
    Сіз тіпті біріктіре аласыз - 19 = «Бас әріп ЖӘНЕ кіші әріп ЖӘНЕ Юникод таңбасы."

  • Стандартты құпия сөздерге қалай тыйым салуға және сізді барлығына жек көруге болады

Үлгі файлын жасау кезінде бірқатар ережелер:

  • Үлгілер регистрді ескермейді. Сондықтан, файл жазбасы жұлдызды соғыстар и Жұлдызды соғыстар бірдей мән болатыны анықталады.
  • Қара тізім файлы әр 60 секунд сайын қайта оқылады, сондықтан оны оңай өңдеуге болады; бір минуттан кейін жаңа деректерді сүзгі пайдаланады.
  • Әзірше үлгіні сәйкестендіру үшін Юникод қолдауы жоқ. Яғни, құпия сөздерде Юникод таңбаларын пайдалануға болады, бірақ сүзгі жұмыс істемейді. Бұл маңызды емес, өйткені мен Юникод құпия сөздерін пайдаланатын пайдаланушыларды көрмедім.
  • Үлгі файлында бос жолдарға жол бермеген жөн. Түзетуде файлдан деректерді жүктеу кезінде қатені көре аласыз. Сүзгі жұмыс істейді, бірақ неге қосымша ерекшеліктер?

Түзету үшін мұрағатта журнал жасауға және одан кейін оны талдауға мүмкіндік беретін пакеттік файлдар бар, мысалы: Microsoft Message Analyzer.
Бұл құпия сөз сүзгісі Windows жүйесіне арналған Оқиғаларды бақылауды пайдаланады.

Бұл құпия сөз сүзгісі үшін ETW провайдері болып табылады 07d83223-7594-4852-babc-784803fdf6c5. Мысалы, оқиғаны бақылауды келесі қайта жүктеуден кейін конфигурациялауға болады:
logman create trace autosessionPassFiltEx -o %SystemRoot%DebugPassFiltEx.etl -p "{07d83223-7594-4852-babc-784803fdf6c5}" 0xFFFFFFFF -ets

Бақылау жүйені келесі қайта жүктегеннен кейін басталады. Тоқтау:
logman stop PassFiltEx -ets && logman delete autosessionPassFiltEx -ets
Барлық осы командалар сценарийлерде көрсетілген StartTracingAtBoot.cmd и StopTracingAtBoot.cmd.

Сүзгі жұмысын бір реттік тексеру үшін пайдалануға болады StartTracing.cmd и StopTracing.cmd.
Бұл сүзгінің отладтауын ыңғайлы оқу үшін Microsoft Message Analyzer Келесі параметрлерді пайдалану ұсынылады:

Стандартты құпия сөздерге қалай тыйым салуға және сізді барлығына жек көруге болады

Стандартты құпия сөздерге қалай тыйым салуға және сізді барлығына жек көруге болады

Жүйеге кіруді және талдауды тоқтатқанда Microsoft Message Analyzer бәрі келесідей көрінеді:

Стандартты құпия сөздерге қалай тыйым салуға және сізді барлығына жек көруге болады

Мұнда пайдаланушыға құпия сөз орнату әрекеті болғанын көруге болады - сиқырлы сөз бізге бұл туралы айтады SET жөндеуде. Ал пароль үлгі файлында болуына және енгізілген мәтінде 30%-дан астам сәйкестігіне байланысты қабылданбады.

Құпия сөзді өзгерту әрекеті сәтті орындалса, біз мынаны көреміз:

Стандартты құпия сөздерге қалай тыйым салуға және сізді барлығына жек көруге болады

Түпкі пайдаланушы үшін біраз қолайсыздықтар бар. Үлгілер файлының тізіміне енгізілген құпия сөзді өзгертуге әрекет жасағанда, экрандағы хабар құпия сөз саясаты өтпеген кездегі стандартты хабардан еш айырмашылығы жоқ.

Стандартты құпия сөздерге қалай тыйым салуға және сізді барлығына жек көруге болады

Сондықтан, қоңыраулар мен айқайларға дайын болыңыз: «Мен парольді дұрыс енгіздім, бірақ ол жұмыс істемейді».

Нәтиже.

Бұл кітапхана Active Directory доменінде қарапайым немесе стандартты құпия сөздерді пайдалануға тыйым салуға мүмкіндік береді. «Жоқ!» деп айтайық. «P@ssw0rd», «Qwerty123», «ADm1n098» сияқты құпия сөздер.
Иә, әрине, пайдаланушылар сізді өздерінің қауіпсіздігіне қамқорлық жасағаныңыз үшін және ақылға қонымды құпия сөздерді ойлап табу қажеттілігі үшін сізді одан да жақсы көреді. Және, мүмкін, қоңыраулар мен құпия сөзге көмек сұрайтындар саны артады. Бірақ қауіпсіздіктің бағасы бар.

Пайдаланылған ресурстарға сілтемелер:
Пайдаланушы құпиясөз сүзгі кітапханасына қатысты Microsoft мақаласы: Құпиясөз сүзгілері
PassFiltEx: PassFiltEx
Шығару сілтемесі: Соңғы шығарылым
Құпия сөз тізімдері:
Даниел Мисслер тізімдейді: Сілтеме.
zayıfpass.com сайтындағы сөздер тізімі: Сілтеме.
berzerk0 реподағы сөздер тізімі: Сілтеме.
Microsoft Message Analyzer: Microsoft Message Analyzer.

Ақпарат көзі: www.habr.com

пікір қалдыру