Sử dụng PowerShell để nâng cao đặc quyền tài khoản cục bộ

Sử dụng PowerShell để nâng cao đặc quyền tài khoản cục bộ

Leo thang đặc quyền là việc sử dụng quyền tài khoản hiện tại của kẻ tấn công để có được quyền truy cập bổ sung, thường là cao hơn vào hệ thống. Mặc dù việc leo thang đặc quyền có thể là kết quả của việc khai thác zero-day, tin tặc bậc thầy thực hiện một cuộc tấn công có chủ đích hoặc phần mềm độc hại được ngụy trang khéo léo, nhưng điều này thường xảy ra nhất do máy tính hoặc tài khoản bị cấu hình sai. Phát triển cuộc tấn công hơn nữa, những kẻ tấn công khai thác một số lỗ hổng riêng lẻ, cùng nhau có thể dẫn đến rò rỉ dữ liệu thảm khốc.

Tại sao người dùng không có quyền quản trị viên cục bộ?

Nếu bạn là chuyên gia bảo mật, có vẻ hiển nhiên rằng người dùng không nên có quyền quản trị viên cục bộ, vì điều này:

  • Làm cho tài khoản của họ dễ bị tấn công hơn
  • Làm cho những cuộc tấn công tương tự trở nên nghiêm trọng hơn nhiều

Thật không may, đối với nhiều tổ chức, đây vẫn là một vấn đề gây tranh cãi và đôi khi đi kèm với các cuộc thảo luận sôi nổi (ví dụ, xem người quản lý của tôi nói rằng tất cả người dùng phải là quản trị viên cục bộ). Không đi sâu vào chi tiết của cuộc thảo luận này, chúng tôi tin rằng kẻ tấn công đã giành được quyền quản trị viên cục bộ trên hệ thống đang được điều tra, thông qua việc khai thác hoặc do máy không được bảo mật đúng cách.

Bước 1: Đảo ngược độ phân giải tên DNS bằng PowerShell

Theo mặc định, PowerShell được cài đặt trên nhiều máy trạm cục bộ và trên hầu hết các máy chủ Windows. Và mặc dù không phải không cường điệu khi cho rằng nó được coi là một công cụ điều khiển và tự động hóa cực kỳ hữu ích, nhưng nó cũng có khả năng biến thành một công cụ gần như vô hình. phần mềm độc hại không có tệp (một chương trình hack không để lại dấu vết của một cuộc tấn công).

Trong trường hợp của chúng tôi, kẻ tấn công bắt đầu thực hiện trinh sát mạng bằng tập lệnh PowerShell, lặp tuần tự qua không gian địa chỉ IP của mạng, cố gắng xác định xem một IP nhất định có phân giải thành máy chủ hay không và nếu có thì tên mạng của máy chủ đó là gì.
Có nhiều cách để hoàn thành nhiệm vụ này, nhưng sử dụng cmdlet Được-ADComputer là một lựa chọn đáng tin cậy vì nó trả về một tập hợp dữ liệu thực sự phong phú về mỗi nút:

 import-module activedirectory Get-ADComputer -property * -filter { ipv4address -eq ‘10.10.10.10’}

Nếu tốc độ trên các mạng lớn là một vấn đề, có thể sử dụng lệnh gọi hệ thống DNS ngược:

[System.Net.Dns]::GetHostEntry(‘10.10.10.10’).HostName

Sử dụng PowerShell để nâng cao đặc quyền tài khoản cục bộ

Phương pháp liệt kê các máy chủ trên mạng này rất phổ biến vì hầu hết các mạng không sử dụng mô hình bảo mật không tin cậy và không giám sát các truy vấn DNS nội bộ để phát hiện các đợt hoạt động đáng ngờ.

Bước 2: Chọn mục tiêu

Kết quả cuối cùng của bước này là có được danh sách tên máy chủ và máy trạm có thể được sử dụng để tiếp tục cuộc tấn công.

Sử dụng PowerShell để nâng cao đặc quyền tài khoản cục bộ

Dựa vào tên của nó, máy chủ 'HUB-FILER' có vẻ như là một mục tiêu đáng giá vì... Theo thời gian, các máy chủ tệp có xu hướng tích lũy một số lượng lớn các thư mục mạng và có quá nhiều người truy cập vào chúng.

Duyệt bằng Windows Explorer cho phép chúng tôi xác định rằng có một thư mục dùng chung đang mở nhưng tài khoản hiện tại của chúng tôi không thể truy cập nó (có thể chúng tôi chỉ có quyền liệt kê).

Bước 3: Học ACL

Bây giờ trên máy chủ HUB-FILER và chia sẻ mục tiêu, chúng tôi có thể chạy tập lệnh PowerShell để lấy ACL. Chúng tôi có thể thực hiện việc này từ máy cục bộ vì chúng tôi đã có quyền quản trị viên cục bộ:

(get-acl hub-filershare).access | ft IdentityReference,FileSystemRights,AccessControlType,IsInherited,InheritanceFlags –auto

Kết quả thực hiện:

Sử dụng PowerShell để nâng cao đặc quyền tài khoản cục bộ

Từ đó, chúng ta thấy rằng nhóm Người dùng miền chỉ có quyền truy cập vào danh sách nhưng nhóm Bộ phận trợ giúp cũng có quyền chỉnh sửa.

Bước 4: Nhận dạng tài khoản

Đang chạy Nhận-Thành viên nhóm AD, chúng ta có thể có được tất cả các thành viên của nhóm này:

Get-ADGroupMember -identity Helpdesk

Sử dụng PowerShell để nâng cao đặc quyền tài khoản cục bộ

Trong danh sách này, chúng tôi thấy tài khoản máy tính mà chúng tôi đã xác định và đã truy cập:

Sử dụng PowerShell để nâng cao đặc quyền tài khoản cục bộ

Bước 5: Sử dụng PSExec để làm việc dưới tài khoản máy tính

PsExec từ Microsoft Sysiternals cho phép bạn thực thi các lệnh trong ngữ cảnh của tài khoản hệ thống SYSTEM@HUB-SHAREPOINT mà chúng tôi biết là thành viên của nhóm mục tiêu Bộ phận trợ giúp. Tức là chúng ta chỉ cần làm:

PsExec.exe -s -i cmd.exe

Vậy thì bạn có toàn quyền truy cập vào thư mục đích HUB-FILERshareHR, vì bạn đang làm việc trong bối cảnh tài khoản máy tính HUB-SHAREPOINT. Và với quyền truy cập này, dữ liệu có thể được sao chép sang thiết bị lưu trữ di động hoặc được truy xuất và truyền qua mạng.

Bước 6: Phát hiện cuộc tấn công này

Lỗ hổng cấu hình quyền tài khoản cụ thể này (tài khoản máy tính truy cập vào mạng chia sẻ thay vì tài khoản người dùng hoặc tài khoản dịch vụ) có thể được phát hiện. Tuy nhiên, nếu không có công cụ phù hợp thì việc này rất khó thực hiện.

Để phát hiện và ngăn chặn loại tấn công này, chúng ta có thể sử dụng ĐạtƯu điểm để xác định các nhóm có tài khoản máy tính trong đó và sau đó từ chối quyền truy cập vào chúng. Cảnh báo dữ liệu đi xa hơn và cho phép bạn tạo thông báo cụ thể cho loại tình huống này.

Ảnh chụp màn hình bên dưới hiển thị thông báo tùy chỉnh sẽ được kích hoạt bất cứ khi nào tài khoản máy tính truy cập dữ liệu trên máy chủ được giám sát.

Sử dụng PowerShell để nâng cao đặc quyền tài khoản cục bộ

Các bước tiếp theo sử dụng PowerShell

Bạn muốn biết thêm? Sử dụng mã mở khóa "blog" để truy cập miễn phí toàn bộ Khóa học video Cơ bản về PowerShell và Active Directory.

Nguồn: www.habr.com

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