- Name: My File Server: 1
- Date release: 21 Feb 2020
- Author: Akanksha Sachin Verma
- Series: My File Server
- Download: https://drive.google.com/uc?id=1w0grAomPuFaIohBcUwDiI3QIi4fj4kje&export=download
对于vulnhub中的靶机,我们都需先下载镜像,然后导入VM,并将网络连接改为NAT模式。首先我们再来看一下靶机渗透的步骤:信息收集-漏洞分析-漏洞利用-提权。基本都是这个三个步骤,接下来开始我们今天的靶机渗透吧!
信息收集
主机发现
端口扫描
对他的系统版本做进一步扫描
总结一下扫描结果:
21端口 - FTP服务,用于文件上传下载共享。
22端口 - SSH服务,用于远程安全登录管理服务器。
80端口 - HTTP服务,用于提供Web页面和网页内容。
111端口 - rpcbind服务,用于RPC程序管理端口映射。
445端口 - Samba服务,用于Windows文件共享功能。
2049端口 - NFS服务,支持不同系统间共享文件系统。
2121端口 - FTP服务,可以匿名登录。
20048端口 - mountd服务,远程NFS文件系统安装管理端口。
针对UDP再扫描一下
UDP端口全部被过滤。
分辨一下filtered与closed:
filtered与closed状态不同,closed表示端口确定关闭,filtered状态下可能处于打开但受限状态
漏洞扫描
开放了21-22、80、111、445、2049、2121、20048常见服务端口
80端口http服务通过多种方式扫描,没有发现XSS或CSRF等Web漏洞
对smb服务进行漏洞检查,未发现ms10-054、ms10-061等与SMB相关的常见漏洞
但发现smb服务中的regsvc存在拒绝服务漏洞,该漏洞可利用程序破坏服务
通过http枚举发现了有趣的/icons/文件夹
目录扫描
发现了两个目录:
/readme.txt
/index.html
漏洞分析
打开页面,没什么发现
打开readme.txt。告诉我们密码。先暂时放这里
、
目前基于目录扫描得到的线索就这些。
NFS
看是否有共享目录
建个文件夹,将共享文件夹映射(mount)到本机文件夹,方便查看。
NFS挂载失败
可能原因:
共享目录定义限制了只允许特定IP/主机访问。
客户端没有正确配置NFS访问权限(比如export无共享定义)。
服务器端export.allow或export.deny限定只在特定网段内使用。
客户端NFS默认是否需要用户名/密码进行身份验证。
FTP匿名登入:
用户名:anonymous 密码为空
也没有可以利用得信息 然后再尝试ssh 发现没权限无果。
SMB共享服务:
前面得端口我们都尝试了发现没有什么利用信息然后我们在看看445端口 发现了共享文件夹信息
可以看到其中的smbdata有可读可写的权限
根据我们之前发现的信息,尝试 账号:smbdata 密码:rootroot1 可以成功登陆
查看详细信息
smbclient //192.168.11.136/smbdata
将感觉重要的信息下载下来
cat查看文件中的内容,看看有什么发现
sshd_config中发现靶机仅仅支持证书登陆,不允许密码登陆
在secure可以得到密码换了
这个时候就知道两个用户名两个密码
账号:smbdata、smbuser
密码:rootroot1,chauthtok
登陆一下,ftp。smbuser:rootroot1, 发现路径是/home/smbuser
结合之前ssh_config的配置信息,我们可以上传自己的一个证书来达到通过smbuser来登陆ssh
这里可以想到使用ssh-keygen生成公钥和私钥,将公钥上传到之前发现的路径~/.ssh/authorized_keys中,然后使用私钥登录。尝试一下。
先试用ssh-keygen生成密钥对。
进行ssh免密操作,然后上传到靶机
再进行ssh登入 登入成功!
提权
查看下 smbuser的sudo权限
找下拥有s位的文件
find / -perm -u=s -type f 2>/dev/null
暂时没有发现可能的天门或后门程序的痕迹。
查看下有没有定时任务
查看内核版本
通过上面的信息发现并没有什么可用的信息,但是系统的内核版本比较低,这个时候我们可以尝试使用脏牛进行提权
经过试验,前两个不行,那就尝试40616。
搜索metasploit模块编号为40616的linux内核利用代码。
先在80端口启动一个HTTP服务器
然后在smbuser中用wget下载文件40616.c
编译并修复40616.c文件
赋予执行的权利,并执行
提权成功
总结
这个靶机相对来说不容易。信息收集部分和之前一样,步骤都是一样的,这次扫描出来的开放端口较多,也就是在后面漏洞利用阶段会有很多方法。然后就来到漏洞分析,有很多入口点,首先基于目录扫描得出的目录,知道了其中用户的密码。紧接着从2049nfs入手,看是否有共享目录,发现有但是看不了。然后就利用ftp匿名登录,可以登录但是不能看文件内容。然后登录ssh,也是没有权限查看文件。最后从445端口SMB共享服务,找到了smbdata有可读可写的权限,猜测是用户名,通过这个smbclient命令试图访问IP地址192.168.11.136上的smb共享文件夹smbdata,最后访问成功,看了一些重要文件内容,得知了一些重要线索:靶机仅仅支持证书登陆,不允许密码登陆;密码换了。最后也总共得出了两个用户名两个密码。最后使用ftp工具尝试连接到IP地址为192.168.11.136的FTP服务.最后利用ssh-keygen生成私钥,进行ssh免密操作。最后就是提权,先是寻找是否有s位的文件,紧接着找计划任务,最后看了linux版本较低,使用脏牛提权。这就是整个靶机渗透过程。如有问题,还请大家在评论区帮忙指出!