1.FTP(匿名登录)未授权访问简介
1.1 FTP协议介绍:
FTP是文件传输协议(File Transfer Protocol)的缩写,是在网络上进行文件传输的一套标准协议,使用客户/服务器模式与使用 TCP 传输,属于网络传输协议的应用层,默认使用20、21号两个端口,一个数据端口和一个命令端口,端口20是数据端口,用于文件在客户端和服务器之间传输数据流。端口21是命令端口,用于传输控制流,接受客户端发出的相关FTP命令与参数。
1.2 FTP用户类型:
1.真实用户 2.administrator 3.匿名用户
2.VSFTPD2.3.4笑脸漏洞简述与原理
2.1 漏洞简述:
VSFTPD程序服务端会接收来自用户输入的用户名和密码,只要用户输入的用户名中包含连续的:)字符,就会自动在6200端口打开一个后门。
2.2 漏洞原理:
目标使用了含有漏洞的VSFTPD2.3.4开启FTP服务,通过FTP来访问开放的目录和文件来进行信息收集从而进行下一步的攻击。
3.渗透测试工具的介绍与基本用法
3.1 Nmap简介与基本用法
3.1.1简介与主要功能:
Nmap(the Network Mapper)是一款免费开源的网络发现和安全审计工具,能够运行在所有主流的操作系统上,包括Windows、Linux和macOS。
Nmap的主要功能有:
1.主机发现(指定的主机是否存活)
2.端口扫描(存活的主机中,指定的端口是否开启)
3.应用和操作系统版本检测(存活的主机操作系统版本、开启的端口运行的服务版本)
4.扫描脚本的编写
3.1.2 基本用法(主要介绍在本实验中主要用到的基本用法)
1.Nmap + 主机地址(查看主机地址的开放端口及服务信息)
2.Nmap --script=vuln 主机地址(漏洞扫描,查看主机或网段中常见的漏洞)
3.Nmap -sV --script ssl-enum-ciphers -p 443 主机地址(查看ssl的版本信息,是否支持TLS低版本信息等)
4.Nmap -sV 主机地址(目标主机提供的服务版本检测)
5.Nmap -O 尝试识别远程操作系统
3.2 netcat的简介与基本用法
3.2.1 netcat(nc)的简介
netcat是网络界的瑞士军刀,使用netcat,可以解决客户端主动连接服务器被防火墙拦截的问题,我们的pc(控制端)相当于服务器,服务器(被控制端)相当于一个客户端。它可以用作端口监听、端口扫描、远程文件传输、还可以实现远程shell等功能。
3.2.2 在本实验中netcat的基本用法
1.查看命令参数:使用nc -h
2.连接到远程主机:nc -nvv Targert_IP Targert_Port
3.监听本地主机命令:nc -l -p Local_Port
4.端口扫描,扫描指定的主机的单一端口是否开放:nc -v Targert_IP Targert_Port
3.3 msfconsole的简介与基本用法
3.3.1 msfconsole简介
msfconsole是msf的命令行交互界面。是一个msf的一体化操作接口,可以完全地利用msf中的各种功能,使用msfconsole特定的命令进行操作。
3.3.2 在本实验中用到的msfconsole常用命令
show exploit 列出metasploit框架中的所有渗透攻击模块
RHOST远程主机或是目标主机
show options列出某个渗透攻击或模块中所有的配置参数
exploit执行渗透攻击或模块来攻击目标
4.笑脸漏洞渗透实验过程
4.1 实验原理
使用物理机kali-linux通过笑脸漏洞获取靶机目标靶机Metasploitable2-Linux最高权限
4.2 实验目的:
对含有漏洞的VSFTPD2.3.4 开启FTP服务,物理机kali对靶机进行攻击,从而获得靶机的root权限。
4.3 配置实验环境
在该实验环境下,需要用到含有VSFTPD2.3.4笑脸漏洞版本的Linux,即靶机为Metasploitable2-Linux,物理机为kali。在virtual box中进行两台虚拟机的安装。
该两台虚拟机的网络设置:物理机kali设置为NET网络,靶机Metasploitable2-Linux设置为桥接网络。
4.4实验步骤:
步骤1:
查看物理机和靶机的ip地址,检查物理机与靶机是否能够互相ping同
输入命令ifconfig
查看物理机ip地址为10.40.23.133
查看靶机ip地址为 10.40.11.81
步骤2:
在root模式下,利用Nmap查看靶机的服务开放情况,输入命令:
Nmap -O 10.40.11.81 发现靶机开放了21端口(FTP协议),同时扫描出FTP服务的版本信息
并且能够查看到,此时的靶机版本为Linux 2.6.X
步骤3:
靶机metasploitable2确保网络连通性。在物理机kali上使用Nmap工具进一步对靶机进行信息收集,利用命令Nmap –sV IP 对目标服务器进行服务及版本扫描.
在物理机上使用命令 Nmap –script vuln -p 靶机的ip地址(查看到为后门版本)
步骤4:
尝试使用匿名用户(anonymous)登录,状态230 Login successful说明匿名登录成功
步骤5:
该渗透实验有两种方式,一种采用nc(netcat)工具进行渗透,一种使用msfconsole连接目标主机,进行渗透攻击。
步骤5.1 用第一种方式nc(netcat)进行渗透
用nc去扫描了一下端口发现指示的6200端口并没有开放,说明后门还未激活。
手动激活端口,连接到靶机的21端口,使用工具nc操作,连接到21端口。
手动输入user+任意账号+:),回车后再手动输入pass+任意密码,即可利用该笑脸漏洞,以下列图示为例:
此时,在返回查看靶机的6200端口,利用Nmap -p操作,发现端口已经打开,在使用nc工具连接靶机的6200端口,即可进入靶机,并且是以root的身份进入,笑脸漏洞大致流程已结束,完成渗透。
步骤5.2 使用msf进行漏洞渗透
打开物理机kali终端输入msfconsole,进入界面
接调用利用模块 use exploit/unix/ftp/vsftpd_234_backdoor,图示如下:
设计靶机的IP地址,必要的参数设置完成后,开始利用模块开始攻击该漏洞,执行exploit,可以看到攻击成功,并且创建了一个shell对话,root权限为最高.
VSFTPD2.3.4笑脸漏洞渗透实验已完成