Credential Dumping: Local Security Authority (LSA|LSASS.EXE)

LSA và LSASS lần lượt là viết tắt của “Local Security Authority” và “Local Security Authority Subsystem (Server)”

LSA là một quy trình hệ thống được bảo vệ để xác thực và đăng nhập người dùng vào máy tính cục bộ. Thông tin đăng nhập miền được sử dụng bởi hệ điều hành và được xác thực bởi LSA. LSA có thể xác thực thông tin người dùng bằng cách kiểm tra cơ sở dữ liệu Trình quản lý tài khoản bảo mật (SAM) nằm trên cùng một máy tính.

LSA duy trì thông tin chính sách bảo mật cục bộ trong một tập hợp các đối tượng.

  • Chính sách chứa thông tin chính sách toàn cục.
  • TrustedDomain chứa thông tin về miền đáng tin cậy.
  • Tài khoản chứa thông tin về tài khoản người dùng, nhóm hoặc nhóm cục bộ.
  • Dữ liệu cá nhân chứa thông tin được bảo vệ, chẳng hạn như mật khẩu tài khoản máy chủ. Thông tin này được lưu trữ dưới dạng chuỗi được mã hóa.

LSASS quản lý chính sách hệ thống cục bộ, xác thực người dùng và kiểm tra trong khi xử lý dữ liệu bảo mật nhạy cảm như băm mật khẩu và khóa Kerberos. Phần bí mật của thông tin đăng nhập tên miền, mật khẩu, được bảo vệ bởi hệ điều hành. Chỉ mã chạy trong quy trình với LSA mới có thể đọc và ghi thông tin xác thực tên miền.

LSASS có thể lưu trữ thông tin đăng nhập ở nhiều dạng, bao gồm:

  • Bản rõ được mã hóa đảo ngược
  • Vé Kerberos (vé cấp vé (TGT), vé dịch vụ)
  • NT Hash
  • Hàm băm LAN Manager (LM)

Hướng dẫn thao túng chứng chỉ LSA (LSASS.EXE)

Công cụ hoặc tập lệnh bắt buộc: Mimikatz.exe & Mimikatz.ps1, Procdump PowerShell Empire, Koadic, Metasploit

Máy chủ: Trong ngữ cảnh của lsass.exe Windows 7 & cho LSA Windows 10

Mục lục

  • Windows 7 (lsass.exe) Credential Dump bằng Mimikatz
  • Kết xuất thông tin xác thực Windows 10 (LSA) bằng Mimikatz
  • PowerShell Empire
  • Koadic
  • Metasploit
  • CrackMapExec

Windows 7 (lsass.exe) Credential Dump bằng Mimikatz

Phương pháp 1: Trình quản lý tác vụ

Trong máy cục bộ của bạn (đích) và mở trình quản lý tác vụ, điều hướng đến các quy trình để khám phá quy trình đang chạy của lsass.exe và nhấp chuột phải để khám phá đoạn mã của nó. Chọn tùy chọn “Tạo tệp kết xuất” sẽ kết xuất thông tin xác thực được lưu trữ.

Bạn sẽ nhận được tệp “lsass.DMP” bên trong thư mục / Temp của thư mục tài khoản người dùng trong / AppData / local

Bây giờ hãy khởi động mimikatz để lấy dữ liệu ra khỏi tệp DMP bằng lệnh sau:

privilege::debug
sekurlsa::minidump C:\Users\raj\AppData\Local\Temp\lsass.DMP
sekurlsa::logonpasswords

Như bạn có thể thấy từ hình ảnh bên dưới, chúng tôi có một mật khẩu văn bản rõ ràng.

Phương pháp 2: ProcDump

Công cụ ProcDump là một công cụ dòng lệnh miễn phí được xuất bản bởi Sysinternals với mục đích chính là giám sát ứng dụng và tạo kết xuất bộ nhớ.

Sử dụng tùy chọn dòng lệnh “-accepteula” để tự động chấp nhận thỏa thuận cấp phép Sysinternals và Thông số “-ma” để ghi tệp kết xuất với tất cả bộ nhớ quy trình (lsass.exe) ở định dạng .dmp.

procdump.exe -accepteula -ma lsass.exe mem.dmp

Một lần nữa, lặp lại bước tương tự và sử dụng mimikatz để đọc tệp mem.dmp.

privilege::debug
sekurlsa::minidump C:\Users\raj\Downloads\Procdump\mem.dmp
sekurlsa::logonpasswords

Và bây giờ, như bạn có thể thấy từ hình ảnh bên dưới, chúng tôi đã có một mật khẩu văn bản rõ ràng.

Phương pháp 2: comsvcs.dll

DLL comsvcs.dll được tìm thấy trong Windows \ system32 gọi minidump với rundll32, vì vậy bạn có thể sử dụng nó để kết xuất bộ nhớ quy trình Lsass.exe để truy xuất thông tin đăng nhập. Hãy xác định ID quy trình cho lsass trước khi chạy DLL.

Get-Process lsass
.\rundll32.exe C:\windows\System32\comsvcs.dll, MiniDump 492 C:\mem.dmp full

Một lần nữa, lặp lại bước tương tự và sử dụng mimikatz để đọc tệp mem.dmp.

privilege::debug
sekurlsa::minidump C:\mem.dmp
sekurlsa::longonpasswords

Một lần nữa, chúng tôi có một mật khẩu văn bản rõ ràng.

Dump thông tin xác thực Windows 10 (LSA)

Phương pháp 1: Trình quản lý tác vụ

Lsass.exe được đổi tên thành LSA trong Windows 10 và quy trình có thể được tìm thấy bằng tên “Cơ quan bảo mật cục bộ” bên trong trình quản lý tác vụ. Nó cũng sẽ lưu tệp kết xuất ở định dạng .dmp, do đó, một lần nữa lặp lại các bước tương tự như đã thực hiện ở trên.

Đi tới Trình quản lý tác vụ và khám phá quy trình dành cho Cơ quan bảo mật cục bộ, sau đó giải nén kết xuất của nó như được hiển thị.

Bạn sẽ nhận được tệp “lsass.DMP” bên trong thư mục / Temp của thư mục tài khoản người dùng trong / AppData / local.

Một lần nữa, lặp lại bước tương tự và sử dụng mimikatz để đọc tệp dmp.

privilege::debug
sekurlsa::minidump C:\Users\raj\AppData\Local\Temp\lsass.DMP
sekurlsa::longonpasswords

Vì là Windows 10, do đó, mức độ bảo mật sẽ tăng lên và chúng ta lấy được các hàm băm mật khẩu, như bạn có thể thấy từ hình ảnh bên dưới.

Phương pháp 2: Mimikatz tham số -patch

Tham số “-patch” đang vá lại tệp samrv.dll đang chạy bên trong lsass.exe hiển thị các hàm băm LM và NT. Vì vậy, khi bạn thực hiện các lệnh sau, nó sẽ kết xuất các băm mật khẩu.

privilege::debug
lsadump::lsa /patch

Phương pháp 3: Mimikatz – Độ cao mã thông báo

Chúng tôi đang sử dụng mimikatz một lần nữa để lấy các băm trực tiếp mà không liên quan đến bất kỳ tệp kết xuất hoặc thực thi DLL nào, điều này được gọi là “Mạo danh mã thông báo”. Như bạn có thể quan sát, chúng tôi đã gặp lỗi khi cố gắng chạy lệnh sau với tư cách là người dùng cục bộ.

privilege::debug
lsadump::secrets

Điều này có thể được thực hiện bằng cách mạo danh mã thông báo sẽ được sử dụng để nâng cấp quyền cho HỆ THỐNG (mặc định) hoặc tìm mã thông báo quản trị miền và kết quả là bạn sẽ có thể kết xuất mật khẩu dưới dạng văn bản rõ ràng.

privilege::debug
token::elevate
lsadump::secrets

Phương pháp 4: Chỉnh sửa quyền đối với tệp trong sổ đăng ký

Các bí mật của LSA được lưu giữ trong Cơ quan đăng ký. Nếu các dịch vụ được chạy với tư cách người dùng cục bộ hoặc miền, mật khẩu của chúng sẽ được lưu trữ trong Sổ đăng ký. Nếu tự động đăng nhập được kích hoạt, nó cũng sẽ lưu trữ thông tin này trong Sổ đăng ký.

Điều này cũng có thể được thực hiện cục bộ bằng cách thay đổi các giá trị quyền bên trong sổ đăng ký. Điều hướng đến Computer \ HKEY_LOCAL_MACHINE \ SECURITY .

Mở rộng thư mục SECURITY và chọn Permission từ bên trong danh sách.

Cho phép ” Toàn quyền kiểm soát ” cho người dùng Quản trị viên như được hiển thị.

Như bạn có thể thấy rằng lần này, chúng tôi có thể tìm nạp các thư mục con trong Thư mục bảo mật.

Vì vậy, khi bạn chạy lại lệnh sau, bạn có thể thấy thông tin đăng nhập ở dạng văn bản thuần túy như được hiển thị.

privilege::debug
lsadump::secrets

Phương pháp 5: Lưu tệp đặc quyền của sổ đăng ký

Tương tự, bạn có thể sử dụng một cách tiếp cận khác cũng sẽ hoạt động theo hướng tương tự. Lưu các giá trị đăng ký hệ thống và bảo mật với sự trợ giúp của lệnh sau.

reg save HKLM\SYSTEM system
reg save HKLM\security security

Như bạn có thể thấy nếu bạn sử dụng lệnh “ lsa :: secret ” mà không có đối số được chỉ định, bạn sẽ không thể truy xuất mật khẩu, nhưng nếu bạn nhập đường dẫn cho tệp được mô tả ở trên, mimikatz sẽ kết xuất mật khẩu ở dạng văn bản thuần túy .

privilege::debug
lsadump::secrets /system:c:\system /security:c:\security

PowerShell Empire

Empire là một trong những Framework kiểm tra thâm nhập tốt hoạt động giống như Metasploit, bạn có thể tải xuống từ GitHub và cài đặt trong máy tấn công của mình để khởi động cuộc tấn công từ xa.

Đây là một bài khai thác, do đó, trước tiên bạn cần phải xâm nhập máy chủ và sau đó sử dụng mô-đun sau để kết xuất bí mật LSA

usemodule credentials/mimikatz/lsadump
execute

Kết quả là, nó kết xuất các băm mật khẩu được lưu như trong hình ảnh đã cho.

Koadic

Koadic, hay COM Command & Control, là một bộ rootkit sau khai thác Windows tương tự như các công cụ kiểm tra thâm nhập khác như Meterpreter và Powershell Empire. Nó cho phép kẻ tấn công chạy comsvcs.dll sẽ gọi minidump và tìm nạp kết xuất của lsass.exe để truy xuất các băm NTLM đã lưu trữ. Đọc thêm từ đây

use comsvcs_lsass

Kết quả là, nó đã kết xuất các băm mật khẩu được lưu như trong hình ảnh đã cho.

Metasploit

Phương pháp 1: Nạp kiwi

Như chúng ta đã biết Metasploit giống như Swiss Knife, nó đi kèm với nhiều mô-đun, do đó nó cho phép kẻ tấn công thực thi mimikatz từ xa và trích xuất kết xuất Lsass để lấy thông tin xác thực. Vì nó là một hậu khai thác, do đó bạn nên có phiên meterpreter của máy chủ ở Giai đoạn ban đầu và sau đó tải kiwi để khởi tạo mimikatz và thực hiện lệnh.

load kiwi
lsa_dump_secrets

Phương pháp 2: Tải PowerShell

Tương tự, bạn cũng có thể tải PowerShell ở vị trí của kiwi và thực hiện thao tác tương tự, ở đây chúng tôi đang sử dụng tập lệnh PowerShell của mimikatz. Điều này có thể được thực hiện bằng cách thực hiện các lệnh sau:

load powershell
powershell_import /root/powershell/Invoke-Mimikatz.ps1
sekurlsa::logonpasswords

Thao tác này sẽ kết xuất các băm mật khẩu như thể hiện trong hình dưới đây.

CrackMapExec

CrackMapExec là một công cụ có thể được cài đặt với một cài đặt apt đơn giản và nó chạy rất nhanh chóng. LSA có quyền truy cập vào thông tin xác thực và chúng tôi sẽ khai thác thực tế này để thu thập thông tin đăng nhập bằng công cụ này, vì vậy chúng tôi sẽ thao tác tập lệnh này để kết xuất các hàm băm như đã thảo luận trước đó. Nó đòi hỏi một loạt các thứ.

Yêu cầu:

Tên người dùng: Quản trị viên

Mật khẩu: Ignite @ 987

Địa chỉ IP: 192.168.1.105

Cú pháp: crackmapexec smb [Địa chỉ IP] -u ‘[Tên người dùng]’ -p ‘[Mật khẩu]’ –lsa

crackmapexec smb 192.168.1.105 -u ‘Administrator’ -p ‘Ignite@987’ –lsa

Kết luận: Trong bài đăng này, bạn đã tìm hiểu về Windows LSA Protection và cách hoạt động của nó cùng với nhiều kỹ thuật khai thác theo ngữ cảnh để có được mật khẩu hoặc mã băm văn bản rõ ràng. Hầu hết các cuộc tấn công đã thay thế lsass.exe gốc từ lsass.exe của phần mềm độc hại để đánh lừa các giám sát bảo mật.

Nguồn Hacking Article


Trả lời

Bạn cần phải đăng nhập để gửi bình luận:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Đăng xuất /  Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Đăng xuất /  Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Đăng xuất /  Thay đổi )

Connecting to %s

%d người thích bài này: