Tổng quan về syskey và cách phá pass SYSKEY
Syskey là 1 điểm rất hay của window, nó sẽ cho 1 lớp mã hóa thêm vào mớ pass trong SAM.
Mớ pass lộn xôn của Win đều chứa trong SAM database. Mục đích chính của việc này là ngăn cản tấn công ngoại tuyến, nên dù có copy SAM cũng ko làm dc gì ( vì ko có key giải mã)
Trên thực tế 1 trong những phương thức phổ biến là thu thập tất cả pass từ viêc copy cơ sở dữ liệu của SAM và sau đó sử dụng 1 trong những trình crack pass tốt để khôi phục lại pass (reset pass). Dĩ nhiên là phải can thiệp ờ mức vật lý, cách này chỉ làm dc nếu SAM chưa bị mã hóa bởi syskey.
Với syskey cần phải remove lớp mã hóa (128 bit mã hóa)
Mã hóa dc sử dụng bởi syskey để encrypt mớ pass dc gọi là boot key hay key hệ thống.
3 Phương pháp đăng nhập tài khoản trong window là:
1.Đăng nhập tài khoản người dùng trong startup, hệ thống sẽ yêu cầu pass dc cung cấp.
2.Dùng 1 hệ thống phát sinh key dc lưu trên đĩa mềm. Hệ thống sẽ hỏi đĩa boot mềm khi startup.
3.Dùng 1 hệ thống phát sinh key lưu trên máy cục bộ có dùng thuật toán phức tạp, đây là phương pháp mặc định.
Trong 2 phương pháp đầu nói chung thì ko có gì phải bận tâm, nếu bạn ko thể lấy pass hay mất boot floopy bạn hoàn toàn phải hack SAM.
1 số công cụ có thể dc biên tập để tự động làm các tiến trình này (trong Hiren boot)
Trường hợp 3 thì hoàn toàn khác, phức tạp hơn chút.
Bây giờ ta sẽ đề cập đến trường hợp bootkey lưu trên hệ thống.
trong suốt quá trình boot của window, trước khi user dc phép logon vào system, 1 xâu các phiên làm việc (session manager) sẽ kích hoạt winlogon process. Winlogon là quá trình đòi hỏi load các security cục bộ của hệ thống phụ -Local Security
Subsystem -(Lsass). hệ thống bảo mật này lần lượt load dịch vụ quản lý bảo mật tài khoản -Security Accounts Manager(SAM) service.
Tới đây registry dc truy cập bởi các quá trình đã nói trên.
Cụ thể các keys dc truy cập tới là:
HKEY_LOCAL_MACHINESystemCurrentControlSetContro lLsaJD
HKEY_LOCAL_MACHINESystemCurrentControlSetContro lLsaSkew1
HKEY_LOCAL_MACHINESystemCurrentControlSetContro lLsaData
HKEY_LOCAL_MACHINESystemCurrentControlSetContro lLsaGBG
Cũng chính những key này dc truy cập trong suốt quá trình phát sinh bootkey bởi công cụ syskey.exe
Chính những sự phân tích kỹ lượng sự truy xuất các key này đã tiết lộ rằng "thuật toán" chỉ là phép hoán vị của lớp tên các khóa trên ko hơn ko kém.
Nó hầu như trở nên dễ dàng để phát triển công cụ lấy lại bootkey từ registry.
Để làm mọi thứ trở nên đơn giản trên hệ thống SP4, ACL (access control list) danh sách kiểm soát truy cập trong những khóa trên cho phép user đọc dc "con đường truy xuất" nên những user bình thường có thể lần ra dc nơi registry giữ bootkey.
Công cụ dc phát triển làm nhiệm vụ này là Bkreg
trên các hệ SP4+ nó vẫn có khả năng lần ra bootkey. ACLs trên các khóa registry chỉ cho phép administrator truy cập vào nó, nên Bkreg có thể tìm bootkey trên SP4 system chỉ với điều kiện là làm cho nó hợp pháp bởi administrator.
Nhưng có 1 đường khác để thâm nhập vào registry
1 kẻ tấn công có thể đánh cắp hive hệ thống và truy cập vào registry để lấy bootkey.
Công cụ này là Bkhive.
Sau khi lấy dc bootkey,nhiệm vụ bây giờ là giải mã.
Quá trình giải mã pass có sử dụng bootkey gọi là Samss
Các bước làm như sau:
1. Giá trị 'F' của registry key "SAMSAMDomainsAccount" nghĩa là dc phép truy cập. Nội dung của giá trị này là kiểu binary. 16 byte(bắt đầu ở offset 0x70) từ giá trị F sẽ dc xào trộn với bootkey và 1 số hằng số nào đó. Kết quả dc dùng như là chìa khóa để giải mã 32 byte của giá trị F (bắt đầu từ 0x80).
Sau đó 16 byte đầu của kết quả trên dc dùng sau cùng trong thuật toán. Ta tạm gọi đó là hbootkey.
2. Với mỗi khóa giải phóng tài khoản trong "SAM SAM Domains Account Users". Giá trị "V" của khóa nghĩa là dc truy cập. Nội dung của giá trị này là kiểu binary và chứa syskey đã mã hóa pass. hbootkey(đã tính ở bước 1), giá trị của các key giải phóng và chuỗi hằng số dc kết hợp. Kết quả dc dùng như là chìa khóa để giải mã (RC4) các pass bị syskeyed.
Vậy là syskey mã hóa pass với thuật toán RC4 có sử dụng key "something" dc phát sinh từ syskey bootkey.
(tài liệu biên tập từ nhiều nguồn)
Boot bằng CD (Dùng Hirent' Boot)
Chọn
9.Next
4.Password & Registry tools..
2.Offline NT/2K/XP password changer & registry editor
Select:[1]
(Nhìn lên trên 1 chút thấy Disks:, các phân vùng ổ cứng hiện ra chọn số nào có chữ "Boot" sau cùng)- Thường là số 1
[WINDOWS/system32/config]: Bấm Enter 2 lần
What to do? [1] -> Bấm 2 chọn "Syskey status....."
Do you really.............[n] bấm y
What to do?[1]-> Bấm q
About to write file...............[n] : Bấm y
New run?[n]: Bấm n
Có thể sau khi xóa xong nó sẽ cheak lỗi Win và đứng cứng ngắt ở đó, kệ nó, chờ 1 chút nó tự Restart lại và vào
Note:Chỉ áp dụng được cho ổ ATA, không dùng được cho SATA
Có thể sau khi xóa xong nó sẽ cheak lỗi Win và đứng cứng ngắt ở đó, kệ nó, chờ 1 chút nó tự Restart lại và vào
Khuyến cáo :sau khi thử cái này thì nên Ghost hay cài lại Win thì tốt hơn