靶机3. FourAndSix2

该靶机没有web端,不需要网页

老规矩

1、信息收集

目标IP探测 (arp-scan、netdiscover、nmap)

Nmap端口扫描,版本,操作系统扫描等

这里使用的半开扫描(快)

nmap -sS 10.9.47.0/24 -T4

找到目标IP后详细扫描

nmap -sV -p- 10.9.47.215 -T4    

-p-    全端口扫描
-sV    扫描端口下的服务

我们发现没有http协议web端,但是发现NFS协议(文件共享)

2、NFS渗透

我们可以首先使用showmount工具查看靶机是否有共享文件夹:

showmount -e 10.9.47.215

 -e表示exports,即靶机向外共享的到处列表,可以看到共享目录是/home/user/storage(这样也表明靶机很可能有一个名为user的用户

目录挂载

尝试能否将这个共享的目录/home/user/storage映射到我们创建的目录:

sudo mount -t nfs 10.9.47.215:/home/user/storage /mnt/

mount用于挂载目录,-t是type的意思,指定为nfs共享文件模式,由上图可见该映射成功了,我们只要进入tmp目录应该就能看到靶机/home/user/storage目录的内容,如下:

果然,我们看到了/home/user/storage目录下的文件backup.7z,是一个压缩包

3、7z压缩包的密码破解

尝试直接用7z工具解压,-x参数表示解压缩:

7z -x backup.7z

需要输密码(不知道随便输一个)

说明内容有8张图片和两个文件,两个文件看名称像是ssh登录的私钥和公钥。用john爆破。由于john爆破只能针对hash文件,因此我们先用7z2john生成7z压缩包的哈希,名称为backup7z_hash:

7z2john backup.7z > backup7z_hash

发现报错(翻译后说我们缺少插件)

运行以下两个命令安装即可:

sudo apt update
sudo apt install libcompress-raw-lzma-perl

然后删掉错误生成的backup7z_hash,再次运行

生成7z的hash后,使用字典rockyou.txt进行压缩包的密码暴力破解,指定形式为7z格式:

john --format=7z --wordlist=/usr/share/wordlists/rockyou.txt backup7z_hash

对压缩包进行解压

看到hello kitty的文件,首先先用file查看是否是真的单纯的图片文件:

file hello*.* 

 好像就是单纯的图片文件,我们再试试用binwalk看看有没有捆绑,发现也没有

binwalk hello*.*

那有没有可能是图片隐写啥的,说不定图片里面有备注,我们尝试用exiftool查看图片:

 exiftool hello*.*

4、ssh私钥登录

查看不带.pub的文件id_rsa,这可能是私钥:

看起来确实是openssh的私钥,再看看公钥:

 那我们就直接尝试用私钥登录user用户吧:

ssh -i id_rsa user@10.9.47.215

-i表示用私钥登录,结果显示私钥id_rsa本身还有密码

与破解压缩包的思路类似,先将私钥生成john对应的hash文件,这里命名为id_rsa_hash:

john id_rsa_hash --wordlist=/usr/share/wordlists/rockyou.txt

拿到了私钥的passphrase是12345678,然后我们重新用私钥登录,输入passphrase即可成功登录user的shell:

5、less+vi提权

尝试能否采用suid的方法提权

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

这里要重点关注doas这个指令,该指令类似于sudo,即以高权限运行指令需要添加的命令。由于doas指令是具有s位的,因此使用doas可以以高权限运行指令。我们要查找的就是有哪些指令可以免密doas运行(即类似于ubuntu/debian的Linux运行sudo -l 后有哪些免密sudo的指令),这就需要查找doas的配置信息了。我们直接用find搜索doas的相关文件:

find / -name doas* -type f 2>/dev/null

看起来doas.conf就是doas的配置文件,我们查看:

这个文件告诉我们,less和authlog指令是可以用doas免密以root权限运行的!那我们就运行试试:

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

 运行发现再用less读取authlog:

那么要如何提权呢?此处我们是使用less命令对authlog进行查看,且此时less命令是具有root权限的。但less只能读文件,不能执行系统命令。我们知道在less中按字母v是可以启动vi编辑器的,而vi编辑器中输入冒号:后即可输入交互的指令,又由于less具有root权限,在less中启动的vi编辑器应该也具有root权限,那么我们按v进入vi编辑器后,输入:!sh应该就能够以root身份启动shell

按v之后进入vi编辑模式:

 再输入:!/sh即可提权,感叹号!用于表示执行系统命令:

可看到提示符已经变为了井号#,提权成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值