Apa itu shell terbalik?
Daftar isi
- Apa itu cangkang
- Apa itu cangkang terbalik
- Mengapa penyerang/peretas membutuhkan shell terbalik
- Perbedaan antara menyerang melalui WAN dan LAN
- mencegah cangkang terbalik
Pertama, kita harus tahu apa itu shell sebelum beralih ke shell terbalik. Apakah itu cangkang seperti yang ada di belakang kura-kura? bukan itu masalahnya, tetapi dinamai shell karena merupakan lapisan terluar di sekitar sistem operasi. Apa yang dilakukan cangkang? Shell adalah program yang menerjemahkan perintah kita ke sistem operasi. Itu adalah antarmuka antara OS dan pengguna. Dibutuhkan input yang merupakan perintah atau kata kunci dari keyboard dan memberikannya ke OS, dan terminal/CLI (antarmuka baris perintah) memungkinkan Anda mengetik perintah dan berinteraksi dengan shell. Ada pemikiran yang lebih mendalam tentang shell, tetapi saya tidak akan menyatakannya karena blog ini terutama berfokus pada shell terbalik.
Apa itu shell terbalik?
Saya yakin Anda sudah sering mendengar istilah ini di video tutorial dan CTFs tetapi belum tahu artinya. Ini adalah tempat yang tepat untuk Anda. Arti dari shell terbalik ada pada namanya. Itu kebalikan dari apa yang dilakukan koneksi jarak jauh normal - pengguna yang merupakan klien yang menghubungkan server yang merupakan target penyerang sebagian besar. Server mendengarkan koneksi dari pengguna pada port tertentu. Misalnya, server web akan mendengarkan pada port 443 untuk koneksi masuk sehingga dapat memberikan layanan yang diinginkan pengguna yaitu situs web. Bagaimana reverse shell melakukannya secara berlawanan? dalam kasus shell terbalik, server memulai koneksi jarak jauh dan pengguna yang merupakan penyerang akan mendengarkan port yang akan coba disambungkan oleh server. Misalnya, muatan shell terbalik disuntikkan ke server web. Dalam muatan itu, Anda mungkin melihat alamat IP laptop atau PC dan nomor port yang ingin Anda sambungkan ke server. katakanlah 192.168.1.1 dan portnya adalah 4444 dalam payload. Bahkan sebelum Anda menyuntikkan payload, Anda harus mendengarkan port tersebut dengan menggunakan alat seperti Netcat. Setelah Anda menyuntikkannya, Anda akan mendapatkan koneksi dari server ke perangkat Anda.
Mengapa penyerang membutuhkan shell terbalik?
Mengapa penyerang membutuhkannya? Secara umum, itu karena firewall. Firewall membatasi lalu lintas masuk yang dikirim oleh penyerang ke server, tetapi tidak membatasi lalu lintas keluar yang dikirim server ke pengguna/penyerang. Server yang diserang biasanya mengizinkan koneksi hanya pada port tertentu. Misalnya, server web khusus hanya akan menerima koneksi pada port 80 dan 443. Ini berarti tidak ada kemungkinan untuk membuat pendengar shell di server yang diserang.
Di sisi lain, firewall biasanya tidak membatasi koneksi keluar sama sekali. Oleh karena itu, penyerang dapat membuat koneksi terbalik dengan menyiapkan pendengar, dan server akan bertindak seperti pengguna dalam kasus ini, lalu mengirimkan lalu lintas ke penyerang. Yang dibutuhkan penyerang hanyalah mesin yang memiliki alamat IP dan alat seperti Netcat untuk membuat pendengar dan mengikat akses shell ke sana.
Perbedaan antara menyerang melalui WAN dan LAN
Membangun shell terbalik di LAN cukup sederhana. Anda hanya perlu mengetahui alamat IP pribadi Anda dan alamat IP pribadi korban. Misalnya, Anda berada di jaringan 192.168.1.0, dan alamat IP Anda adalah 192.168.1.10; alamat IP korban adalah 192.168.1.20. Sekarang, Anda akan mendapatkan koneksi dengan menyuntikkan muatan dengan alamat IP Anda di dalamnya dan port yang Anda inginkan untuk disambungkan oleh korban.
Bagaimana dengan WAN? Di sinilah menjadi sedikit rumit. Yang harus kita lakukan adalah mengganti IP pribadi kita dengan IP publik yang dapat Anda temukan di google dengan mencari seperti ini: “apa alamat IP publik saya”. Apakah kita selesai di sini? Tidak juga, tapi kami selangkah lebih dekat. Katakanlah, Anda sudah mendapatkan cara atau menemukan kerentanan untuk menyuntikkan payload shell terbalik ke server. Server korban/penyerangan akan mencoba terhubung ke alamat IP publik Anda karena Anda memasukkan IP publik Anda ke dalam payload Anda. Permintaan yang dikirimkan korban akan datang ke router Anda sebelum pendengar Anda di mesin Anda. Perute Anda harus tahu ke mana harus meneruskan permintaan itu ke perangkat yang terhubung ke perute. Itu bisa dilakukan dengan mengaktifkan Port Forwarding di router Anda,
Serangan ini memiliki beban kerja yang lebih sedikit jika alamat IP publik Anda statis, yang tidak perlu dan tidak umum. IP publik untuk router Anda yang disediakan oleh ISP Anda mungkin statis atau tidak. Alamat IP dinamis adalah kesamaan yang biasanya kita miliki dengan IP publik. IP Dinamis berarti IP publik Anda akan berubah setiap kali Anda membangun kembali koneksi Anda ke internet (memulai ulang router, dll.). Dalam hal ini, IP Anda sebelumnya yang tertulis di payload tidak ada gunanya. Tetapi masih ada cara yang lebih kreatif dan cara lain untuk melakukannya secara berbeda dari metode ini.
di sini adalah lembar contekan shell terbalik untuk Anda semua.
Bagaimana cara mencegahnya?
Cara terbaik untuk menghindari shell terbalik adalah dengan melindungi dari serangan yang memungkinkan penipu mendapatkan akses shell sejak awal. Anda dapat menonaktifkan sebagian besar alat yang memungkinkan pembuatan shell terbalik. Seperti yang Anda lihat di atas dari lembar contekan, shell terbalik dapat dibuat menggunakan berbagai alat dan bahasa. Oleh karena itu, Anda dapat mempersulit penyerang, tetapi bukan tidak mungkin.
Referensi
kontributor Wikipedia. (2022, 18 Oktober). kode kulit . Wikipedia.https://en.wikipedia.org/wiki/Shellcode
Nidecki. (2019, 26 Agustus). Apa itu Shell Terbalik . Acunetix.https://www.acunetix.com/blog/web-security-zone/what-is-reverse-shell/
GeeksforGeeks. (2022, 27 September). Perbedaan Antara Bind Shell dan Reverse Shellhttps://www.geeksforgeeks.org/difference-between-bind-shell-and-reverse-shell/

![Apa itu Linked List? [Bagian 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































