Công cụ mã nguồn mở DPAPISnoop đã được nâng cấp để trích xuất các mục CREDHIST, cho phép phân tích ngoại tuyến (offline cracking) các thông tin xác thực Windows lịch sử và hiểu sâu hơn về các mẫu mật khẩu. Lefteris Panos, Chuyên gia An ninh tại LRQA Red Team, cho biết bản cập nhật bổ sung khả năng trích xuất CREDHIST cho DPAPISnoop, cho phép khôi phục và phân tích các thông tin xác thực Windows lịch sử cùng với các hàm băm khóa chính DPAPI (DPAPI Master Key). Việc này mở ra những góc nhìn mới về mối đe dọa mạng tiềm ẩn trong cách Windows quản lý thông tin nhạy cảm.
DPAPI và vai trò của CREDHIST
Microsoft Data Protection API (DPAPI) được sử dụng rộng rãi để bảo vệ dữ liệu nhạy cảm của người dùng như thông tin xác thực trình duyệt, khóa mã hóa và các bí mật được lưu trữ. Theo truyền thống, kẻ tấn công và các nhóm red team thường tập trung vào việc khôi phục DPAPI Master Keys, vốn cho phép giải mã dữ liệu được bảo vệ. Tuy nhiên, một tạo tác ít được khám phá hơn, CREDHIST, đóng một vai trò quan trọng trong thiết kế của DPAPI.
Cơ chế lưu trữ lịch sử mật khẩu
Khi người dùng thay đổi mật khẩu, Windows duy trì một chuỗi các khóa phái sinh từ mật khẩu trước đó để đảm bảo dữ liệu đã mã hóa trước đó vẫn có thể truy cập được. Lịch sử thông tin xác thực này được lưu trữ trong tệp CREDHIST, đặt tại đường dẫn: %APPDATA%\Microsoft\Protect.
Mỗi mục trong tệp này đại diện cho một mật khẩu trước đó, được mã hóa bằng vật liệu khóa phái sinh từ mật khẩu đó, tạo thành một chuỗi tuần tự.
DPAPISnoop và khả năng mới
Theo Lefteris Panos tại LRQA Red Team, công cụ DPAPISnoop đã được cập nhật có thể phân tích các tệp CREDHIST và chuyển đổi các mục thành các định dạng hash có thể bẻ khóa ngoại tuyến. Các hash này, được nhận dạng bằng tiền tố $credhist$, có thể được sử dụng trực tiếp với Hashcat.
Chế độ Hashcat mới
Để hỗ trợ điều này, các nhà nghiên cứu đã giới thiệu hai chế độ Hashcat mới:
- 15920: Dành cho các mục CREDHIST sử dụng 3DES với HMAC-SHA1.
- 15930: Dành cho các mục sử dụng AES-256 với SHA-512.
Điều này cho phép kẻ tấn công hoặc người kiểm thử bẻ khóa các mục mật khẩu lịch sử một cách độc lập, mà không cần giải mã toàn bộ khóa DPAPI trước. Khả năng này làm nổi bật các lỗ hổng CVE tiềm ẩn khi thông tin xác thực bị lạm dụng.
Khai thác và phân tích ngoại tuyến
Sau khi trích xuất các hash, chúng có thể được bẻ khóa ngoại tuyến bằng các công cụ dựa trên GPU như Hashcat. Nếu một mật khẩu được khôi phục, nó có thể được đưa trở lại DPAPISnoop để giải mã các mục khác trong chuỗi. Ví dụ, việc bẻ khóa một mục CREDHIST ở giữa chuỗi sẽ tiết lộ hash SHA1 hoặc NTLM của một mật khẩu cũ hơn, sau đó có thể được sử dụng để mở khóa các mục tiếp theo. Quá trình lặp đi lặp lại này cho phép tái tạo lịch sử mật khẩu của người dùng.
Đáng chú ý, các mục cũ hơn thường sử dụng các lược đồ mật mã yếu hơn, chẳng hạn như PBKDF2 dựa trên SHA1 với 3DES, khiến chúng dễ bẻ khóa hơn đáng kể so với các triển khai SHA512 hiện đại với số lần lặp cao hơn.
Tác động đến an ninh mạng
Mặc dù hành vi này không phải là một lỗ hổng bảo mật, nó nhấn mạnh cách các tính năng hợp pháp của Windows có thể bị lạm dụng để thu thập thông tin xác thực khi kẻ tấn công có quyền truy cập hệ thống tệp. Khả năng khôi phục mật khẩu lịch sử cung cấp thông tin tình báo có giá trị, bao gồm:
- Xác định các mẫu tái sử dụng mật khẩu.
- Hiểu biết về xu hướng độ phức tạp của mật khẩu.
- Khả năng tái sử dụng trên các hệ thống doanh nghiệp.
Điều này có thể tăng tốc đáng kể việc di chuyển ngang (lateral movement) và leo thang đặc quyền (privilege escalation) trong các cuộc tấn công thực tế. Đây là một cảnh báo CVE quan trọng cho các tổ chức.
Giám sát và phòng ngừa
Các chuyên gia phòng thủ nên giám sát việc truy cập bất thường vào các đường dẫn liên quan đến DPAPI, đặc biệt là:
%APPDATA%\Microsoft\Protect\CREDHIST- Thư mục DPAPI dành riêng cho người dùng.
- Truy cập từ xa qua SMB hoặc các chia sẻ quản trị.
Các công cụ bảo mật như Sigma và Elastic đã cung cấp các quy tắc phát hiện cho việc truy cập đáng ngờ vào các tệp lịch sử thông tin xác thực. Thách thức chính là phân biệt hoạt động DPAPI bình thường với các mẫu truy cập tệp bất thường.
Các biện pháp khuyến nghị
Các tổ chức được khuyến nghị thực thi các chính sách mật khẩu mạnh, hạn chế quyền truy cập tệp cục bộ và giám sát hoạt động của điểm cuối đối với hành vi bất thường liên quan đến thông tin xác thực. Nghiên cứu của Lefteris Panos nhấn mạnh cách xem xét lại các cơ chế đã biết như DPAPI vẫn có thể khám phá ra các cơ hội tấn công mới, củng cố tầm quan trọng của nghiên cứu liên tục về bảo mật thông tin xác thực Windows.
Thông tin chi tiết về các công cụ và kỹ thuật khai thác có thể tham khảo tại DPAPISnoop trên GitHub.










