# 110,995 - Pentesting POP {{#include ../banners/hacktricks-training.md}} ## Temel Bilgiler **Post Office Protocol (POP)**, bilgisayar ağları ve İnternet alanında, **uzaktaki bir posta sunucusundan e-posta alma ve geri alma** işlemleri için kullanılan bir protokol olarak tanımlanır ve bu e-postaların yerel cihazda erişilebilir olmasını sağlar. OSI modelinin uygulama katmanında yer alan bu protokol, kullanıcıların e-posta almasını ve almasını sağlar. **POP istemcilerinin** çalışması genellikle bir posta sunucusuna bağlantı kurmayı, tüm mesajları indirmeyi, bu mesajları istemci sisteminde yerel olarak depolamayı ve ardından sunucudan silmeyi içerir. Bu protokolün üç versiyonu olmasına rağmen, **POP3** en yaygın kullanılan versiyon olarak öne çıkmaktadır. **Varsayılan portlar:** 110, 995(ssl) ``` PORT STATE SERVICE 110/tcp open pop3 ``` ## Enumeration ### Banner Grabbing ```bash nc -nv 110 openssl s_client -connect :995 -crlf -quiet ``` ## Manuel POP3 sunucusunun yeteneklerini elde etmek için `CAPA` komutunu kullanabilirsiniz. ## Otomatik ```bash nmap --script "pop3-capabilities or pop3-ntlm-info" -sV -port #All are default scripts ``` `pop3-ntlm-info` eklentisi bazı "**hassas**" verileri (Windows sürümleri) döndürecektir. ### [POP3 bruteforce](../generic-hacking/brute-force.md#pop) ## POP sözdizimi POP komutları örnekleri [buradan](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 ``` Örnek: ``` 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 ``` ## Şifreleri Kaydetme **`auth_debug`** ayarı etkinleştirilen POP sunucuları, üretilen günlükleri artıracaktır. Ancak, **`auth_debug_passwords`** veya **`auth_verbose_passwords`** **`true`** olarak ayarlandığında, şifreler bu günlüklerde düz metin olarak da kaydedilebilir. ## HackTricks Otomatik Komutlar ``` 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}}