Demonstrasi kerentanan di Ubuntu 9.04

15

Untuk kelas keamanan TI, saya ingin menunjukkan peningkatan hak istimewa kepada siswa. Untuk melakukannya, saya melihat exploit/linux/localdaftar dalam Kerangka Metasploit, menemukan (antara lain) exploit/linux/local/sock_sendpagedari Agustus 2009.

Saya mengatur VM dengan 32-bit Ubuntu Server 9.04 ( http://old-releases.ubuntu.com/releases/9.04/ubuntu-9.04-server-amd64.iso ) mulai April 2009. uname -rberi saya 2.6.28-11-generic. Menurut deskripsi exploit

Semua versi Linux 2.4 / 2.6 sejak Mei 2001 diyakini akan terpengaruh: 2.4.4 hingga dan termasuk 2.4.37.4; 2.6.0 hingga dan termasuk 2.6.30.4

Jadi sepertinya server Ubuntu yang saya setel harus sesuai untuk demonstrasi. Namun, saya tidak bisa membuatnya bekerja.

Saya menambahkan pengguna (reguler) di server dan akses SSH berfungsi. Dari dalam Metasploit Framework, saya bisa membuat sesi SSH menggunakan auxiliary/scanner/ssh/ssh_login. Namun, ketika saya menjalankan exploit, saya mengerti

[*] Writing exploit executable to /tmp/mlcpzP6t (4069 bytes)

[*] Exploit completed, but no session was created.

Saya tidak mendapatkan informasi lebih lanjut, bahkan ketika pengaturan DEBUG_EXPLOITmenjadi true. /tmpadalah writabe, juga dari dalam sesi SSH Metasploit:

$ sessions -c "touch /tmp/test.txt"
[*] Running 'touch /tmp/test.txt' on shell session 1 ([redacted])

$ sessions -c "ls -l /tmp"
[*] Running 'ls -l /tmp' on shell session 1 ([redacted])

total 0

-rw-r--r-- 1 [redacted] [redacted] 0 2016-03-28 09:44 test.txt

Saya juga mencoba mengatur WriteableDirke direktori home pengguna di server, tetapi tanpa perubahan. Apa yang kulewatkan di sini? Apakah versi server Ubuntu ini (yang sengaja saya tidak perbarui!) Tidak rentan?

Andreas Unterweger
sumber
Paling tidak, Anda harus memeriksa log VM.
Klaatu von Schlacker
@KlaatuvonSchlacker: Apa sebenarnya yang saya cari? Saya baru saja menjalankan eksploit dan tidak ada entri baru yang ditambahkan ke log VM.
Andreas Unterweger

Jawaban:

16

Rilis 9,04 didukung hingga 23 Oktober 2010. Kerentanan yang Anda temukan dilaporkan pada Agustus 2009. Tampaknya masuk akal bahwa, karena rilis masih terkini dan didukung pada saat itu, ISO telah ditambal dan apa yang Anda unduh adalah versi yang tidak lagi rentan.

Selain itu, Anda tampaknya telah menunjukkan dengan cukup baik bahwa itu tidak rentan. Lagi pula, Anda mencoba mengeksploitasi dan sepertinya gagal.

Mengapa Anda tidak mencoba exploit yang lebih baru? Sesuatu seperti CVE-2013-2094 yang seharusnya juga mempengaruhi Ubuntu , misalnya.

terdon
sumber
Tampaknya tidak ada modul Metasploit untuk CVE-2013-2094. Apakah ada eksploit lain dengan modul Metasploit yang mungkin berfungsi? exploit / linux / local / pkexec dari 2011 tampak menjanjikan, tetapi memberikan hasil yang sama seperti exploit / linux / local / sock_sendpage .
Andreas Unterweger
@AndreasUnterweger oh, maaf, saya tidak menyadari tidak ada modul. Saya baru saja menemukan yang secara acak dengan mencari "hak istimewa eskalasi". Mengenai pkexeceksploitasi, sudahkah Anda memeriksa versi libpolkit-backend-1? Halaman yang Anda tautkan menyatakan bahwa kerentanan memerlukan versi yang lebih lama dari 0.94-1ubuntu1.1.
terdon
Menurutnya dpkg -s libpolkit2, versi yang diinstal adalah 0.9-2ubuntu1.
Andreas Unterweger
@ AndreasUnterweger dalam kasus itu, saya tidak tahu. Maaf. Anda mungkin lebih baik memposting pertanyaan tentang Keamanan Informasi , meminta eksploitasi eskalasi hak istimewa dan kombinasi distribusi yang diketahui berfungsi.
terdon
@AndreasUnterweger dan ThorbjørnRavnAndersen silakan ikuti diskusi ini untuk mengobrol . Saya sudah memindahkan komentar Anda sebelumnya ke sana.
terdon
1

Ini tidak menjawab permintaan spesifik Anda, melainkan memberi Anda lebih banyak pilihan pribadi untuk ditunjukkan kepada siswa Anda ...

Anda mungkin juga ingin mempertimbangkan dua konfigurasi administrator yang salah yang dapat mengarah ke priv esc di 'nix (ada banyak cara lain untuk salah-konfigurasi' kotak nix yang dapat memungkinkan priv esc jadi harap pertimbangkan ini sebagai selera makan) ....

  1. suid dan binari binaan yang dimiliki oleh root / root group ( find / -uid 0 -perm -4000 -type f 2>/dev/nulldan find / -uid 0 -perm -2000 -type f 2>/dev/null) dan melihat apakah mereka dapat ditulis oleh dunia untuk memungkinkan pengguna dengan privilege rendah untuk mengubahnya; folder yang ada di dalamnya dapat ditulis oleh pengguna priv Anda yang rendah - untuk kemungkinan injeksi jalur pustaka. Bagaimana dengan pustaka yang mereka gunakan - adalah pustaka yang dapat diubah: periksa nilai dari setiap header ELF DT_RPATHdan DT_RUNPATHdi dalam binari menggunakan salah satu dari perintah berikut:

    • objdump -x ...
    • readelf -a ...
    • scanelf (dari PaX)
    • elfdump (dari Sun)
    • readelf -a binary | grep PATH
  2. sudoers kekurangan

    • NOPASSWD - Seorang penyerang lokal dapat menggunakan akses ini untuk meningkatkan hak istimewa mereka dalam sistem operasi ketika pengguna lupa untuk mengunci layar mereka

    • Executables yang Hilang di Sudoers - Beberapa file executable dalam /etc/sudoersfile tidak ada. Jika executable dibuat, mereka dapat dijalankan melalui sudo sebagai root yang memungkinkan eskalasi hak istimewa.

    • Entri Sudo Orphaned - /etc/sudoersFile ini dapat berisi sejumlah entri yatim yang tidak ada akun terkait yang dikonfigurasi dalam /etc/passwdfile. Jika pengguna dibuat dengan salah satu nama yatim itu akan memberikan pengguna dengan sarana untuk meningkatkan hak istimewa untuk akses root penuh.

    • Beberapa Program tidak boleh di sudo - suka vi, gunakan :eatau Ctrl o dan gunakan :wuntuk mengakses /etc/shadow.

    • Dipikirkan dengan salah / perintah buruk yang digunakan dalam file sudoers - Saya sering melihat httpddalam sudoers - jadi cobalah sebagai pengguna priv rendah dengan akses sudo untuk menjalankan perintah itu ( sudo -latau sudo -llakan menunjukkan apa yang dapat dilakukan pengguna): sudo /usr/bin/httpd -t /etc/shadowdan lihat kesalahannya.

    • file perms perintah dan file yang disebutkan dalam sudoers lemah - lihat paragraf saya sebelumnya tentang bit biner suid dan guid yang dimiliki oleh root

Richard Braganza
sumber
btw Anda juga dapat mencoba kode asli Spender untuk modul metasploit seandainya modul metasploit tidak cukup benar: grsecurity.net/~spender/exploits
Richard Braganza
Terima kasih banyak untuk daftar barang-barang ini. Namun, saya khawatir bahwa kedua kelompok item akan memerlukan terlalu banyak informasi latar belakang dan konteks dari para siswa - mereka hampir tidak mengenal Linux pada saat studi mereka. Saya ingin menunjukkan kepada mereka bahwa peningkatan hak istimewa adalah hal yang nyata dan bahwa mereka harus selalu memperbaiki sistem yang menjadi tanggung jawab mereka. Ironisnya, saya sejauh ini gagal menunjukkan eskalasi hak istimewa yang sebenarnya seperti yang dijelaskan di atas. EDIT: Saya akan melihat kode Spender, tapi sayangnya saya kehabisan waktu. Terima kasih banyak untuk tautannya.
Andreas Unterweger