Hands-on: Menaikkan Privilege di Sistem Linux dan Windows
Privilege Escalation pada Ubuntu 24.04 Server Linux dan Windows 10
Privilege escalation adalah teknik yang digunakan untuk mendapatkan hak akses lebih tinggi dari yang diberikan, seperti mendapatkan akses root di Linux atau administrator di Windows. Proses ini sering dimulai setelah berhasil mendapatkan akses awal ke sistem target.
Berikut adalah penjelasan dan contoh dari privilege escalation pada Ubuntu 24.04 Server Linux dan Windows 10.
Privilege Escalation pada Ubuntu 24.04 Server Linux
Metode: Sudo Misconfiguration
Misconfiguration pada `sudoers` dapat menjadi pintu masuk bagi penyerang untuk mendapatkan akses root. Misalnya, jika seorang pengguna dapat menjalankan perintah tertentu dengan hak akses root tanpa kata sandi.
Langkah-langkah Eksploitasi:
- Cek Izin sudo:
Di Ubuntu, kita bisa mengecek perintah apa yang bisa dijalankan tanpa kata sandi menggunakan:
sudo -l
Misalkan output-nya seperti ini:
(ALL) NOPASSWD: /usr/bin/find
Artinya, pengguna dapat menjalankan perintah `find` sebagai root tanpa password.
- Eksploitasi:
Dengan kemampuan ini, kita dapat menjalankan shell sebagai root menggunakan:
sudo find . -exec /bin/bash \;
Sekarang Anda mendapatkan akses root.
Metode: Kernel Exploits (Dirty Pipe)
Ubuntu versi tertentu kadang rentan terhadap eksploitasi kernel seperti Dirty Pipe, yang memungkinkan privilege escalation.
Identifikasi Versi Kernel:
- Cek versi kernel yang digunakan:
uname -r
- Eksploitasi Dirty Pipe:
Jika kernel rentan terhadap Dirty Pipe (contoh: kernel 5.8.x), maka Anda dapat menggunakan exploit yang tersedia di GitHub atau situs lain. Setelah menjalankan exploit ini, Anda akan mendapatkan akses root.
Privilege Escalation pada Windows 10
Metode: Insecure Service Permissions
Layanan yang berjalan dengan hak akses `SYSTEM` dapat menjadi celah jika tidak dikonfigurasi dengan benar. Pengguna yang tidak memiliki hak istimewa dapat mengubah binari dari layanan tersebut untuk dijalankan dengan hak akses `SYSTEM`.
Langkah-langkah Eksploitasi:
Cek Layanan yang Rentan:
- Gunakan `accesschk` untuk memeriksa izin layanan:
accesschk.exe -uwcqv "Authenticated Users" *
Identifikasi Layanan dengan Izin Modifikasi:
- Jika ada layanan yang memungkinkan pengguna mengubah executable path, kita bisa mengganti binari layanan dengan payload buatan kita.
Eksploitasi:
- Ubah path dari binari layanan dengan payload buatan Anda (misalnya reverse shell). Restart layanan untuk menjalankan payload dengan hak akses `SYSTEM`.
sc config [service name] binpath= "C:\path\to\payload.exe" net start [service name]
Setelah itu, Anda akan mendapatkan akses dengan hak `SYSTEM`.
Metode: Token Impersonation (SeImpersonatePrivilege)
Pada Windows, hak istimewa SeImpersonatePrivilege memungkinkan untuk mengambil alih token proses lain.
Cek Hak Privilege:
- Gunakan `whoami /priv` untuk memeriksa apakah `SeImpersonatePrivilege` tersedia.
Eksploitasi dengan Juicy Potato:
- Jika privilege tersedia, gunakan alat seperti Juicy Potato untuk mengeksploitasi token dan menjalankan payload sebagai `SYSTEM`.
Kesimpulan:
Privilege escalation melibatkan pemanfaatan konfigurasi yang salah atau kerentanan yang ada pada sistem. Contoh di atas menunjukkan metode yang berbeda pada Ubuntu dan Windows 10, yang sering dijadikan bahan pelajaran dalam kursus ethical hacking. Untuk tujuan praktikum, Anda dapat membuat lingkungan virtual yang aman agar mahasiswa dapat menguji teknik-teknik ini secara legal dan terkontrol.