node靶机渗透详解
下载靶机:这里有一个不错的网址里面都是靶机,适合练手https://www.vulnhub.com/
本次靶机下载为node靶机: https://www.vulnhub.com/entry/node-1,252/
靶机环境:处于nat网络下的VM虚拟机
渗透实战:
攻击机:kali :IP为192.168.233.131
靶机node:未知(可由后期扫描知道)
环境介绍好后第一步就是安装:提醒几点安装的版本为镜像的直接导入虚拟机就可以了,安装好后启动便可以开始渗透了
-
0x00 探测靶机ip
因为是出于nat网络下的所以应该与攻击机出于同一网段,可以选择用nmap探测存活主机,也可以使用下面的arp扫描
arp-scan -l
arp-scan 是一个用来系统发现的 ARP命令行扫描工具(可以发现本地网络下的隐藏设备),他可以构建并发送arp请求到指定的ip 并且显示返回的任何响
它可以显示本地网络中的所有连接设备,即使那些设备有防火墙。设备可以屏蔽ping但是不能屏蔽ARP数据包
当然用nmap探测也行:
namp -sP 192.168.233.1/24
经发现192.168.233.142就是靶机的ip下面那个131的是攻击机kali的ip
第一步完成
-
0x01 端口嗅探
这一步就是用nmap来扫描靶机开放端口,以及版本信息
nmap -sT -A -P0 192.168.233.142
这里采用的是隐藏tcp扫描,无ping扫描
有截图可以看到有两个端口开放了,ssh这个是比较熟悉的,第二个的3000端口打开的服务是http说明是个web服务,应该是可以进行访问的
-
0x02 访问web服务
地址:http://192.168.23.142:3000
进入到了一个网页,好奇的四处点点,并没有发现什么,就只有一个登陆:
尝试了弱口令破解,并没有成功。
这是想到可以去翻翻页面上的东西。利用火狐浏览器的F12可以查看:
每个都翻一翻,看看有没有一些可以利用的东西,嘿嘿发现了个好玩的东西:
在home.js中发现了一个敏感信息,于是查看改地址看看,一级一级看:
在这里发现四个用户被加密了的密码,还有一个重点就是有一个是admin用户,解码结果可得:
myP14ceAdm1nAcc0uNT :
tom :spongebob
mark : snowflake
restarting : 未搜到
OK,有这几个用户和密码就可以实现登录了,都试过一遍发现只有这个是admin用户的可以下载一个文件
下载打开后发现里面全是字母,感觉这就是经过base64加密过的文件,于是想着应该是可以解密的,发现在线工具解密不了,可能是太长了的缘故,于是就打算将文件拉到kali中进行文件base64解密
很明显这是下载一个备份文件(bak),按我上面说的操作来实现解密看看;可以回顾一下kali 怎么实现文件的base64的解密,就是简单的解密重定向到你命名的文
件中去
这里你要是知道重定向就很好理解了
这里我为什么要把它命名为.zip文件呢,主要是小编比较懒,做笔记吗,后面知道这是zip文件来懒得在重命名了,怎么查看文件的类型呢:你可以这样:
file filename
就会显示出文件类型了:
现实的是zip数据。也就是说呢,这个压缩文件是由base64加密得到的,现在解密后又称成了一个压缩文件了,接下来就是进行解压:
解压过程中发现解压需要密码,
对于zip压缩包,kali有一个自带的解压zip的工具:
fcrackzip --help
具体用法可以自行Google
fcrackzip -b -u -D -p 字典目录 myplace.zip
成功爆破密码。接下来就是解压了
unzip myplace.zip
这就是解压到的目录可以进去翻一翻。想一想,这个备份文件如果存在远程登陆的用户和密码的话就可以利用ssh这个打开的端口进行远程登录,这样不就拿到权限了吗。于是我们耐心翻阅这个备份文件,看看能不能找到。
成功找到:
一般备份文件中,都会记下一些重要的东西,只要你细心找,肯定会有所发现的。
就差最后一步了,远程连接并控制其服务器:这里又要回顾一下ssh连接的命令了:
ssh mark 192.168.233.142
密码:5AYRft73VtFpc84k
成功连接获得权限但是这里发现并没有很大的权限,要想拿到root权限下一步就是进行提权。(提权kaili里面也有知道的内核提权的exp)可以自行学习结束!!
接下来的提权操作