网络安全-企业环境渗透2-wordpress任意文件读&&FFmpeg任意文件读
阅读原文时间:2023年07月11日阅读:1

参考 http://prontosil.club/posts/c08799e1/

一、 实验名称

企业环境渗透2

二、 实验目的

【实验描述】

操作机的操作系统是kali 进入系统后默认是命令行界面 输入startx命令即可打开图形界面。

所有需要用到的信息和工具都放在了/home/Hack 目录下。

本实验的任务是通过外网的两个主机通过代理渗透到内网的两个主机。在渗透的过程中一般需要先进行端口扫描猜测主机上运行的服务,再通过漏洞利用脚本和其他扫描工具进一步确定漏洞存在,进而完成主机渗透拿到权限。

在本实验中需要查找flag{32位MD5}字样的字符串作为完成任务的凭证,将flag放到表单中提交。

通过外网系统漏洞获取目标机器的权限

通过获取服务器的权限后,通过此机器为跳板入侵内网

【实验目的】

Weblogic的java反序列漏洞应用

Wordpress任意文件读取的漏洞利用

Wordpress命令执行的漏洞利用

WordPress通过自己修改的EXP,getshell

通过代理扫描内网

Redis未授权访问以及对配置文件的理解

Ffmpeg任意文件的读取结合redis的利用

Drupal由于YAML解析器处理不当导致远程代码执行

三、 实验内容及原理

##任务一、Weblogic反序列化

###任务描述

整体扫描外部网络,探测暴露在外部的主机信息

利用java反序列化漏洞利用脚本执行系统命令。

在系统home目录下寻找flag字样的值提交,提交后该实验任务完成。

###实验目标

了解网络安全漏洞的概念以及现有的安全漏洞扫描工具。认知常见网络安全漏洞。

掌握java反序列化漏洞利用脚本的使用。

熟悉weblogic的常见端口。

掌握网络扫描探测的方法和技术原理和nmap的简单实用

###操作步骤

浏览器访问192.168.2.10的7001端口

使用weblogic java反序列化利用工具获取权限

所有需要用到的信息和工具都放在了/home/Hack 目录下。

在home目录下查找flag字样字符串提交

##任务二、Wordpress任意文件读取

###任务描述

使用wpscan工具扫描wordpress的插件漏洞

主要针对插件WP Hide Security Enhancer存在的任意文件读取漏洞,以此读取到网站主要文件。

###实验目标

了解网络安全漏洞的概念以及现有的安全漏洞扫描工具。认知常见网络安全漏洞。

掌握wordpress插件WP Hide Security Enhancer漏洞的利用方法。

掌握wpscan工具的使用和插件扫描命令

###操作步骤

1.利用wpscan扫描wordpress网站,扫描漏洞插件

注意 -e p扫描插件漏洞

2.利用扫描出的插件漏洞读取wp-config.php的文件内容

上面给出了漏洞文档链接

https://secupress.me/blog/arbitrary-file-download-vulnerability-in-wp-hide-security-enhancer-1-3-9-2/

访问看看

这样可以获取wpconfig.php

3.读取wp-config.php的flag字符串提交

##任务三、Wordpress命令执行

###任务描述

利用Burpsuite的repeater模块修改包探测漏洞存在的字段。

执行wordpress mailer命令执行漏洞的利用脚本尝试获取shell。

本任务的目的是通过wordpress主系统本身的漏洞进一步渗透,任务二只是获得了文件读取的能力,而不能命令执行。经过进一步的探测,判断这个wordpress中存在phpmailer的命令执行漏洞,这个漏洞的特点是通过HTTP包中的Host字段触发,唯一的前提条件是需要知道管理员的用户名。

###实验目标

了解网络安全漏洞的概念以及现有的安全漏洞扫描工具。认知常见网络安全漏洞。

掌握浏览器设置代理的方法

掌握Burpsuite抓包改包的基本操作和使用repeater模块探测漏洞字段。

掌握wordpress mailer漏洞的原理和脚本使用。

###操作步骤

访问目标网站,在浏览器中配置代理,用Burpsuite拦截请求包

使用Firefox浏览器工具栏中的“设置”工具进行“手动代理Manual Proxy”配置
设置的位置在Preference advanced

设置代理为127.0.0.1:8080

使用Burpsuite的repeater模块探测漏洞字段。

理解wordpress mailer漏洞的原理,执行wp.sh 脚本获取响应 信息

##任务四、通过改进漏洞利用脚本获得命令执行权限

###任务描述

通过分析sendmail中的语法改进作者的漏洞利用脚本,缩短host字段的长度绕过限制。

利用改进后的漏洞利用脚本来获取shell。

###实验目标

了解网络安全漏洞的概念以及现有的安全漏洞扫描工具。认知常见网络安全漏洞。

熟悉sendmail命令语法。

掌握webshell命令执行漏洞的常规下载执行的利用思路。

掌握在浏览器上配置代理的方法。

掌握利用Burpsuite的repeater模块改包测试的过程。

###操作步骤

查看漏洞利用脚本wordpress-rce-exploit.sh理解脚本改进的原理。

修改为

填写漏洞利用脚本的关键信息如反弹IP,监听端口等。本地监听设置的端口获取反弹的shell。

打开第二个shell监听

第一个shell执行

得到shell

利用shell上传regeorg的tunnel.php文件,使用regeorg架设代理

再开启一个shell,设置本地服务器

原来的shell上传tunnel.nosocket.php

通过proxychains设置好regeorg的代理,利用这个代理扫描内网1.0网段

检测,上传成功

开启代理

Proxychains 添加代理地址 修改 proxychains.conf

然后可以远程命令行

扫描 192.168.1.10

192.168.1.11

##任务五、redis未授权访问+ffmpeg 任意文件读取

###任务描述

查看网页中的信息可知,是通过ffmpeg处理视频的小应用,只有上传,下载和删除功能,此处存在ffmpeg文件读取漏洞,构造特定的avi视频,经过ffmpeg处理之后的视频就会包含想要的文件内容。利用文件读取漏洞获取redis配置文件内容。

redis数据库服务,允许外连且没有设置密码,可以随意访问,此处存在未授权访问漏洞,正常情况下可以写入文件,但是过程中发现,必要的config命令被替换了。而config命令的替换一定是写在redis的配置文件中的,配置文件的路径又可以在redis中执行info获取到。在以上环境中获取到redis服务器的shell。

###实验目标

了解网络安全漏洞的概念以及现有的安全漏洞扫描工具。认知常见网络安全漏洞。

掌握ffmepg任意文件读取漏洞的利用方法。

了解redis数据库的特性和配置文件的使用。

掌握redis数据库未授权访问漏洞的利用方法。

###操作步骤

扫描目标开启的端口,发现web和redis服务

连接redis服务器查看配置文件位置

使用redis-cli和刚刚的代理

Info查看配置文件

利用ffmepg的任意文件读取漏洞构造payload读取redis配置文件,获取修改过后的config命令。

Ffmpeg 的任意读取漏洞参考 https://www.freebuf.com/column/142775.html

生成avi

注意 file/// 位置是想获取的配置文件的位置

修改proxychains 配置文件,socks4

然后可以使用  命令  proxychains firefox & 来代理。

这样原来本地192.168.2.200访问不了的192.168.1.11 可以借助代理的192.168.2.11访问

如图

可见该网站利用ffmpeg转换视频,故可利用漏洞

上传刚刚的avi

然后下载 123.avi

在 /root/downloads查看下载好的视频,其中内容即为

可见 config 被替换为 ccoonnffiigg

利用redis写入文件的特点覆盖目标的定时任务cron文件反弹shell

注意过程中可能出现链接问题,更换端口代理即可解决

然后执行脚本

成功反弹shell

可以查找flag

/home/flag/flag.txt

/etc/redis/63799.conf

##任务六、drupal8远程代码执行

###任务描述

使用浏览器挂代理访问内网机器192.168.1.10。

利用drupal8的php反序列化漏洞向目标服务器写入webshell。

使用Cknife连接已经生成的webshell

###实验目标

了解网络安全漏洞的概念以及现有的安全漏洞扫描工具。认知常见网络安全漏洞。

熟悉网站webshell的概念,理解上传webshell、获取webshell权限的意义和方法。

掌握webshell工具Cknife的基本使用,特别是设置代理的功能,查看上传文件,命令执行等功能的使用。

掌握在浏览器上配置代理的方法。

掌握利用drupal8的php反序列化漏洞的攻击方法和相关的技术原理。

###操作步骤

使用浏览器结合proxychains用之前的代理访问内网中的drupal8的web应用。

除了上面的 proxychains 代理访问,也可以直接设置firefox的代理

访问192.168.1.10

弱口令登录目标网站后台

利用反序列化漏洞执行phpinfo 探测网站信息

浏览发现此处可以上传

选简单配置,粘贴 drupal_exp.txt 的内容

导入后

利用反序列化漏洞写入webshell,并测试存在

然后就有了webshell

用Cknife设置代理连接webshell获取网站的权限

实验Cknife连接

设置代理

添加链接

flag