hacktricks/network-services-pentesting/pentesting-irc.md
carlospolop 63bd9641c0 f
2023-06-05 20:33:24 +02:00

5.2 KiB

Información Básica

IRC fue originalmente un protocolo de texto plano (aunque más tarde se extendió), que a petición fue asignado al puerto 194/TCP por IANA. Sin embargo, el estándar de facto siempre ha sido ejecutar IRC en 6667/TCP y números de puerto cercanos (por ejemplo, puertos TCP 6660-6669, 7000) para evitar tener que ejecutar el software IRCd con privilegios de root.

Para conectarse a un servidor solo se requiere un apodo. Una vez establecida la conexión, lo primero que hace el servidor es una resolución inversa de DNS a su dirección IP:

Parece que en general hay dos tipos de usuarios: operadores y usuarios ordinarios. Para iniciar sesión como operador se requiere un nombre de usuario y una contraseña (y en muchas ocasiones un nombre de host particular, una dirección IP e incluso una máscara de host particular). Dentro de los operadores hay diferentes niveles de privilegio, donde el administrador tiene el mayor privilegio.

Puertos predeterminados: 194, 6667, 6660-7000

PORT     STATE SERVICE
6667/tcp open  irc

Enumeración

Banner

IRC puede admitir TLS.

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

Manual

Aquí puedes ver cómo conectarte y acceder al IRC usando algún apodo aleatorio y luego enumerar alguna información interesante. Puedes aprender más comandos de IRC aquí.

#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>

También puedes intentar iniciar sesión en el servidor con una contraseña. La contraseña predeterminada para ngIRCd es 'wealllikedebian'.

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

Encontrar y escanear servicios IRC

IRC (Internet Relay Chat) es un protocolo de comunicación en tiempo real utilizado principalmente para la comunicación en grupo en línea. Muchos sitios web y comunidades en línea tienen sus propios servidores IRC para que los usuarios se comuniquen entre sí.

Para encontrar servicios IRC, podemos buscar en los sitios web de las comunidades en línea o buscar en los motores de búsqueda utilizando palabras clave como "IRC" o "chat". Una vez que encontramos un servidor IRC, podemos escanearlo en busca de vulnerabilidades utilizando herramientas como Nmap o Nikto.

Es importante tener en cuenta que el escaneo de servidores IRC sin permiso puede ser ilegal y puede resultar en consecuencias legales.

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

Fuerza Bruta

Shodan

  • buscando tu nombre de host
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥