Cách cấm mật khẩu chuẩn và khiến mọi người ghét bạn

Con người, như bạn biết, là một sinh vật lười biếng.
Và thậm chí còn hơn thế nữa khi chọn một mật khẩu mạnh.

Tôi nghĩ mọi quản trị viên đều đã từng gặp phải vấn đề sử dụng mật khẩu nhẹ và chuẩn. Hiện tượng này thường xảy ra ở các cấp quản lý cấp cao của công ty. Có, vâng, chính xác là trong số những người có quyền truy cập vào thông tin bí mật hoặc thương mại và việc loại bỏ hậu quả của việc rò rỉ/hack mật khẩu và các sự cố khác là điều cực kỳ không mong muốn.

Trong thực tế của tôi, có một trường hợp khi trong miền Active Directory có chính sách mật khẩu được bật, các kế toán viên độc lập nảy ra ý tưởng rằng mật khẩu như “Pas$w0rd1234” hoàn toàn phù hợp với các yêu cầu của chính sách. Hậu quả là mật khẩu này được sử dụng rộng rãi ở khắp mọi nơi. Đôi khi anh ấy chỉ khác nhau ở bộ số của mình.

Tôi thực sự muốn không chỉ có thể kích hoạt chính sách mật khẩu và xác định bộ ký tự mà còn có thể lọc theo từ điển. Để loại trừ khả năng sử dụng mật khẩu đó.

Microsoft vui lòng thông báo cho chúng tôi qua liên kết rằng bất kỳ ai biết cách cầm trình biên dịch, IDE chính xác trên tay và biết cách phát âm C++ chính xác, đều có thể biên dịch thư viện họ cần và sử dụng nó theo cách hiểu của riêng họ. Người hầu khiêm tốn của bạn không có khả năng này nên tôi phải tìm một giải pháp làm sẵn.

Sau một giờ dài tìm kiếm, hai phương án giải quyết vấn đề đã được đưa ra. Tất nhiên, tôi đang nói về giải pháp OpenSource. Rốt cuộc, có những lựa chọn trả phí - từ đầu đến cuối.

Tùy chọn số 1. Bộ lọc mật khẩu mở

Khoảng 2 năm nay không có cam kết nào, trình cài đặt gốc thỉnh thoảng vẫn hoạt động, bạn phải sửa thủ công. Tạo dịch vụ riêng của mình. Khi cập nhật tệp mật khẩu, DLL không tự động nhận nội dung đã thay đổi; bạn cần dừng dịch vụ, đợi thời gian chờ, chỉnh sửa tệp và khởi động dịch vụ.

Không có băng!

Tùy chọn số 2. Vượt quaFiltEx

Dự án đang hoạt động, còn sống và thậm chí không cần phải đá vào cơ thể lạnh lùng.
Việc cài đặt bộ lọc bao gồm việc sao chép hai tệp và tạo một số mục đăng ký. Tệp mật khẩu không có trong khóa, nghĩa là nó có sẵn để chỉnh sửa và theo ý tưởng của tác giả dự án, nó chỉ cần đọc mỗi phút một lần. Ngoài ra, bằng cách sử dụng các mục đăng ký bổ sung, bạn có thể định cấu hình thêm cả bộ lọc và thậm chí cả các sắc thái của chính sách mật khẩu.

Như vậy.
Đã cho: Tên miền Active Directory test.local
Máy trạm thử nghiệm Windows 8.1 (không quan trọng đối với mục đích của vấn đề)
bộ lọc mật khẩu PassFiltEx

  • Tải xuống bản phát hành mới nhất từ ​​​​liên kết Vượt quaFiltEx
  • Sao chép PassFiltEx.dll в C: WindowsSystem32 (hoặc % SystemRoot% System32).
    Sao chép PassFiltExBlacklist.txt в C: WindowsSystem32 (hoặc % SystemRoot% System32). Nếu cần, chúng tôi bổ sung nó bằng các mẫu của riêng mình
    Cách cấm mật khẩu chuẩn và khiến mọi người ghét bạn
  • Chỉnh sửa nhánh đăng ký: HKLMSYSTEMCurrentControlSetControlLsa => Gói thông báo
    Thêm Vượt quaFiltEx đến cuối danh sách. (Không cần chỉ định phần mở rộng.) Danh sách đầy đủ các gói được sử dụng để quét sẽ trông như thế này “rassfm scecli PassFiltEx".
    Cách cấm mật khẩu chuẩn và khiến mọi người ghét bạn
  • Khởi động lại bộ điều khiển miền.
  • Chúng tôi lặp lại quy trình trên cho tất cả các bộ điều khiển miền.

Bạn cũng có thể thêm các mục đăng ký sau, giúp bạn linh hoạt hơn khi sử dụng bộ lọc này:

Chương: HKLMSOFTWAREPassFiltEx — được tạo tự động.

  • HKLMSOFTWAREPassFiltExBlacklistFileName, REG_SZ, Mặc định: PassFiltExBlacklist.txt

    Danh sách đenTên tệp — cho phép bạn chỉ định đường dẫn tùy chỉnh đến tệp có mẫu mật khẩu. Nếu mục đăng ký này trống hoặc không tồn tại thì đường dẫn mặc định sẽ được sử dụng, đó là - % SystemRoot% System32. Bạn thậm chí có thể chỉ định đường dẫn mạng, NHƯNG bạn cần nhớ rằng tệp mẫu phải có quyền rõ ràng để đọc, ghi, xóa, thay đổi.

  • HKLMSOFTWAREPassFiltExTokenPercentageOfPassword, REG_DWORD, Mặc định: 60

    TokenPhần trămMật khẩu — cho phép bạn chỉ định phần trăm mặt nạ trong mật khẩu mới. Giá trị mặc định là 60%. Ví dụ: nếu tỷ lệ phần trăm xuất hiện là 60 và chuỗi starwars có trong tệp mẫu thì mật khẩu Chiến tranh giữa các vì sao1! sẽ bị từ chối trong khi mật khẩu starwars1!DarthVader88 sẽ được chấp nhận vì tỷ lệ phần trăm của chuỗi trong mật khẩu nhỏ hơn 60%

  • HKLMSOFTWAREPassFiltExRequireCharClasses, REG_DWORD, Mặc định: 0

    Yêu cầuCharClass — cho phép bạn mở rộng các yêu cầu về mật khẩu so với các yêu cầu về độ phức tạp của mật khẩu ActiveDirectory tiêu chuẩn. Các yêu cầu về độ phức tạp tích hợp yêu cầu 3 trong số 5 loại ký tự khác nhau có thể có: Chữ hoa, Chữ thường, Chữ số, Đặc biệt và Unicode. Sử dụng mục đăng ký này, bạn có thể đặt các yêu cầu về độ phức tạp của mật khẩu. Giá trị có thể được chỉ định là một tập hợp các bit, mỗi bit là lũy thừa tương ứng của hai.
    Nghĩa là, 1 = chữ thường, 2 = chữ hoa, 4 = chữ số, 8 = ký tự đặc biệt và 16 = ký tự Unicode.
    Vì vậy, với giá trị là 7, yêu cầu sẽ là “Chữ hoa” chữ thường chữ số" và có giá trị 31 - "Chữ hoa chữ thường chữ số biểu tượng đặc biệt Ký tự Unicode."
    Bạn thậm chí có thể kết hợp - 19 = “Chữ hoa chữ thường Ký tự Unicode."

  • Cách cấm mật khẩu chuẩn và khiến mọi người ghét bạn

Một số quy tắc khi tạo file template:

  • Mẫu không phân biệt chữ hoa chữ thường. Vì vậy, mục nhập tập tin chiến tranh giữa các vì sao и Chiến tranh giữa các vì sao sẽ được xác định có cùng giá trị.
  • File danh sách đen được đọc lại sau mỗi 60 giây nên bạn có thể dễ dàng chỉnh sửa, sau một phút, dữ liệu mới sẽ được bộ lọc sử dụng.
  • Hiện tại không có hỗ trợ Unicode cho việc khớp mẫu. Tức là bạn có thể sử dụng các ký tự Unicode trong mật khẩu nhưng bộ lọc sẽ không hoạt động. Điều này không quan trọng vì tôi chưa thấy người dùng nào sử dụng mật khẩu Unicode.
  • Không nên cho phép dòng trống trong tệp mẫu. Trong quá trình gỡ lỗi, bạn có thể thấy lỗi khi tải dữ liệu từ một tệp. Bộ lọc hoạt động, nhưng tại sao lại có thêm ngoại lệ?

Để gỡ lỗi, kho lưu trữ chứa các tệp bó cho phép bạn tạo nhật ký và sau đó phân tích cú pháp bằng cách sử dụng, ví dụ: Trình phân tích thư của Microsoft.
Bộ lọc mật khẩu này sử dụng Theo dõi sự kiện cho Windows.

Nhà cung cấp ETW cho bộ lọc mật khẩu này là 07d83223-7594-4852-babc-784803fdf6c5. Vì vậy, ví dụ: bạn có thể định cấu hình theo dõi sự kiện sau lần khởi động lại sau:
logman create trace autosessionPassFiltEx -o %SystemRoot%DebugPassFiltEx.etl -p "{07d83223-7594-4852-babc-784803fdf6c5}" 0xFFFFFFFF -ets

Việc theo dõi sẽ bắt đầu sau lần khởi động lại hệ thống tiếp theo. Dừng lại:
logman stop PassFiltEx -ets && logman delete autosessionPassFiltEx -ets
Tất cả các lệnh này được chỉ định trong tập lệnh StartTracingAtBoot.cmd и DừngTracingAtBoot.cmd.

Để kiểm tra một lần hoạt động của bộ lọc, bạn có thể sử dụng Bắt đầuTracing.cmd и DừngTracing.cmd.
Để thuận tiện đọc phần gỡ lỗi của bộ lọc này trong Trình phân tích tin nhắn của Microsoft Nên sử dụng các cài đặt sau:

Cách cấm mật khẩu chuẩn và khiến mọi người ghét bạn

Cách cấm mật khẩu chuẩn và khiến mọi người ghét bạn

Khi dừng đăng nhập và phân tích cú pháp Trình phân tích tin nhắn của Microsoft mọi thứ trông giống như thế này:

Cách cấm mật khẩu chuẩn và khiến mọi người ghét bạn

Ở đây bạn có thể thấy rằng đã có nỗ lực đặt mật khẩu cho người dùng - từ thần kỳ cho chúng ta biết điều này SET trong gỡ lỗi. Và mật khẩu đã bị từ chối do nó hiện diện trong tệp mẫu và khớp hơn 30% trong văn bản đã nhập.

Nếu nỗ lực thay đổi mật khẩu thành công được thực hiện, chúng tôi sẽ thấy như sau:

Cách cấm mật khẩu chuẩn và khiến mọi người ghét bạn

Có một số bất tiện cho người dùng cuối. Khi bạn cố gắng thay đổi mật khẩu có trong danh sách tệp mẫu, thông báo trên màn hình không khác gì thông báo tiêu chuẩn khi chính sách mật khẩu không được thông qua.

Cách cấm mật khẩu chuẩn và khiến mọi người ghét bạn

Do đó, hãy chuẩn bị cho những cuộc gọi và tiếng la hét: “Tôi đã nhập đúng mật khẩu nhưng nó không hoạt động”.

Tóm tắt.

Thư viện này cho phép bạn cấm sử dụng mật khẩu đơn giản hoặc tiêu chuẩn trong miền Active Directory. Hãy nói "Không!" mật khẩu như: “P@ssw0rd”, “Qwerty123”, “ADm1n098”.
Có, tất nhiên, người dùng sẽ yêu thích bạn nhiều hơn vì đã quan tâm đến vấn đề bảo mật của họ và nhu cầu nghĩ ra những mật khẩu đáng kinh ngạc. Và có lẽ số lượng cuộc gọi và yêu cầu trợ giúp về mật khẩu của bạn sẽ tăng lên. Nhưng an ninh có cái giá phải trả.

Liên kết đến các tài nguyên được sử dụng:
Bài viết của Microsoft liên quan đến thư viện bộ lọc mật khẩu tùy chỉnh: Bộ lọc mật khẩu
PassFiltEx: Vượt quaFiltEx
Liên kết phát hành: Bản phát hành mới nhất
Danh sách mật khẩu:
Danh sách của Daniel Miessler: Liên kết.
Danh sách từ từ wewepass.com: Liên kết.
Danh sách từ từ repo berzerk0: Liên kết.
Trình phân tích thư của Microsoft: Trình phân tích thư của Microsoft.

Nguồn: www.habr.com

Thêm một lời nhận xét