Yandex Dzen.

Apa yang dieksploitasi dan bagaimana peretas menggunakannya

Salam pembuka. Yang merupakan peretas dan apa yang telah mereka diskusikan. Kami tidak akan mengulangi, selain itu, dibahas secara terbuka di jaringan dan di bioskop. Metode hacker dan jenis serangan hacker banyak, oleh karena itu, untuk tidak membuat dari artikel "Vinigrette", kami menyoroti satu, yang populer dengan peretas hitam dan pada tahun 2020. Saya tidak akan mencoba untuk "menghemat intrik", kami akan menjelaskan: "eksploitasi".

Untuk kenalan pengantar, kami memahami bahwa eksploitasi adalah bagian dari kode komputer (atau program yang dikompilasi dan tidak hanya ...), yang menggunakan "kerentanan korban" dan kemudian tujuan bercabang untuk: mendapatkan server "menggantung"; Gangguan. Jika pembaca menemukan kata-kata "Dos Atak", lalu tahu bahwa 85%, peretas menggunakan "eksploitasi". Sebenarnya, namanya, jika diterjemahkan dari bahasa Inggris, akan berarti: "Menggunakan sesuatu." Atau mengeksploitasi, karenanya akar dari kata "exploit".

Program-program ini (kami akan menyerukan eksploitasi oleh program, Meskipun itu tidak benar ) dibagi menjadi tujuan: untuk Windows, Linux dan pengoperasian lainnya; Untuk program lain dan sebagainya. Dll.

Saya pikir para pembaca ingin berusaha memahami bagaimana program ajaib ini, dapat terlibat, menggantung, dan menyediakan akses "Master" pada server "aneh". Pertama mari kita cari tahu mengapa perjanjian itu disebut program, tidak benar. Faktanya adalah bahwa itu tidak hanya dieksploitasi file yang dikompilasi, tetapi juga sebuah teks (bahkan notepad dengan deskripsi cara meretas "sistem" sudah dieksploitasi). Saya mengerti kesalahpahaman yang paling mudah dari membaca, tetapi itu adalah: Jika Anda membuka notebook dan ada dalam bentuk teks untuk menulis bagaimana "menikmati" server apa pun, itu juga akan menjadi eksploit. Tetapi apa yang paling tidak seperti, mendiversifikasi sebuah artikel, mari kita setidaknya kadang-kadang menulis kata: program. Selain itu, eksploitasi seperti itu menemukan dalam bentuk program pada bahasa "apa pun". Peretas, ini adalah mantan programmer yang di masa lalu mencari kesalahan dalam program Oleh karena itu, orang-orang seperti itu dengan mudah memiliki bahasa C / C ++, Perl dan TD. Tugas dari program-program tersebut dikurangi menjadi buffer overflow, SQL Records, "Linden" permintaan untuk situs dan sebagainya.

Apa yang dieksploitasi dan bagaimana peretas menggunakannya

Itu terjadi untuk menggunakan urutan program, jika tugasnya harus "rumit".

Temukan dan unduh eksploitasi yang sudah jadi di internet terbuka tidak legal. Dan tentu saja, penulis tidak merekomendasikan mencari program seperti itu dalam darknet.

Jadi, sekarang ketika pemahaman tentang eksploitasi disimpan di kepala, pergi ke "praktik virtual". Misalkan situasi: di kota Voronezh, seorang pria hidup yang secara teratur terbang ke Moskow dan di sana "milik kita" seorang wanita yang sudah menikah. Pasangan yang tertipu, tidak dapat menangkap kekasih, diputuskan pada balas dendam, tetapi jarak jauh. Untuk melakukan ini, suami Anda diperlukan akses ke komputer "SCOVING". Jangan masuk ke detailnya, tetapi kami menyatakan fakta: diketahui bagaimana browser menggunakan "saingan licik". Untungnya untuk suami tingkat lanjut, di browser ini ada "kerentanan". Tetap hanya untuk memaksa kekasih "menjalankan kode", yang tanpa sepengetahuan pengguna, memuat malware "di samping". Kemudian suami menulis surat, atas nama istrinya dan mengirim kekasih melalui surat. Hasilnya dapat dimengerti (membuka huruf, dan kode sudah "dalam kasus").

Program-program terkenal adalah: "Angler" (set kompleks (bekerja dalam RAM)); "neutrino" (Brainchild Rusia di Jawa, biaya 34 ribu dolar); "Blackhole Kit" (mengalahkan browser Chrome, "Oslik", "Firefox" ).

Komentar ("negatif \ positif"). Langganan. Suka. Selamat tinggal.

Hai, Habrovsk. Untuk mengantisipasi awal kursus "Administrator Linux. Profesional » Pakar kami - Alexander Kolesnikov menyiapkan artikel yang menarik, yang dengan senang hati kami akan berbagi dengan Anda. Juga mengundang siswa masa depan dan semua yang ingin mengunjungi pelajaran terbuka pada topik tersebut "Metode dan kemampuan untuk men-debug skrip cangkang bash."

Sistem operasi Linux telah membuktikan kepada dunia semua kekuatan proyek open source - terima kasih kepada-Nya hari ini, kami memiliki kesempatan untuk melihat ke dalam kode sumber OS yang berfungsi dan berdasarkan pada TI untuk merakit sistem Anda sendiri untuk memecahkan tujuan tertentu untuk memecahkan tujuan Anda. Karena keterbukaannya, Linux akan menjadi sistem operasi teraman di dunia, karena kode open source memungkinkan untuk mengembangkan dan meningkatkan subsistem perlindungan dari serangan pada OS dan meningkatkan sistem operasi itu sendiri. Memang, pada saat ini ada sejumlah besar perlindungan masyarakat yang dibuat: hari ini tidak lagi mudah untuk menggantikan kerentanan jenis buffer overflow untuk mendapatkan hak istimewa yang meningkat sama seperti 20 tahun yang lalu. Namun, hari ini Anda dapat menemukan eksploitasi dalam domain publik, yang bahkan pada versi terbaru kernel dapat meningkatkan hak istimewa pengguna. Pertimbangkan dalam artikel ini, karena berhasil dan mengapa ternyata. Kami akan melalui komponen utama eksploitasi dan mempertimbangkan bagaimana beberapa dari mereka bekerja.

Semua informasi yang diberikan dikumpulkan secara eksklusif untuk tujuan informasi.

Jenis eksploitasi

Pilih istilah umum yang akan kita tunjukkan apa itu Mengeksploitasi - Algoritma yang melanggar fungsi normal sistem operasi, yaitu, mekanisme pemisahan akses. Kami juga akan memperkenalkan konsepnya Kerentanan. - Ini adalah ketidaksempurnaan perangkat lunak yang dapat digunakan oleh algoritma eksploit. Tanpa kerentanan, keberadaan eksploitasi tidak mungkin.

Kami memperkenalkan klasifikasi eksploitasi. Pemisahan dasar eksploitasi ke subkelompok untuk sistem operasi apa pun dimulai pada tingkat arsitektur. Saat ini, sistem operasi mencakup setidaknya 2 tingkat hak istimewa yang digunakan untuk pekerjaan mereka. Di bawah ini adalah gambar yang jelas menunjukkan pemisahan hak istimewa. Gambar diambil Dari sini .

Gambar dengan sangat jelas menunjukkan bahwa kernel (ruang kernel) hadir dalam sistem operasi, biasanya mode yang paling istimewa, di sinilah kita memanggil sistem operasi. Dan level kedua adalah kustom (ruang pengguna): aplikasi dan layanan reguler yang kami gunakan setiap hari diluncurkan di sini.

Secara historis dikembangkan bahwa untuk masing-masing level di atas, kerentanan dapat ditemukan di mana eksploitasi dapat dibuat, tetapi eksploit untuk setiap level memiliki keterbatasan.

Di tingkat pengguna, setiap eksploitasi yang mempengaruhi aplikasi akan memiliki hak istimewa yang digunakan oleh pengguna yang meluncurkan aplikasi rentan. Oleh karena itu, jenis eksploitasi ini memungkinkan Anda untuk mendapatkan kontrol penuh atas OS hanya jika aplikasi diluncurkan oleh administrator sistem. Berbeda dengan tingkat pengguna, tingkat kernel. Jika mengandung kode yang rentan, itu dapat segera memungkinkan sistem operasi dengan hak istimewa maksimum. Di bawah ini akan fokus pada studi eksploitasi ini.

Eksplant

Bayangkan statistik kecil tentang pengungkapan kerentanan bagi kernel distribusi sistem operasi Linux dari Debian, Suse, Ubuntu, Arch Linux dari 4 tahun terakhir.

Data yang diambil Dari sini . Gambar itu tidak berpura-pura lengkap, tetapi itu menunjukkan bahwa ada banyak kerentanan, dan bahkan hari ini ada dari apa yang harus dipilih untuk membangun eksploit. Mari kita coba jelaskan apa yang dieksploitasi.

Setiap eksploitasi untuk setiap tingkat sistem operasi hari ini terdiri dari bagian yang harus diimplementasikan dalam kodenya:

  1. Operasi Persiapan:

    1) Menavigasi tampilan memori yang diperlukan

    2) Membuat objek yang diperlukan di OS

    3) Melewati mekanisme perlindungan OS untuk kerentanan

  2. Panggil bagian yang rentan.

  3. Melakukan muatan:

    1) Untuk membuka akses ke OS

    2) Untuk mengubah konfigurasi OS

    3) Untuk output sistem

Saat melakukan semua item, yang ditunjukkan di atas, Anda dapat menulis eksploitasi yang bisa diterapkan. Ambil beberapa eksploitasi tahun-tahun terakhir dan cobalah untuk mencari tahu apakah mungkin untuk menemukan beberapa keteraturan atau pinjaman yang digunakan untuk melanggar pemisahan akses dalam sistem operasi Linux. Sebagai objek penelitian, kami mengambil eksploitasi yang menggunakan kerentanan berikut dengan pengidentifikasi CVE:

Cve-2020-8835.

CVE-2020-27194.

Bencana eksploit.

Cve-2020-8835. рBERIKSA KERNEL OS LINUX dari versi 5.5.0. Kerentanan dalam penerapan teknologi EBPF. . Teknologi ini dirancang untuk memastikan bahwa pengguna dapat membuat penangan khusus untuk memfilter lalu lintas jaringan. Sebagai komponen utama untuk pemfilteran, mesin virtual dengan set perintah sendiri digunakan. Kode yang dilakukan oleh mesin virtual hidup di kernel: kesalahan dalam kode ini membawa penyerang untuk bekerja dengan memori dengan hak maksimum. Dalam hal kerentanan yang dijelaskan, masalahnya adalah bahwa operasi pemrosesan operasi 32 bit tidak diproses dengan benar, dan mesin virtual dapat menulis dan membaca data dalam RAM Nuklir.

Sebagai penulis eksploitasi menggunakan kerentanan ini dan apa yang dilakukan muatan, pertimbangkan lebih lanjut.

Tahap persiapan

Untuk tahap ini, bagian selanjutnya dari kode bertanggung jawab.

Baris 394 - Membuat objek dalam memori yang akan menyimpan data pada perintah untuk EBPF. . Baris 400 memuat ke dalam kode memori yang akan dilakukan di mesin virtual dan akan melanggar kondisi untuk memproses perintah 32 bit. Persiapan memori selesai, garis-garis berikut akan membuat objek soket yang akan disebut perintah yang diunggah bpf. . Setelah itu, ruang kerentanan akan dimulai.

Panggil kode yang rentan

Memanggil kode yang rentan, atau lebih tepatnya, bekerja dengan perintah mesin virtual dilakukan dari garis 423 hingga 441. Tugas utama dari kode ini adalah untuk mendapatkan alamat dasar dari struktur yang ada dalam memori, dalam hal ini adalah heap (heap) proses. Segera setelah perintah-perintah ini dilakukan, eksploitasi akan dapat mendeteksi data yang digunakan oleh sistem operasi untuk mengontrol pemisahan akses. Dalam sistem operasi Linux, data ini disimpan dalam struktur Tasangka. .

Payload.

Beban yang berguna dari eksploitasi ini adalah bahwa setelah eksekusi, Anda dapat menjalankan proses dengan hak pengguna akar . Untuk ini, kode eksploit menghasilkan modifikasi bidang bidang kernel sistem operasi Linux - Cred. Ini adalah struktur yang memasuki struktur Tasangka. . Struktur Kode Sumber. Cred. Dapat ditemukan sini .

Tindakan modifikasi lapangan Credit Struct. dapat dilihat pada baris 472.473.474. . Yaitu, tindakan ini mengatur ulang nilainya UID, GID, SGID Proses yang dibuat. Dari sudut pandang, diatur ke nilai pengidentifikasi yang biasanya digunakan akar . Metode ini sangat mirip dengan yang digunakan untuk serangan pada sistem operasi Windows.

Anda dapat melindungi diri sendiri tanpa memperbarui OS, jika Anda membuat perubahan berikut ke konfigurasi: sudo sysctl kernel.unprivileed_bpf_disabled = 1

CVE-2020-27194. - lagi kerentanan di EBPF. . Ada versi versi 5.8. *. Pencipta teknologi ini bercanda itu bpf. - Ini Javascript untuk kernel. Bahkan, penilaian ini tidak jauh dari kebenaran. Mesin virtual benar-benar melakukan manipulasi daripada tim menggunakan JIT Technology, yang sendiri membawa semua kerentanan browser khas di kernel sistem operasi, yaitu, sulit untuk mengkonfigurasi subsistem perlindungan untuk melindungi kode. Kerentanan yang dipertimbangkan adalah bahwa dari kode mesin virtual, Anda dapat memodifikasi area RAM. Mungkin ini disebabkan oleh fakta bahwa mesin virtual tidak aman bekerja dengan operasi panjang 64 bit. Kerentanan yang sepenuhnya mirip dengan yang kami anggap di atas.

Eksploitasi, yang dirancang untuk menggunakan kerentanan yang dijelaskan, melakukan operasi yang sama dengan eksploitasi CVE-2020-8835. Algoritma eksploit berikutnya:

  1. Unduh kode dengan pemrosesan operasi 64 bit

  2. Buat soket dan kirim data untuk menelepon perintah EBPF.

    1. Temukan dalam pikiran alamat struktur Tasangka. Dengan melakukan perintah di mesin virtual

  3. Memodifikasi nilai UID, GID, SGID dan luncurkan cangkang interaktif.

Penulis menulis kode sumber dengan chip baru dan fitur tambahan. Kami menawarkan pembaca untuk melihat kode sendiri. Tahap karya-tahap yang terdaftar dari eksploitasi di atas tidak akan menjadi bingung.

Perlindungan terhadap kerentanan ini tanpa menggunakan pembaruan adalah sama: sudo sysctl kernel.unprivileed_bpf_disabled = 1

Apa hasilnya?

Berdasarkan dua eksploitasi, yang dipertimbangkan dalam artikel tersebut, dapat diasumsikan bahwa meningkatnya hak istimewa di OS Linux modern tidak lagi sihir pemrograman gelap, tetapi proses template terisi penuh yang mencakup penggunaan kembali fungsi dan objek dalam RAM. Pada saat yang sama, bahkan tidak perlu untuk menulis kode bergantung dasar (shellcode) yang akan melakukan sebagian besar tindakan. Cukup cukup untuk mengubah pengidentifikasi yang digunakan untuk menetapkan hak istimewa bagi pengguna.

Pelajari lebih lanjut tentang kursus "Administrator Linux. Profesional. "

Mendaftar untuk pelajaran terbuka "Metode dan kemampuan untuk men-debug skrip cangkang bash."

Baca lebih lajut:

Apa itu exploit?

Pada tahap pengembangan di semua program dan jaringan, mekanisme perlindungan terhadap peretas dalam jenis kunci, peringatan pengawasan tidak sah, tertanam. Kerentanannya mirip dengan jendela yang terbuka, untuk melewati yang tidak akan jauh lebih sulit bagi penyerang. Dalam hal komputer atau jaringan, penyerang dapat menetapkan perangkat lunak berbahaya dengan menggunakan kerentanan untuk mendapatkan kontrol atau menginfeksi sistem untuk tujuan tentara bayaran mereka dengan konsekuensi yang relevan. Mangkuk semua ini terjadi tanpa pengetahuan pengguna.

Eksplant
Bagaimana eksploit muncul?

Eksploitasi disebabkan oleh kesalahan dalam proses pengembangan perangkat lunak, sebagai akibat dari kerentanan yang berhasil digunakan dalam sistem perlindungan program, yang berhasil digunakan oleh cybercriminal untuk mendapatkan akses tak terbatas ke program itu sendiri, dan melaluinya ke seluruh komputer . Eksplan diklasifikasikan sesuai dengan jenis kerentanan, yang digunakan oleh hacker: nol hari, dos, spoofing atau xxs. Tentu saja, pengembang program akan segera membebaskan pembaruan keamanan untuk menghilangkan cacat yang ditemukan, namun hingga saat ini, program ini masih rentan terhadap penyusup.

Bagaimana cara mengenali eksploit?

Karena eksploitasi menggunakan bar dalam mekanisme keamanan program, pengguna biasa hampir tidak memiliki kesempatan untuk menentukan keberadaan mereka. Itulah mengapa sangat penting untuk mempertahankan program yang sudah mapan diperbarui, terutama dalam pembaruan keamanan tepat waktu, yang diproduksi oleh pengembang program. Dalam hal pengembang perangkat lunak melepaskan pembaruan keamanan untuk menghilangkan kerentanan tertentu dalam perangkat lunaknya, tetapi pengguna tidak akan membuatnya, maka, sayangnya, program ini tidak akan menerima definisi viral terbaru.

Bagaimana cara menghilangkan eksploitasi?

Karena fakta bahwa eksploitasi adalah konsekuensi dari cacat yang dilakukan, eliminasi mereka termasuk dalam tugas langsung pengembang, sehingga penulis harus menyiapkan dan mengirim koreksi kesalahan. Namun, kewajiban untuk mempertahankan program yang diinstal diperbarui dan tepat waktu menginstal paket pembaruan agar tidak memberikan kesempatan untuk menggunakan kerentanan, terletak sepenuhnya pada pengguna. Salah satu cara yang mungkin tidak ketinggalan pembaruan terbaru - gunakan manajer aplikasi yang akan memastikan bahwa semua program yang diinstal diperbarui, atau - apa yang bahkan lebih baik - gunakan alat pencarian dan pemasangan otomatis.

Cara menghentikan upaya oleh peretas untuk menggunakan kerentanan program pihak ketiga
  • Pastikan Anda telah menginstal pembaruan keamanan terbaru dan tambalan untuk semua program.
  • Agar aman online dan tetap up to date dengan acara, atur semua pembaruan segera setelah rilis mereka.
  • Instal dan gunakan Premium Anti-Virus, yang mampu memperbarui program yang diinstal secara otomatis.
Amankan diri Anda dari eksploitasi

Mengandalkan akal sehat dan mengikuti aturan dasar kerja aman di Internet. Peretas hanya dapat memanfaatkan kerentanan jika mereka berhasil mengakses PC Anda. Jangan buka lampiran dalam pesan yang mencurigakan dan jangan mengunduh file dari sumber yang tidak dikenal. Mendukung program yang diinstal diperbarui, dan juga menginstal pembaruan keamanan tepat waktu. Jika Anda ingin menyederhanakan tugas ini secara maksimal, unduh Avast Antivirus, yang tidak hanya akan memberikan perlindungan yang andal terhadap semua jenis malware, tetapi juga akan membantu dengan instalasi pembaruan terbaru untuk program pihak ketiga.

Добавить комментарий