Windows hay các hệ điều hành như Linux, MacOS, … cho phép tồn tại nhiều tài khoản người dùng trên một máy. Các tài khoản đều có thể cho phép bạn tùy biến cài đặt tùy theo sở thích của mình và tách biệt so với các thành viên khác trong khi sử dụng chung máy tính. Bài viết này mình sẽ nêu một số cách để chuyển đổi tài khoản người dùng trên Windows, nghe có vẻ khá đơn giản đúng không :D
Sử dụng giao diện
Windows 10
Cách 1
Nhấn Ctrl + ALT + Del và click Switch user
Cách 2
Vào start chọn avatar (user account button) trên Start Menu sau đó chọn tài khoản cần chuyển.
Cách 3
Nhấn Windows + L để khóa tài khoản hiện tại và được trở về màn hình hóa, nhấn bàn phím hoặc chuột rồi bạn sẽ thấy màn hình đăng nhập. Chọn tài khoản mà bạn muốn sử dụng và đăng nhập
Windows 8 và Windows 7 có thể sử dụng 1 số cách bên trên, tuy nhiên các thao tác với giao diện khác biệt hơn 1 chút
Sử dụng câu lệnh
Đối với pentester khi lên được shell trên máy Windows thì họ sẽ chỉ sử dụng được cmd hoặc powershell (trừ trường hợp lấy được remote desktop Windows). Vậy làm cách nào để switch user khi mình có thể lấy được tài khoản mật khẩu của 1 trong số những user trên Windows.
Không giống như trên Linux hoặc MacOS thì ta có thể chuyển đổi tài khoản bằng lệnh cực đơn giản là
|
|
sau đó nhập mật khẩu là ta có thể chuyển được sang tài khoản đó rồi. Vậy đối với Windows thì phải làm như thế nào?
Cách 1
Bước 1: Tải file nc.exe
lên máy target chạy Windows (file nc.exe
có sẵn trên Kali tại /usr/share/windows-resources/binaries/nc.exe
)
Bước 2: Sử dụng powershell trên máy target. Gõ powershell trên command line để khởi động powershell.
Bước 3: Copy đoạn code này paste lên máy target (Ở đây ví dụ có tài khoản mật khẩu là UserX:P@ssW0rd
)
|
|
Với phần #Your code
sẽ thực thi lệnh với quyền là của tài khoản UserX
(tương tự đối với sudo -u
trên Linux) nên sử dụng reverse shell đến máy pentester để sử dụng tài khoản UserX
Ví dụ code
|
|
Với 10.10.14.5
là địa chỉ ip pentester, 4444
là port đang lắng nghe ở máy của pentester
Cách 2
Cách trên thì sử dụng khi cổng 5896 đang không được bật. Cổng 5896 là cổng dịch vụ winrm
(Microsoft Windows Remote Management) https://www.speedguide.net/port.php?port=5986
Nếu cổng 5896 được bật thì sử dụng Evil-WinRM
để switch user
Evil-WinRM sử dụng ruby các bạn có thể tải và cài đặt tại đây https://github.com/Hackplayers/evil-winrm
|
|
Có 1 cách khác có thể bật cổng 5986 lên khi máy chủ đang chưa bật. Sử dụng Remote Port Forwarding để mở cổng 5986 thông với cổng 5986 bên máy local.
Các bạn có thể đọc bài này của mình để hiểu cách hoạt động của Remote Port Forwarding https://viblo.asia/p/ssh-tunneling-local-port-forwarding-va-remote-port-forwarding-07LKXJ3PlV4
Bước 1: Tải chương trình plink.exe
lên target Windows, có ở sẵn Kali OS tại đường dẫn /usr/share/windows-resources/binaries/plink.exe
Bước 2: Khởi động dịch vụ ssh trên máy pentester
Bước 3: Gõ lệnh trên target sử dụng powershell
|
|
Với user và passwd là tài khoản mật khẩu ssh trên máy pentester, 10.10.14.5
là địa chỉ ip của máy pentester.
Bước 4:
Sử dụng Evil-WinRM
để kết nối tới user mình muốn
|
|
Cách 3:
Sử dụng psexec.exe
có thể download tại https://docs.microsoft.com/en-us/sysinternals/downloads/psexec
|
|
Vậy là mình có thể sử dụng câu lệnh với quyền của UserX
rồi.
Cảm ơn @testanull đã gợi ý cho mình 1 cách khá hay ;)