HTB-Fawn(FTP)
HTB-Fawn(FTP)
1.TASK1
问题:3 个字母的首字母缩写词 FTP 代表什么?
FTP是文件传输协议的简写。
FTP文件传输协议(File Transfer Protocol)是用于在网络上进行文件传输的一套标准协议,它工作在OSI 模型的第七层,TCP 模型的第四层—————应用层,FTP使用TCP传输而不是UDP传输,它有两个开放端口,一个是控制端口,一般为21,一个是数据端口,主动模式为20,也可以由客户端和服务器商议协定,而sftp则是相较于 ftp 更为安全的版本。
答案:File Transfer Protocol
2.TASK2
问题:FTP服务通常监听哪个端口?
FTP监听的TCP端口号为21,监听的数据端口为20。
答案:21
3.TASK3
问题:FTP 的安全版本使用什么首字母缩写词?
FTP的安全版本是 安全文件传输协议,即Secure File Transfer Protocol,缩写为SFTP。
答案:SFTP
4.TASK4
问题:我们使用什么工具通过 ICMP 回显请求测试与目标的连接?
ICMP(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。
答案:ping
5.TASK5
问题:根据您的扫描,目标上运行的 FTP 版本是什么?
在kali中打开终端terminal,输入命令:
nmap -A 10.129.44.18 //也可以使用nmap -sV命令,-sV即server Version,可用来探测打开端口对应服务的版本信息
出现以下界面:
从扫描结果 我们可以获取以下信息:
1.目标机器使用的ftp版本为vsftpd 3.0.3;
2.目标机器的FTP服务允许匿名登录,使用anonymous账户 密码为空,可登陆该目标机器FTP;
3.目标机器的操作系统信息为:Unix 操作系统
答案:vsftpd 3.0.3
PS:扫描花了好久时间。。
6.TASK6
问题:根据您的扫描,目标上正在运行什么操作系统类型?
根据上题扫描结果,可知目标机器的操作系统为:Unix。
答案:Unix
7.TASK7
问题:为了显示“ftp”客户端帮助菜单,我们需要运行什么命令?
答案:ftp -h
8.TASK8
问题:当您想在没有帐户的情况下登录时,通过 FTP 使用的用户名是什么?
由第6题的扫描结果可知,该机器的FTP允许匿名登录。
答案:anonymous
9.TASK9
问题:FTP消息“登录成功”的响应代码是什么?
在 FTP 中,响应代码是服务器对于客户端请求的回复代码。230 是 FTP 中的一个响应代码,它表示用户已成功登录。
具体来说,230 响应代码对应的消息是 "User logged in, proceed",表明用户已通过身份验证,并被允许访问和执行 FTP 服务器上的操作。
答案:230
10.TASK10
问题:有几个命令可以用来列出FTP服务器上可用的文件和目录。一个是目录。另一个是Linux系统上列出文件的常用方法。
答案:ls
11.TASK11
问题:用于下载我们在FTP服务器上找到的文件的命令是什么?
在 FTP 中,get 是用于从远程服务器下载文件的命令。通过 get 命令,你可以从远程 FTP 服务器下载文件到本地计算机。
答案:get
12.SUBMIT FLAG
由上文的扫描结果可知,目标机器的FTP服务存有文件flag.txt,我们需要获取这个txt(通常我们想渗透一个ftp服务的话,可以查一下目标的ftp版本有什么现成漏洞,看看有什么poc可以利用)。
输入命令:
ftp 10.129.96.53
使用账户anonymous匿名登录FTP服务(密码为空,按回车键即可,连接成功后,如果想知道当前控制台支持哪些命令的话,可以输入?查看),此处输入ls命令 列出FTP上已有的文件:
ls
可以看到有一个flag.txt文件,使用get命令下载该txt(如果是多个文件下载,使用命令mget),文件会被下载到 当前终端环境所处的目录下(使用命令pwd可查看当前路径):
get flag.txt
然后输入命令退出FTP服务:
bye
接着使用ls命令查看本地文件,确认是否成功下载到flag.txt,最后使用cat命令查看flag.txt内容即可:
ls
cat flag.txt