
Weaponized web shell
Weevely est un web shell conçu pour la post-exploitation, qui peut être étendu sur le réseau à l'exécution.
Téléversez l'agent PHP Weevely sur un serveur web cible pour obtenir un accès shell distant. Il dispose de plus de 30 modules pour faciliter les tâches administratives, maintenir l'accès, fournir une connaissance de la situation, élever les privilèges et se propager dans le réseau cible.
Consultez la page Install pour installer Weevely et ses dépendances.
Consultez la page Getting Started pour générer un agent et vous y connecter.
Parcourez le Wiki pour lire des exemples et des cas d'utilisation.
weevely generate <password> <path>
weevely <URL> <password> [cmd]
L'agent est un petit script PHP polymorphe difficilement détecté par les antivirus, et le protocole de communication est obfusqué dans les requêtes HTTP.
Weevely est facilement extensible pour implémenter un audit interne, un énumérateur de comptes, un extracteur de données sensibles, un scanner réseau, faire fonctionner les modules comme client HTTP ou SQL, et bien d'autres choses encore.
| Module | Description |
|---|
| :audit_filesystem | Audite le système de fichiers pour détecter les permissions faibles. |
| :audit_suidsgid | Recherche les fichiers avec les flags SUID ou SGID. |
| :audit_disablefunctionbypass | Contourne les restrictions disable_function avec mod_cgi et .htaccess. |
| :audit_etcpasswd | Lit /etc/passwd avec différentes techniques. |
| :audit_phpconf | Audite la configuration PHP. |
| :shell_sh | Exécute des commandes shell. |
| :shell_ssh | Exécute des commandes shell via SSH. |
| :shell_su | Exécute des commandes avec su. |
| :shell_php | Exécute des commandes PHP. |
| :system_extensions | Collecte la liste des extensions PHP et du serveur web. |
| :system_info | Collecte les informations système. |
| :system_procs | Liste les processus en cours d'exécution. |
| :backdoor_reversetcp | Exécute un shell TCP inversé. |
| :backdoor_tcp | Lance un shell sur un port TCP. |
| :bruteforce_sql | Force par bruteforce une base de données SQL. |
| :file_gzip | Compresse ou décompresse les fichiers gzip. |
| :file_clearlog | Supprime une chaîne d'un fichier. |
| :file_check | Obtient les attributs et permissions d'un fichier. |
| :file_upload | Téléverse un fichier vers le système de fichiers distant. |
| :file_webdownload | Télécharge une URL. |
| :file_tar | Compresse ou décompresse les archives tar. |
| :file_download | Télécharge un fichier depuis le système de fichiers distant. |
| :file_bzip2 | Compresse ou décompresse les fichiers bzip2. |
| :file_edit | Édite un fichier distant dans un éditeur local. |
| :file_grep | Affiche les lignes correspondant à un motif dans plusieurs fichiers. |
| :file_ls | Liste le contenu d'un répertoire. |
| :file_cp | Copie un fichier unique. |
| :file_rm | Supprime un fichier distant. |
| :file_upload2web | Téléverse automatiquement un fichier dans un dossier web et obtient l'URL correspondante. |
| :file_zip | Compresse ou décompresse les fichiers zip. |
| :file_touch | Modifie l'horodatage d'un fichier. |
| :file_find | Recherche des fichiers selon des noms et attributs donnés. |
| :file_mount | Monte le système de fichiers distant via HTTPfs. |
| :file_enum | Vérifie l'existence et les permissions d'une liste de chemins. |
| :file_read | Lit un fichier distant depuis le système de fichiers distant. |
| :file_cd | Change le répertoire de travail courant. |
| :sql_console | Exécute une requête SQL ou lance la console. |
| :sql_dump | Remplacement multi-SGBD de mysqldump. |
| :net_mail | Envoie un courrier. |
| :net_phpproxy | Installe un proxy PHP sur la cible. |
| :net_curl | Effectue une requête HTTP de type curl. |
| :net_proxy | Exécute un proxy local pour faire transiter la navigation HTTP/HTTPS par la cible (pivot). |
| :net_scan | Scan de ports TCP. |
| :net_ifconfig | Obtient les adresses des interfaces réseau. |