120 lines
4.4 KiB
Markdown

# 110,995 - Pentesting POP
{{#include ../banners/hacktricks-training.md}}
## Podstawowe informacje
**Post Office Protocol (POP)** jest opisany jako protokół w dziedzinie sieci komputerowych i Internetu, który jest wykorzystywany do ekstrakcji i **pobierania e-maili z zdalnego serwera pocztowego**, co umożliwia ich dostępność na lokalnym urządzeniu. Umiejscowiony w warstwie aplikacji modelu OSI, ten protokół pozwala użytkownikom na pobieranie i odbieranie e-maili. Działanie **klientów POP** zazwyczaj polega na nawiązaniu połączenia z serwerem pocztowym, pobraniu wszystkich wiadomości, przechowywaniu tych wiadomości lokalnie na systemie klienta, a następnie usunięciu ich z serwera. Chociaż istnieją trzy wersje tego protokołu, **POP3** wyróżnia się jako najczęściej stosowana wersja.
**Domyślne porty:** 110, 995(ssl)
```
PORT STATE SERVICE
110/tcp open pop3
```
## Enumeracja
### Zbieranie banerów
```bash
nc -nv <IP> 110
openssl s_client -connect <IP>:995 -crlf -quiet
```
## Ręczny
Możesz użyć polecenia `CAPA`, aby uzyskać możliwości serwera POP3.
## Zautomatyzowany
```bash
nmap --script "pop3-capabilities or pop3-ntlm-info" -sV -port <PORT> <IP> #All are default scripts
```
Plugin `pop3-ntlm-info` zwróci pewne "**wrażliwe**" dane (wersje Windows).
### [Bruteforce POP3](../generic-hacking/brute-force.md#pop)
## Składnia POP
Przykłady poleceń POP z [tutaj](http://sunnyoasis.com/services/emailviatelnet.html)
```bash
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
```
Przykład:
```
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
```
## Rejestrowanie Haseł
Serwery POP z włączonym ustawieniem **`auth_debug`** będą generować więcej logów. Jednakże, jeśli **`auth_debug_passwords`** lub **`auth_verbose_passwords`** są ustawione na **`true`**, hasła mogą być również rejestrowane w postaci czystego tekstu w tych logach.
## Automatyczne Komendy 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.wiki/en/network-services-pentesting/pentesting-pop.html
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'
```
{{#include ../banners/hacktricks-training.md}}