Webshell-cli adalah skrip Python yang memungkinkan mengakses webshell yang terkait dengan cara Commandline. Webshell-Cli mendukung mengubah direktori kerja saat ini, mengatur variabel lingkungan dan memungkinkan unggahan dan unduhan file yang mudah.


Webshell-cli hanyalah skrip Python. Setelah memasang persyaratan, Anda harus dapat menjalankannya:
[qtc@devbox ~] $ git clone https://github.com/qtc-de/webshell-cli
[qtc@devbox ~] $ cd webshell-cli
[qtc@devbox webshell-cli] $ pip3 install --user -r requirements.txt
[qtc@devbox webshell-cli] $ python3 webshell-cli.py
usage: webshell-cli.py [-h] [-m] [-f FILE_HISTORY] [-s SHELL] url
webshell-cli.py: error: the following arguments are required: urlWebshell-Cli hanya berfungsi dengan webshells yang secara khusus dibangun untuk proyek ini. Anda dapat menemukan webshells yang didukung dalam direktori webshells. Saat ini, teknologi sisi server berikut didukung:
Selain itu, direktori webshell berisi skrip build untuk membangun .war .
Webshell-Cli mendukung beberapa perintah khusus yang dapat dipanggil dengan menggunakan tanda seru sebagai karakter pertama pada baris perintah. Di bawah ini Anda dapat menemukan daftar perintah khusus yang saat ini didukung:
!background <cmd> Jalankan perintah yang ditentukan di latar belakang!download <rfile> [<lfile>] Unduh file jarak jauh dari server!upload <lfile> [<rfile>] Unggah file lokal ke server!get <rfile> [<lfile>] alias untuk diunduh!put <lfile> [<rfile>] alias untuk diunggah!eval <lfile> evaluasi file lokal di server (hanya tersedia untuk php)!env [<var>=<val>] Tetapkan variabel lingkungan!help Tampilkan Menu Bantuan Ini Saat menggunakan perintah !env tanpa menentukan variabel, itu menghasilkan daftar yang berisi variabel yang saat ini ditetapkan. Ketika !env clear telah ditentukan, semua variabel lingkungan yang ditambahkan secara manual dihapus.
Anda dapat menggunakan perintah shell khusus untuk setiap shell dengan menggunakan opsi --shell . Perintah shell default adalah /bin/sh -c untuk unix dan cmd.exe /c untuk windows. Bagaimana dengan shell base64 ? Tidak masalah:
[qtc@devbox ~] $ webshell-cli 172.18.0.2/webshell.php --shell base64
[nobody@efd0355fda4c /var/www/html/public] $ /etc/issue
V2VsY29tZSB0byBBbHBpbmUgTGludXggMy4xNQpLZXJuZWwgXHIgb24gYW4gXG0gKFxsKQoK Secara default, Webshell-Cli menggunakan file riwayat ~/.webshell_cli_history untuk memberi Anda riwayat baris perintah untuk perintah terbaru Anda. Anda dapat menggunakan opsi -f untuk menentukan lokasi yang berbeda untuk menyimpan file riwayat atau menggunakan opsi -m untuk menggunakan riwayat perintah dalam memori sebagai gantinya.
Kontribusi untuk proyek ini selalu diterima. Folder Docs berisi spesifikasi yang mencantumkan persyaratan agar webshells dapat dikonsumsi oleh webshell-cli . Selain itu, dokumentasi mencantumkan beberapa keputusan desain, karena hal -hal tertentu tidak begitu mudah untuk diimplementasikan.
Proyek ini dimaksudkan untuk digunakan hanya untuk tantangan CTF dan tujuan pendidikan. Karena banyak webshell tersedia di internet dan cangkang dari repositori ini bahkan tidak menerapkan kebingungan atau enkripsi, mereka tidak akan berguna untuk serangan dunia nyata.