Unix Command Shell, Bind TCP (via BusyBox telnetd) - Metasploit
This page contains detailed information about how to use the payload/cmd/unix/bind_busybox_telnetd metasploit module. For list of all metasploit modules, visit the Metasploit Module Library.
Module Overview
Name: Unix Command Shell, Bind TCP (via BusyBox telnetd)
Module: payload/cmd/unix/bind_busybox_telnetd
Source code: modules/payloads/singles/cmd/unix/bind_busybox_telnetd.rb
Disclosure date: -
Last modification time: 2021-01-05 14:59:46 +0000
Supported architecture(s): cmd
Supported platform(s): Unix
Target service / protocol: -
Target network port(s): -
List of CVEs: -
Listen for a connection and spawn a command shell via BusyBox telnetd
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
msf > use payload/cmd/unix/bind_busybox_telnetd
msf payload(bind_busybox_telnetd) > show options
... show and set options ...
msf payload(bind_busybox_telnetd) > generate
To learn how to generate payload/cmd/unix/bind_busybox_telnetd with msfvenom, please read this.
Knowledge Base
The cmd/unix/bind_busybox_telnetd payload provides a bind TCP Unix command shell via BusyBox telnetd.
Vulnerable Application
cmd/unix/bind_busybox_telnetd should work on either 32 or 64-bit Linux platforms with BusyBox telnetd installed.
Options
LOGIN_CMD
The command telnetd will execute on connect. The default value is /bin/sh
in order to provide a command shell.
Advanced
CommandShellCleanupCommand
The command to run before the session is closed. The default value is
pkill telnetd
and is used to avoid leaving a persistent command shell
that does not require authentication.
Deploying cmd/unix/bind_busybox_telnetd
To set the payload:
- In msfconsole, load the exploit.
- Do:
set PAYLOAD cmd/unix/bind_busybox_telnetd
- Do:
exploit
Notes
The shell cleanup command should result in the payload automatically
terminating the telnetd service as the session completes. However, intermittent
behavior was observed and the source has not been identified. When closing a
session please verify, via a port scan or other desired method, that the port
is no longer open. If the port remains open, then the unauthenticated telnetd
service is still running. Establish a connection to the unauthenticated telnetd
service and manually terminate the process (pkill telnetd
) to avoid leaving
the host more insecure.
Go back to menu.
Msfconsole Usage
Here is how the cmd/unix/bind_busybox_telnetd payload looks in the msfconsole:
msf6 > use payload/cmd/unix/bind_busybox_telnetd
msf6 payload(cmd/unix/bind_busybox_telnetd) > show info
Name: Unix Command Shell, Bind TCP (via BusyBox telnetd)
Module: payload/cmd/unix/bind_busybox_telnetd
Platform: Unix
Arch: cmd
Needs Admin: No
Total size: 26
Rank: Normal
Provided by:
Matthew Kienow <matthew_kienow[AT]rapid7.com>
Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
LOGIN_CMD /bin/sh yes Command telnetd will execute on connect
LPORT 4444 yes The listen port
RHOST no The target address
Description:
Listen for a connection and spawn a command shell via BusyBox
telnetd
Module Options
This is a complete list of options available in the cmd/unix/bind_busybox_telnetd payload:
msf6 payload(cmd/unix/bind_busybox_telnetd) > show options
Module options (payload/cmd/unix/bind_busybox_telnetd):
Name Current Setting Required Description
---- --------------- -------- -----------
LOGIN_CMD /bin/sh yes Command telnetd will execute on connect
LPORT 4444 yes The listen port
RHOST no The target address
Advanced Options
Here is a complete list of advanced options supported by the cmd/unix/bind_busybox_telnetd payload:
msf6 payload(cmd/unix/bind_busybox_telnetd) > show advanced
Module advanced options (payload/cmd/unix/bind_busybox_telnetd):
Name Current Setting Required Description
---- --------------- -------- -----------
AutoRunScript no A script to run automatically on session creation.
AutoVerifySession true yes Automatically verify and drop invalid sessions
CommandShellCleanupCommand pkill telnetd yes A command to run before the session is closed
CreateSession true no Create a new session for every successful login
InitialAutoRunScript no An initial script to run on session creation (before AutoRunScript)
VERBOSE false no Enable detailed status messages
WORKSPACE no Specify the workspace for this module
Go back to menu.
Related Pull Requests
- #14584 Merged Pull Request: Implement the zeitwerk autoloader within lib/msf/base
- #14202 Merged Pull Request: Implement the zeitwerk autoloader within lib/msf/core
- #12448 Merged Pull Request: Fix reverse php\perl ssl bug
- #9364 Merged Pull Request: HP Jetdirect Path Traversal Arbitrary Code Execution CVE-2017-2741
Go back to menu.
See Also
Check also the following modules related to this module:
- payload/cmd/unix/bind_awk
- payload/cmd/unix/bind_inetd
- payload/cmd/unix/bind_jjs
- payload/cmd/unix/bind_lua
- payload/cmd/unix/bind_netcat
- payload/cmd/unix/bind_netcat_gaping
- payload/cmd/unix/bind_netcat_gaping_ipv6
- payload/cmd/unix/bind_nodejs
- payload/cmd/unix/bind_perl
- payload/cmd/unix/bind_perl_ipv6
- payload/cmd/unix/bind_r
- payload/cmd/unix/bind_ruby
- payload/cmd/unix/bind_ruby_ipv6
- payload/cmd/unix/bind_socat_udp
- payload/cmd/unix/bind_stub
- payload/cmd/unix/bind_zsh
- payload/cmd/unix/generic
- payload/cmd/unix/interact
- payload/cmd/unix/pingback_bind
- payload/cmd/unix/pingback_reverse
- payload/cmd/unix/python/meterpreter/bind_tcp
- payload/cmd/unix/python/meterpreter_bind_tcp
- payload/cmd/unix/python/meterpreter/bind_tcp_uuid
- payload/cmd/unix/python/meterpreter/reverse_http
- payload/cmd/unix/python/meterpreter_reverse_http
- payload/cmd/unix/python/meterpreter/reverse_https
- payload/cmd/unix/python/meterpreter_reverse_https
- payload/cmd/unix/python/meterpreter/reverse_tcp
- payload/cmd/unix/python/meterpreter_reverse_tcp
- payload/cmd/unix/python/meterpreter/reverse_tcp_ssl
- payload/cmd/unix/python/meterpreter/reverse_tcp_uuid
- payload/cmd/unix/python/pingback_bind_tcp
- payload/cmd/unix/python/pingback_reverse_tcp
- payload/cmd/unix/python/shell_bind_tcp
- payload/cmd/unix/python/shell_reverse_tcp
- payload/cmd/unix/python/shell_reverse_tcp_ssl
- payload/cmd/unix/python/shell_reverse_udp
- payload/cmd/unix/reverse
- payload/cmd/unix/reverse_awk
- payload/cmd/unix/reverse_bash
- payload/cmd/unix/reverse_bash_telnet_ssl
- payload/cmd/unix/reverse_bash_udp
- payload/cmd/unix/reverse_jjs
- payload/cmd/unix/reverse_ksh
- payload/cmd/unix/reverse_lua
- payload/cmd/unix/reverse_ncat_ssl
- payload/cmd/unix/reverse_netcat
- payload/cmd/unix/reverse_netcat_gaping
- payload/cmd/unix/reverse_nodejs
- payload/cmd/unix/reverse_openssl
- payload/cmd/unix/reverse_perl
- payload/cmd/unix/reverse_perl_ssl
- payload/cmd/unix/reverse_php_ssl
- payload/cmd/unix/reverse_python
- payload/cmd/unix/reverse_python_ssl
- payload/cmd/unix/reverse_r
- payload/cmd/unix/reverse_ruby
- payload/cmd/unix/reverse_ruby_ssl
- payload/cmd/unix/reverse_socat_udp
- payload/cmd/unix/reverse_ssh
- payload/cmd/unix/reverse_ssl_double_telnet
- payload/cmd/unix/reverse_stub
- payload/cmd/unix/reverse_tclsh
- payload/cmd/unix/reverse_zsh
Authors
Matthew Kienow <matthew_kienow[AT]rapid7.com>
Version
This page has been produced using Metasploit Framework version 6.1.36-dev. For more modules, visit the Metasploit Module Library.
Go back to menu.