hacktricks/network-services-pentesting/pentesting-pop.md
2024-02-10 13:03:23 +00:00

14 KiB

110,995 - Pentesting POP

Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!

Trova le vulnerabilità che contano di più in modo da poterle correggere più velocemente. Intruder traccia la tua superficie di attacco, esegue scansioni proattive delle minacce, trova problemi in tutta la tua infrastruttura tecnologica, dalle API alle applicazioni web e ai sistemi cloud. Provalo gratuitamente oggi.

{% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %}


Informazioni di base

Il Post Office Protocol (POP) è descritto come un protocollo nell'ambito delle reti informatiche e di Internet, che viene utilizzato per l'estrazione e il recupero delle email da un server di posta remoto, rendendole accessibili sul dispositivo locale. Posizionato all'interno dello strato applicativo del modello OSI, questo protocollo consente agli utenti di recuperare e ricevere email. Il funzionamento dei client POP di solito prevede l'instaurazione di una connessione al server di posta, il download di tutti i messaggi, la memorizzazione di questi messaggi localmente sul sistema del client e successivamente la loro rimozione dal server. Sebbene ci siano tre iterazioni di questo protocollo, POP3 si distingue come la versione più comunemente utilizzata.

Porte predefinite: 110, 995(ssl)

PORT    STATE SERVICE
110/tcp open  pop3

Rilevamento del banner

Il rilevamento del banner è una tecnica utilizzata per ottenere informazioni sul servizio POP3 in esecuzione su un determinato host. Consiste nel connettersi al servizio POP3 e leggere il banner di benvenuto inviato dal server. Questo banner può fornire informazioni utili come il nome e la versione del software utilizzato dal server POP3.

Per eseguire il rilevamento del banner, è possibile utilizzare strumenti come Telnet o Netcat. Ecco un esempio di come eseguire il rilevamento del banner utilizzando Telnet:

$ telnet <indirizzo_IP> 110

Dopo esserti connesso al servizio POP3, il server invierà il suo banner di benvenuto. Puoi leggere il banner e ottenere informazioni utili sul server POP3.

User Enumeration

La enumerazione degli utenti è una tecnica utilizzata per ottenere informazioni sugli utenti validi presenti su un server POP3. Consiste nel tentativo di autenticarsi con diversi nomi utente e osservare le risposte del server. In base alle risposte ricevute, è possibile determinare se un determinato nome utente esiste o meno sul server POP3.

Per eseguire la enumerazione degli utenti, è possibile utilizzare strumenti come Telnet o Netcat. Ecco un esempio di come eseguire la enumerazione degli utenti utilizzando Telnet:

$ telnet <indirizzo_IP> 110
USER <nome_utente>

Dopo aver inviato il comando USER seguito dal nome utente desiderato, il server POP3 risponderà con un messaggio. Se il messaggio indica un errore o una risposta negativa, significa che il nome utente non esiste sul server POP3. Altrimenti, se il messaggio indica una risposta positiva, significa che il nome utente esiste sul server POP3.

Password Enumeration

La enumerazione delle password è una tecnica utilizzata per ottenere informazioni sulle password degli utenti presenti su un server POP3. Consiste nel tentativo di autenticarsi con diversi nomi utente e password e osservare le risposte del server. In base alle risposte ricevute, è possibile determinare se una determinata password è valida per un determinato nome utente sul server POP3.

Per eseguire la enumerazione delle password, è possibile utilizzare strumenti come Telnet o Netcat. Ecco un esempio di come eseguire la enumerazione delle password utilizzando Telnet:

$ telnet <indirizzo_IP> 110
USER <nome_utente>
PASS <password>

Dopo aver inviato il comando USER seguito dal nome utente desiderato e il comando PASS seguito dalla password desiderata, il server POP3 risponderà con un messaggio. Se il messaggio indica un errore o una risposta negativa, significa che la password non è valida per il nome utente specificato. Altrimenti, se il messaggio indica una risposta positiva, significa che la password è valida per il nome utente specificato.

nc -nv <IP> 110
openssl s_client -connect <IP>:995 -crlf -quiet

Manuale

Puoi utilizzare il comando CAPA per ottenere le capacità del server POP3.

Automatizzato

nmap --script "pop3-capabilities or pop3-ntlm-info" -sV -port <PORT> <IP> #All are default scripts

Il plugin pop3-ntlm-info restituirà alcuni dati "sensibili" (versioni di Windows).

Brute force POP3

Sintassi POP

Esempi di comandi POP da qui

POP commands:
USER uid           Log in as "uid"
PASS password      Substitue "password" for your actual password
STAT               List number of messages, total mailbox size
LIST               List messages and sizes
RETR n             Show message n
DELE n             Mark message n for deletion
RSET               Undo any changes
QUIT               Logout (expunges messages if no RSET)
TOP msg n          Show first n lines of message number msg
CAPA               Get capabilities

POP (Post Office Protocol)

POP (Post Office Protocol) is a protocol used by email clients to retrieve email messages from a mail server. It is commonly used for downloading emails from a remote server to a local device.

POP3

POP3 is the latest version of the POP protocol. It operates on port 110 and uses a simple text-based protocol for communication. The client connects to the server, authenticates using a username and password, and then retrieves the email messages.

POP3 Banner Grabbing

Banner grabbing is a technique used to gather information about a service by capturing the banner message sent by the server when a client connects to it. In the case of POP3, the banner message usually contains information about the server software and version.

To perform banner grabbing on a POP3 server, you can use tools like telnet or nc to connect to the server and capture the banner message.

POP3 User Enumeration

User enumeration is a technique used to determine valid usernames on a system. In the case of POP3, it involves sending a series of commands to the server and analyzing the response to determine if a username is valid or not.

One common method for user enumeration in POP3 is to use the USER command followed by a username. If the server responds with an error message, the username is likely invalid. If the server responds with a success message, the username is likely valid.

POP3 Password Spraying

Password spraying is a technique used to guess passwords by trying a small number of commonly used passwords against a large number of usernames. In the case of POP3, it involves trying a list of common passwords against a list of valid usernames.

To perform password spraying on a POP3 server, you can use tools like hydra or medusa to automate the process. These tools allow you to specify a list of usernames and a list of passwords, and they will try each combination until a successful login is found.

POP3 Brute-Force Attack

A brute-force attack is a technique used to guess passwords by trying every possible combination until the correct one is found. In the case of POP3, it involves trying every possible password for a given username.

To perform a brute-force attack on a POP3 server, you can use tools like hydra or medusa to automate the process. These tools allow you to specify a username and a list of passwords, and they will try each password until a successful login is found.

POP3 Credential Stuffing

Credential stuffing is a technique used to guess passwords by trying a list of known usernames and passwords against a target system. In the case of POP3, it involves trying a list of known usernames and passwords against a list of valid usernames.

To perform credential stuffing on a POP3 server, you can use tools like hydra or medusa to automate the process. These tools allow you to specify a list of usernames and passwords, and they will try each combination until a successful login is found.

root@kali:~# telnet $ip 110
+OK beta POP3 server (JAMES POP3 Server 2.3.2) ready
USER billydean
+OK
PASS password
+OK Welcome billydean

list

+OK 2 1807
1 786
2 1021

retr 1

+OK Message follows
From: jamesbrown@motown.com
Dear Billy Dean,

Here is your login for remote desktop ... try not to forget it this time!
username: billydean
password: PA$$W0RD!Z

Impostazioni pericolose

Da https://academy.hackthebox.com/module/112/section/1073

Impostazione Descrizione
auth_debug Abilita tutti i log di debug dell'autenticazione.
auth_debug_passwords Questa impostazione regola la verbosità dei log, le password inviate e lo schema viene registrato.
auth_verbose Registra i tentativi di autenticazione non riusciti e le relative cause.
auth_verbose_passwords Le password utilizzate per l'autenticazione vengono registrate e possono anche essere troncate.
auth_anonymous_username Specifica il nome utente da utilizzare durante l'accesso con il meccanismo SASL ANONYMOUS.

Comandi automatici di HackTricks

Protocol_Name:  POP   #Protocol Abbreviation if there is one.
Port_Number:  110     #Comma separated if there is more than one.
Protocol_Description: Post Office Protocol         #Protocol Abbreviation Spelled out

Entry_1:
Name: Notes
Description: Notes for POP
Note: |
Post Office Protocol (POP) is described as a protocol within the realm of computer networking and the Internet, which is utilized for the extraction and retrieval of email from a remote mail server**, making it accessible on the local device. Positioned within the application layer of the OSI model, this protocol enables users to fetch and receive email. The operation of POP clients typically involves establishing a connection to the mail server, downloading all messages, storing these messages locally on the client system, and subsequently removing them from the server. Although there are three iterations of this protocol, POP3 stands out as the most prevalently employed version.

https://book.hacktricks.xyz/network-services-pentesting/pentesting-pop

Entry_2:
Name: Banner Grab
Description: Banner Grab 110
Command: nc -nv {IP} 110

Entry_3:
Name: Banner Grab 995
Description: Grab Banner Secure
Command: openssl s_client -connect {IP}:995 -crlf -quiet

Entry_4:
Name: Nmap
Description: Scan for POP info
Command: nmap --script "pop3-capabilities or pop3-ntlm-info" -sV -p 110 {IP}

Entry_5:
Name: Hydra Brute Force
Description: Need User
Command: hydra -l {Username} -P {Big_Passwordlist} -f {IP} pop3 -V

Entry_6:
Name: consolesless mfs enumeration
Description: POP3 enumeration without the need to run msfconsole
Note: sourced from https://github.com/carlospolop/legion
Command: msfconsole -q -x 'use auxiliary/scanner/pop3/pop3_version; set RHOSTS {IP}; set RPORT 110; run; exit'

Trova le vulnerabilità che contano di più in modo da poterle correggere più velocemente. Intruder traccia la tua superficie di attacco, esegue scansioni proattive delle minacce, trova problemi in tutta la tua infrastruttura tecnologica, dalle API alle applicazioni web e ai sistemi cloud. Provalo gratuitamente oggi stesso.

{% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %}

Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!