Cara Full Akses Sistem dengan Symlink ke Root

Februari 03, 2017

root symlink 

Ketika seorang penyerang berhasil mendapatkan akses ke situs web, mereka tidak akan mungkin berhenti di situ, mereka akan bertujuan untuk mendapatkan root penuh (admin) akses ke seluruh server.
Jika ada lebih, situs host pada server yang diserang, Sangat mungkin mereka akan mencoba untuk berkompromi setiap satu dari mereka. 

Bagaimana bisa seorang penyerang meningkat hak akses mereka?
Bagaimana mereka bisa pergi dari FTP-satunya akses ke root mendapatkan di server?
Kali kami akan menunjukkan beberapa teknik yang penyerang untuk pergi dari keterbatas akses FTP / web, akses tingkat root penuh pada server.


1 symlinking ke / (root)


Host yang paling bersama hanya memberikan akses FTP terbatas untuk klien mereka. Dalam account ini dibatasi FTP pengguna akhir hanya bisa melihat isi dari situs web mereka sendiri, atau ruang bersama.
ini memberikan tingkat tambahan keamanan karena pengguna akhir tidak dapat menggunakan akses shell untuk melihat-server.

Namun, ada teknik lama yang kita masih sering melihat. Penyerang akan lakukan adalah menghubungkan sub direktori di dalam website untuk root "/" direktori yang memungkinkan mereka untuk menelusuri seluruh server. Semua yang mereka lakukan untuk mengeksekusi menjalankan perintah PHP sederhana:
symlink ("/", "./symroot");

Apa yang Anda lihat di sini adalah symroot direktori yang menghubungkan ke root "/" direktori.
Apa yang beberapa host lakukan adalah upaya untuk menggagalkan jenis kegiatan dengan menggunakan kontrol yang lebih ketat pada pengaturan PHP mereka dengan membatasi akses file hanya direktori home user.

Hal ini dapat dilewati jika penyedia hosting mendukung pekerjaan cron kustom, aturan procmail kustom atau script bahkan cgi-bin.
Dalam beberapa kasus, para penyerang dapat membuat file kustom php.ini untuk menimpa default dan aturan yang lebih ketat yang ditetapkan oleh penyedia server.

Pada akhirnya, penyerang akan mengambil apa pun yang Anda berikan kepada mereka. Pada server yang paling bersama (Bahkan server pada beberapa layanan hosting yang lebih populer), penyerang dapat membuat symlink seperti seperti kami menunjukkan di atas untuk meningkatkan akses. Dalam kasus lain itu sedikit lebih banyak pekerjaan yang harus dilakukan, tapi masih sangat mungkin.

 

Menavigasi melalui sistem file

Tidak peduli bagaimana penyerang berhasil menghubungkan root, tetapi setelah mereka lakukan, mereka memiliki hak untuk menavigasi melalui sistem file menggunakan browser.
Dalam sebagian besar serangan yang kita lihat, penyerang juga menambahkan file .htaccess yang memperlakukan semua file sebagai teks biasa. Bahayanya adalah bahwa semua file kemudian dapat dilihat dari jarak jauh. Berikut adalah contoh dari server di mana direktori / sym diciptakan dan file bernama root ditambahkan menghubungkan ke /:
ncftp /www/ > cd sym
OK. Current directory is /www/sym
ncftp /www/sym > ls -la
drwxr-xr-x 2 userX userX 4096 May 19 10:47 .
drwxr-xr-x 36 userX userX 4096 May 19 10:47 ..
-rw-r–r– 1 userX userX 175 May 19 10:47 .htaccess
lrwxrwxrwx 1 userX userX 1 May 19 10:47 root -> /

Jika Anda melihat file .htaccess, memiliki aturan untuk mengobati semua PHP, Conf, file .log dan sql sebagai teks biasa, sehingga isi terlihat dalam browser biasa:
 
Options all
DirectoryIndex Sux.html
AddType textplain .php
AddType textplain .conf
AddType textplain .sql
AddType textplain .log
AddHandler server-parsed .php
AddHandler txt .html
Require None
Satisfy Any



Melindungi terhadap serangan symlink


Ini saja tidak memecahkan seluruh masalah. Masih memiliki akses PHP dan hanya bisa opendir ("/") dan akses semua direktori. Untuk mencegah PHP dari mengakses file apapun di luar direktori mereka, Anda perlu menentukan pengaturan open_basedir hanya memiliki akses ke direktori mereka.

Bahkan kemudian, ini masih tidak mencakup semua sudut jika klien masih memiliki akses SSH, dapat menciptakan cron kustom, atau jika Anda mengizinkan shell exec dalam PHP (system, exec, ", dll).


Permissions!

Solusi nyata terhadap masalah ini adalah pengaturan hak akses sangat ketat pada server Anda sehingga bahkan jika bypass ditemukan, penyerang tidak akan bisa query atau mengakses direktori yang kritis dan / atau file, atau informasi pengguna.Baca juga Bagaimana Cara Menjadi Hacker Profesional

Dalam kesimpulan dari seri ini, kami akan menunjukkan izin kami dianjurkan dan setup untuk membantu mengatasi masalah ini.

Artikel Terkait

Next Article
« Prev Post
Previous Article
Next Post »
Penulisan markup di komentar
  • Untuk menulis huruf bold silahkan gunakan <strong></strong> atau <b></b>.
  • Untuk menulis huruf italic silahkan gunakan <em></em> atau <i></i>.
  • Untuk menulis huruf underline silahkan gunakan <u></u>.
  • Untuk menulis huruf strikethrought silahkan gunakan <strike></strike>.
  • Untuk menulis kode HTML silahkan gunakan <code></code> atau <pre></pre> atau <pre><code></code></pre>, dan silahkan parse dulu kodenya pada kotak parser di bawah ini.
Konversi Code
Disqus
Silahkan Berkomentar Dengan