Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Http-Asynchronous-Reverse-Shell — [POC] Asynchronous reverse shell using the HTTP protocol. | Kitploit
Outils/GitHubGitHub/onsec-fr/http-asynchronous-reverse-shell
IDS/IPS EvasionLateral MovementWeb Application ExploitationData ExfiltrationPost-ExploitationPenetration TestingCommand and ControlRed TeamingRemote Access Tool

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Payload Development
Archived
GitHubonsec-fr/http-asynchronous-reverse-shell

Http-Asynchronous-Reverse-Shell

[POC] Asynchronous reverse shell using the HTTP protocol.

Voir le dépôt
27260il y a 1 anVérifié par Kitploit
Partager

Shell inversée asynchrone HTTP/S

Bannière


✨ Introduction

À une époque où les systèmes de détection avancés tels que IDS, IPS, EDR, AV et pare-feux dominent les réseaux d'entreprise, les contourner lors d'évaluations de sécurité offensive est un défi. La plupart des shells inversés utilisent des tunnels TCP (couche 4), qui sont désormais systématiquement analysés et signalés.

Ce projet présente une solution innovante : un shell inversé complètement asynchrone sur HTTP/S qui se fond dans le trafic web normal en imitant le comportement d'un utilisateur légitime.

Contrairement aux shells inversés traditionnels, il utilise uniquement des requêtes GET, apparaît comme des requêtes web normales et peut éventuellement fonctionner sur HTTPS avec un certificat légitime falsifié, minimisant ainsi les chances de détection.


Comment ça fonctionne ?

  1. L'application cliente est exécutée sur la machine cible.
  2. Le client initie la connexion avec le serveur.
  3. Le serveur accepte la connexion – puis :

Le client interroge le serveur jusqu'à obtenir des instructions.
L'attaquant fournit des instructions au serveur.
Lorsqu'une commande est définie, le client l'exécute et retourne le résultat.
Et ainsi de suite, jusqu'à ce que l'attaquant décide de mettre fin à la session.

Avertissement

Cet outil est uniquement destiné à être une démonstration de preuve de concept pour des tests de sécurité autorisés. Assurez-vous de vérifier les lois locales avant d'utiliser cet outil.

🔧 Fonctionnalités

Aujourd'hui, en tant que POC, les fonctionnalités suivantes sont implémentées :

  • Communication furtive utilisant uniquement GET.
  • Imite le trafic de Bing.com.
  • Commandes encodées en Base64 dans le HTML.
  • Exfiltration via les cookies HTTP.
  • HTTPS optionnel avec certificat falsifié.
  • Délais aléatoires et modèles par requête.
  • Réutilisation d'un seul processus PowerShell pour contourner l'EDR.
  • Compatible avec les commandes CMD et PowerShell.
  • Fenêtre contextuelle d'erreur factice optionnelle.
  • Caché du Gestionnaire des tâches.
  • Exécution au niveau administrateur optionnelle.

🎥 Démonstration

Côté client

Côté serveur


⚙️ Configuration

Client (C#)

  1. Ouvrez HARS.sln dans Visual Studio.
  2. Modifiez Config.cs pour l'adapter à votre environnement :
root@kitploit:~
    class Config
        {
            /* Comportement */
            // Afficher un message d'erreur factice au démarrage
            public static bool DisplayErrorMsg = true;
            // Titre du message d'erreur factice
            public static string ErrorMsgTitle = "This application could not be started.";
            // Description du message d'erreur factice
            public static string ErrorMsgDesc = "Unhandled exception has occured in your application. \r\r Object {0} is not valid.";
            // Délai minimal entre les appels du client
            public static int MinDelay = 2;
            // Délai maximal entre les appels du client
            public static int MaxDelay = 5;
            // URI factice demandée - Attention : doit commencer par "search" (ou nécessite une modification côté serveur)
            public static string Url = "search?q=search+something&qs=n&form=QBRE&cvid=";
            /* Écouteur */
            // Nom d'hôte/IP du serveur C&C
            public static string Server = "https://127.0.0.1";
            // Port d'écoute du serveur C&C
            public static string Port = "443";
            // Autoriser les certificats auto-signés ou "non sécurisés" - Attention : souvent nécessaire dans un environnement d'entreprise utilisant un proxy
            public static bool AllowInsecureCertificate = true;
        }

Optionnel : Modifiez HARS.manifest pour ajuster le niveau de privilège.

requestedExecutionLevel peut être défini sur asInvoker, highestAvailable ou requireAdministrator.

Propriétés du projet

Vous pouvez ici personnaliser les informations de l'assembly et une icône pour le fichier.

Remarque : la version cible du framework .NET est 4.6, disponible par défaut dans Windows 10.
Pour Windows 7, choisissez .NET 3.5 si vous ne souhaitez pas avoir à installer des fonctionnalités manquantes.

Compilation

Compilez le projet depuis Visual Studio. Le client doit être généré dans le dossier Http Asynchronous Reverse Shell\HARS_Client\HARS\bin\Release.

Terminé !


Serveur (Python)

  1. Modifiez HARS_Server.py dans HARS_Server/www/ pour personnaliser le port ou le chemin du certificat.
root@kitploit:~
PORT = 443
CERT_FILE = '../server.pem'
  1. Exécutez avec :
root@kitploit:~
python HARS_Server.py

Remarques

-Les journaux HTTP se trouvent dans Http Asynchronous Reverse Shell\HARS_Server\logs\
-Vous pouvez ajouter vos propres modèles (n'importe quelle page HTML) dans Http Asynchronous Reverse Shell\HARS_Server\templates

🔗 Références

  • Revue de détection RSA NetWitness par Lee Kirkpatric
  • Analyse approfondie par Nasreddine Bencherchali


@onSec-fr

Télécharger l’outil