hacktricks/network-services-pentesting/pentesting-irc.md
2023-06-03 13:10:46 +00:00

6 KiB

Informations de base

IRC était à l'origine un protocole de texte brut (bien qu'il ait été étendu par la suite), qui a été assigné au port 194/TCP par l'IANA. Cependant, la norme de facto a toujours été de faire fonctionner IRC sur 6667/TCP et les numéros de port voisins (par exemple les ports TCP 6660-6669, 7000) pour éviter de devoir exécuter le logiciel IRCd avec des privilèges root.

Pour se connecter à un serveur, il suffit d'un pseudonyme. Une fois la connexion établie, la première chose que le serveur fait est une résolution DNS inverse de votre adresse IP :

Il semble qu'en général, il y ait deux types d'utilisateurs : les opérateurs et les utilisateurs ordinaires. Pour se connecter en tant qu'opérateur, un nom d'utilisateur et un mot de passe sont requis (et dans de nombreuses occasions, un nom d'hôte particulier, une adresse IP et même un masque d'hôte particulier). Parmi les opérateurs, il existe différents niveaux de privilège, l'administrateur ayant le plus haut niveau de privilège.

Ports par défaut : 194, 6667, 6660-7000

PORT     STATE SERVICE
6667/tcp open  irc

Énumération

Bannière

IRC peut prendre en charge TLS.

nc -vn <IP> <PORT>
openssl s_client -connect <IP>:<PORT> -quiet

Manuel

Voici comment se connecter et accéder à IRC en utilisant un pseudonyme aléatoire et ensuite énumérer des informations intéressantes. Vous pouvez en apprendre davantage sur les commandes IRC ici.

#Connection with random nickname
USER ran213eqdw123 0 * ran213eqdw123
NICK ran213eqdw123
#If a PING :<random> is responded you need to send
#PONG :<received random>

VERSION
HELP
INFO
LINKS
HELPOP USERCMDS
HELPOP OPERCMDS
OPERATOR CAPA
ADMIN      #Admin info
USERS      #Current number of users
TIME       #Server's time
STATS a    #Only operators should be able to run this
NAMES      #List channel names and usernames inside of each channel -> Nombre del canal y nombre de las personas que estan dentro
LIST       #List channel names along with channel banner
WHOIS <USERNAME>      #WHOIS a username
USERHOST <USERNAME>   #If available, get hostname of a user
USERIP <USERNAME>     #If available, get ip of a user
JOIN <CHANNEL_NAME>   #Connect to a channel

#Operator creds Brute-Force
OPER <USERNAME> <PASSWORD>

Vous pouvez également essayer de vous connecter au serveur avec un mot de passe. Le mot de passe par défaut pour ngIRCd est 'wealllikedebian'.

PASS wealllikedebian
NICK patrick
USER test1 test2 <IP> :test3

Trouver et scanner les services IRC

IRC (Internet Relay Chat) est un protocole de communication en temps réel utilisé pour la messagerie instantanée, le chat en groupe et les discussions en ligne. Les services IRC sont des serveurs qui hébergent des canaux de discussion et permettent aux utilisateurs de se connecter et de communiquer avec d'autres utilisateurs en temps réel.

Pour trouver des services IRC, vous pouvez utiliser des moteurs de recherche tels que Google ou Shodan. Vous pouvez également utiliser des outils de reconnaissance de port tels que Nmap pour scanner les ports IRC (généralement le port 6667) sur des adresses IP spécifiques.

Une fois que vous avez identifié un service IRC, vous pouvez utiliser des outils tels que IRCCrack pour tenter de craquer les mots de passe des utilisateurs ou des canaux de discussion. Vous pouvez également utiliser des outils de sniffing tels que Wireshark pour intercepter le trafic IRC et rechercher des informations sensibles telles que des mots de passe ou des adresses IP.

Il est important de noter que la plupart des services IRC sont protégés par des pare-feux et des mesures de sécurité supplémentaires pour empêcher les attaques. Il est donc important de procéder avec prudence et de respecter les lois et réglementations en matière de sécurité informatique.

nmap -sV --script irc-botnet-channels,irc-info,irc-unrealircd-backdoor -p 194,6660-7000 <ip>

Brute Force

Shodan

  • recherche de votre nom d'hôte
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥