TryHackMe | KenobiWriteup

TryHackMe | KenobiWriteup

Task 1 Deploy the vulnerable machine

Scan the machine with nmap, how many ports are open?

运行下nmap 一眼就是7个

image-20230704161358147

Task 2 Enumerating Samba for shares

  
   Samba是适用于和Unix的标准Windows互操作性程序套件。它允许最终用户访问和使用公司内联网或互联网上的文件、打印机和其他常见共享资源。它通常被称为网络文件系统。
    Samba基于服务器消息块 (SMB) 的通用客户端/服务器协议。SMB 仅针对 Windows 开发,如果没有 Samba,其他计算机平台将与 Windows 机器隔离,即使它们是同一网络的一部分。
    SMB 有两个端口,445139 FTP 运行在21端口 rpcbind 的端口 111。这只是一个将远程过程调用 (RPC) 程序号转换为通用地址的服务器。当一个 RPC 服务启动时,它告诉rpcbind它正在侦听的地址和它准备服务的 RPC 程序号。ProFtpd 是一个免费的开源 FTP 服务器。
    Searchsploit 基本上只是一个针对exploit-db.com 的命令行搜索工具 SUID:用户访问级别的特殊权限具有单一功能:具有SUID的文件始终以拥有该文件的用户身份执行,而不管用户传递命令。如果文件所有者没有执行权限,则在此处使用大写的S /usr/bin/menu 菜单系统文件 。

 

使用 nmap 我们可以枚举 SMB 共享的机器。

nmap -p 445 --script=smb-enum-shares.nse,smb-enum-users.nse IP  
                                                                       

image-20230704163011359

使用上面的nmap命令,找到了3个文件共享

利用 smbclient,我们可以检查其中一个文件共享

smbclient //ip/anonymous

image-20230704163525022

Once you're connected, list the files on the share. What is the file can you see?

答案就是log.txt

提示说You can recursively download the SMB share too. Submit the username and password as nothing.

可递归下载 SMB 共享,提交空用户名密码即可

smbget -R smb://ip/anonymous

image-20230704170822929

image-20230704170842203

之前我们nmap扫描端口时候,有一个111端口正在运行 rpcbind 服务。这只是一个将远程过程调用(RPC)程序号转换为通用地址的服务器。当一个RPC服务启动时,它会告诉rpcbind它正在监听的地址以及它准备服务的RPC程序号。

nmap -p 111 --script=nfs-ls,nfs-statfs,nfs-showmount IP

image-20230704171357233

Task 3 Gain initial access with ProFtpd

What is the version?

Lets get the version of ProFtpd. Use netcat to connect to the machine on the FTP port.

连接靶机的ftp,并且找到他的版本

之前我们已经知道ftp端口是21 所以直接执行 nc ip 21

image-20230704171844928

所以题目答案就是1.3.5

How many exploits are there for the ProFTPd running?

我们可以使用 searchsploit 来查找特定软件版本的漏洞。Searchsploit 基本上只是exploit-db.com 的命令行搜索工具。

image-20230704172500242

们知道 /var 目录是我们可以看到的挂载点因此,我们现在将 Kenobi 的私钥移至 /var/tmp 目录。

image-20230704190712399

image-20230704180218684

image-20230704190640926

然后连接到靶机

image-20230704190849803

What is Kenobi's user flag (/home/kenobi/user.txt)?

直接 cat /home/kenobi/user.txt

image-20230704190935102

Task 4 Privilege Escalation with Path Variable Manipulation

让我们首先了解什么是 SUID、SGID 和 Sticky Bits

允许关于文件在目录
SUID Bit 用户以文件所有者的权限执行文件 (无)
SGID Bit 用户以组所有者的权限执行文件 在目录中创建的文件获得相同的组所有者
Sticky Bit 意义 禁止用户删除其他用户的文件

 

What file looks particularly out of the ordinary?

image-20230705120457756

因为menu不是常见的可执行程序,所以这题答案是/usr/bin/menu

 

Run the binary, how many options appear?

问我们执行后出现多少个选项,直接执行menu,3个

image-20230705120854429

利用Strings查看可执行程序menu里有没有文本:(strings /usr/bin/menu),然后看到了这几个东西

image-20230705121151171

然后我们可以看到这里的curl并不是绝对路径,那么说明说明,我们可以替换这个curl

如我们执行 echo /bin/sh > curl 这样文件在执行程序后,实际上这意味着当 /usr/bin/menu 二进制文件运行时,它使用我们的路径变量来查找“curl”二进制文件。这实际上是 /usr/sh 的一个版本 那么就很清晰了

执行替换后,给curl赋予权限,并且移动到/tmp目录即可

 

posted @ 2023-07-04 20:41  L0VEhzzz  阅读(21)  评论(0编辑  收藏  举报