Anonymous FTP Access Detection - Metasploit
This page contains detailed information about how to use the auxiliary/scanner/ftp/anonymous metasploit module. For list of all metasploit modules, visit the Metasploit Module Library.
- Module Overview
- Knowledge Base
- Description
- Vulnerable Application
- Install ftp server on Kali Linux:
- Installing FTP for IIS 7.5 in Windows:
- IIS 7.5 for Windows Server 2008 R2:
- IIS 7.5 for Windows 7:
- Enabling anonymous login on IIS
- Verification Steps
- Scenarios
- Confirming using NMAP
- Msfconsole Usage
- Related Pull Requests
- References
- See Also
- Authors
- Version
Module Overview
Name: Anonymous FTP Access Detection
Module: auxiliary/scanner/ftp/anonymous
Source code: modules/auxiliary/scanner/ftp/anonymous.rb
Disclosure date: -
Last modification time: 2017-07-24 06:26:21 +0000
Supported architecture(s): -
Supported platform(s): -
Target service / protocol: ftp
Target network port(s): 21, 2121
List of CVEs: -
Detect anonymous (read/write) FTP server 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/ftp/anonymous
msf auxiliary(anonymous) > show options
... show and set options ...
msf auxiliary(anonymous) > set RHOSTS ip-range
msf auxiliary(anonymous) > exploit
Other examples of setting the RHOSTS option:
Example 1:
msf auxiliary(anonymous) > set RHOSTS 192.168.1.3-192.168.1.200
Example 2:
msf auxiliary(anonymous) > set RHOSTS 192.168.1.1/24
Example 3:
msf auxiliary(anonymous) > 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 allows us to scan through a series of IP Addresses and provide details whether anonymous access is allowed or not in that particular FTP server. By default, anonymous access is not allowed by the FTP server.
Vulnerable Application
Install ftp server on Kali Linux:
-
apt-get install vsftpd
Allow local users to log in and to allow ftp uploads by editing file
/etc/vsftpd.conf
uncommenting the following:local_enable=YES write_enable=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list
IMPORTANT: For allowing anonymous access set
anonymous_enable=YES
Create the file
/etc/vsftpd.chroot_list
and add the local users you want allow to connect to FTP server. Start service and test connections:service vsftpd start
Installing FTP for IIS 7.5 in Windows:
IIS 7.5 for Windows Server 2008 R2:
- On the taskbar, click Start, point to Administrative Tools, and then click Server Manager.
- In the Server Manager hierarchy pane, expand Roles, and then click Web Server (IIS).
- In the Web Server (IIS) pane, scroll to the Role Services section, and then click Add Role Services.
- On the Select Role Services page of the Add Role Services Wizard, expand FTP Server.
- Select FTP Service. (Note: To support ASP.NET Membership or IIS Manager authentication for the FTP service, you will also need to select FTP Extensibility.)
- Click Next.
- On the Confirm Installation Selections page, click Install.
- On the Results page, click Close.
IIS 7.5 for Windows 7:
- On the taskbar, click Start, and then click Control Panel.
- In Control Panel, click Programs and Features, and then click Turn Windows Features on or off.
- Expand Internet Information Services, then FTP Server.
- Select FTP Service. (Note: To support ASP.NET Membership or IIS Manager authentication for the FTP service, you will also need to select FTP Extensibility.)
- Click OK.
Enabling anonymous login on IIS
- Open IIS Manager and navigate to the level you want to manage. ...
- In Features View, double-click Authentication.
- On the Authentication page, select Anonymous Authentication.
- In the Actions pane, click Enable to use Anonymous authentication with the default settings.
Verification Steps
- Do:
use auxiliary/scanner/ftp/anonymous
- Do:
set RHOSTS [IP]
- Do:
set RPORT [IP]
- Do:
run
Scenarios
vsFTPd 3.0.3 on Kali
msf > use auxiliary/scanner/ftp/anonymous
msf auxiliary(anonymous) > set RHOSTS 127.0.0.1
RHOSTS => 127.0.0.1
msf auxiliary(anonymous) > set RPORT 21
RPORT => 21
msf auxiliary(anonymous) > exploit
[+] 127.0.0.1:21 - 127.0.0.1:21 - Anonymous READ (220 (vsFTPd 3.0.3))
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf auxiliary(anonymous) >
Confirming using NMAP
root@kali:~# nmap -sV -sC 127.0.0.1 -p 21
Starting Nmap 7.40SVN ( https://nmap.org ) at 2017-04-24 22:58 IST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000035s latency).
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.3
|_ftp-anon: Anonymous FTP login allowed (FTP code 230)
Service Info: OS: Unix
root@kali:~#
Go back to menu.
Msfconsole Usage
Here is how the scanner/ftp/anonymous auxiliary module looks in the msfconsole:
msf6 > use auxiliary/scanner/ftp/anonymous
msf6 auxiliary(scanner/ftp/anonymous) > show info
Name: Anonymous FTP Access Detection
Module: auxiliary/scanner/ftp/anonymous
License: Metasploit Framework License (BSD)
Rank: Normal
Provided by:
Matteo Cantoni <[email protected]>
Check supported:
No
Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
FTPPASS [email protected] no The password for the specified username
FTPUSER anonymous no The username to authenticate as
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 21 yes The target port (TCP)
THREADS 1 yes The number of concurrent threads (max one per host)
Description:
Detect anonymous (read/write) FTP server access.
References:
http://en.wikipedia.org/wiki/File_Transfer_Protocol#Anonymous_FTP
Module Options
This is a complete list of options available in the scanner/ftp/anonymous auxiliary module:
msf6 auxiliary(scanner/ftp/anonymous) > show options
Module options (auxiliary/scanner/ftp/anonymous):
Name Current Setting Required Description
---- --------------- -------- -----------
FTPPASS [email protected] no The password for the specified username
FTPUSER anonymous no The username to authenticate as
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 21 yes The target port (TCP)
THREADS 1 yes The number of concurrent threads (max one per host)
Advanced Options
Here is a complete list of advanced options supported by the scanner/ftp/anonymous auxiliary module:
msf6 auxiliary(scanner/ftp/anonymous) > show advanced
Module advanced options (auxiliary/scanner/ftp/anonymous):
Name Current Setting Required Description
---- --------------- -------- -----------
CHOST no The local client address
CPORT no The local client port
ConnectTimeout 10 yes Maximum number of seconds to establish a TCP connection
FTPDEBUG false no Whether or not to print verbose debug statements
FTPTimeout 16 yes The number of seconds to wait for a reply from an FTP command
PassiveMode false no Set true for extended passive (EPSV) ftp mode.
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
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
VERBOSE false no Enable detailed status messages
WORKSPACE no Specify the workspace for this module
Auxiliary Actions
This is a list of all auxiliary actions that the scanner/ftp/anonymous module can do:
msf6 auxiliary(scanner/ftp/anonymous) > show actions
Auxiliary actions:
Name Description
---- -----------
Evasion Options
Here is the full list of possible evasion options supported by the scanner/ftp/anonymous auxiliary module in order to evade defenses (e.g. Antivirus, EDR, Firewall, NIDS etc.):
msf6 auxiliary(scanner/ftp/anonymous) > 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.
Related Pull Requests
- #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
- #2525 Merged Pull Request: Change module boilerplate
- #1228 Merged Pull Request: MSFTIDY cleanup #1 - auxiliary
References
See Also
Check also the following modules related to this module:
- auxiliary/admin/android/google_play_store_uxss_xframe_rce
- auxiliary/dos/android/android_stock_browser_iframe
- auxiliary/gather/android_browser_file_theft
- auxiliary/gather/android_browser_new_tab_cookie_theft
- auxiliary/gather/android_htmlfileprovider
- auxiliary/gather/android_object_tag_webview_uxss
- auxiliary/server/android_browsable_msf_launch
- auxiliary/server/android_mercury_parseuri
- exploit/android/adb/adb_server_exec
- exploit/android/browser/samsung_knox_smdm_url
- exploit/android/browser/stagefright_mp4_tx3g_64bit
- exploit/android/browser/webview_addjavascriptinterface
- exploit/android/fileformat/adobe_reader_pdf_js_interface
- exploit/android/local/binder_uaf
- exploit/android/local/futex_requeue
- exploit/android/local/janus
- exploit/android/local/put_user_vroot
- exploit/android/local/su_exec
- payload/android/meterpreter/reverse_http
- payload/android/meterpreter_reverse_http
- payload/android/meterpreter/reverse_https
- payload/android/meterpreter_reverse_https
- payload/android/meterpreter/reverse_tcp
- payload/android/meterpreter_reverse_tcp
- payload/android/shell/reverse_http
- payload/android/shell/reverse_https
- payload/android/shell/reverse_tcp
- post/android/capture/screen
- post/android/gather/hashdump
- post/android/gather/sub_info
- post/android/gather/wireless_ap
- post/android/local/koffee
- post/android/manage/remove_lock
- post/android/manage/remove_lock_root
Authors
Matteo Cantoni <goony[at]nothink.org>
Version
This page has been produced using Metasploit Framework version 6.1.27-dev. For more modules, visit the Metasploit Module Library.
Go back to menu.