Vulnhub靶机渗透学习记录:DC-4

环境搭建

  1. 攻击机:Kali-Linux2020.4(VmwareWorkstation)
  2. 靶机:DC-4(VirtualBox)
  3. DC-4靶机下载链接:https://www.five86.com/dc-4.html
  4. Kali与DC-4配置桥接模式,并桥接到同一张网卡
  5. Kali的IP地址如下:
    在这里插入图片描述

信息收集

  1. 先使用Nmap探测Kali与DC-4所在网段存活主机,找到DC-4:
    在这里插入图片描述
  2. 进行全面扫描,并扫描全端口,发现只开放了80和22端口 :
    在这里插入图片描述
  3. 个人习惯,使用Nmap的vuln脚本探测一下,看是否有已知漏洞,没什么有价值的发现。
    在这里插入图片描述
  4. 访问80端口,发现Web页面。
    在这里插入图片描述

Burp爆破密码

  1. 看到登录页,挂上Burp代理,随便输入账号密码,抓包。
    在这里插入图片描述
  2. 发送到Intruder模块进行爆破。因为在Web页面看到Admin Information Systems Login标题,所以直接使用用户名admin,只设置密码一个爆破点。
    在这里插入图片描述
  3. 字典直接选择Burp内置的password字典。
    在这里插入图片描述
  4. 设置好后,爆破出密码为happy。
    在这里插入图片描述

远程命令执行getshell

  1. 登录进系统,发现是一个远程执行命令的界面,可以执行3个固定命令。
    在这里插入图片描述

  2. 直接用Burp抓一个包,尝试修改可执行的命令。
    在这里插入图片描述

  3. 发送到Repeater模块,尝试读取/etc/passwd文件,发现两个用户jim和sam。
    在这里插入图片描述

  4. 尝试直接反弹shell。
    Kali:
    在这里插入图片描述
    Burp执行命令:
    在这里插入图片描述
    成功接收到shell:
    在这里插入图片描述
    用python获取一个交互式shell,方便使用。

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

    在这里插入图片描述

权限提升

  1. 使用sudo -l 查看有无有特殊权限的文件,发现无法查看。
    在这里插入图片描述

  2. 查看是否有SUID提权,没有找到。

    find / -user root -perm -4000 -print 2>/dev/null
    

    在这里插入图片描述
    已知可以SUID提权的文件:

    nmap
    vim
    find
    bash
    more
    less
    nano
    cp
    
  3. 由于之前读取/etc/passwd文件时,发现有两个用户jim和sam,所以去/home下去看看有无线索。发现有三个用户,分别查看一下,发现只有jim目录中有文件。发现这个test.sh具有特殊权限,有可能要利用这个文件进行提权。
    在这里插入图片描述

  4. 查看backups目录下,有一个密码备份的文件。想到了开放的22端口,所以把文件内容复制下来当字典来爆破ssh。
    在这里插入图片描述

  5. hydra爆破ssh端口,成功得到密码。

    hydra -l jim  -P ./dc4-password -s 22 ssh://192.168.2.30
    

    在这里插入图片描述

  6. 利用爆破到的账号密码登录ssh,成功登录。
    在这里插入图片描述

  7. 老办法看看使用jim这个账户能否找到提权的点,发现并没有,看来前面提到的test.sh并没有用。
    在这里插入图片描述

  8. 登陆上来,便可以看到收到了一封邮件。去查看一下。在这里插入图片描述

  9. 可以在邮件中找到用户charles的密码
    在这里插入图片描述

  10. 切换到用户charles。
    在这里插入图片描述

  11. 老办法看看使用charles这个账户能否找到提权的点,发现了teehee具有特殊的权限,可以用来提权。
    在这里插入图片描述

  12. 查看teehee的–help,发现可以将标准输入写入到文件中。
    在这里插入图片描述
    在这里插入图片描述

  13. 这里考虑使用teehee在/etc/passwd中写入一个具有root权限的账户。
    在/etc/passwd中每行用户信息都以 “:” 作为分隔符,划分为 7 个字段,每个字段所表示的含义如下:

    用户名:密码:UID(用户ID):GID(组ID):描述性信息:主目录:默认Shell
    root:x:0:0:root:/root:/bin/bash
    

    对于密码,如果为x,则有密码,密码保存在/etc/shadow中,如果为空,则可无密码登录。
    对于UID有如下规定,所以应该让我们要写入的账户的UID为0。
    在这里插入图片描述

  14. 通过teehee向/etc/passwd中写入一条用户信息。

    echo 'root1::0:0:root:/root:/bin/bash'|sudo teehee -a /etc/passwd
    

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

  15. 添加成功之后,切换到用户root1,成功获取到root权限。
    在这里插入图片描述

  16. 进入/root目录,获取到flag。
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值