Vulnhub Node:1 详解

文章首发:https://xz.aliyun.com/t/2695
欢迎进群交流技术: 363034250

信息收集

arp-scan 用来发现系统和指纹识别的命令行工具。

从结果中可以看到node的ip是”192.168.92.129”

使用nmap对端口进行探测,如下图所示:

可知开放的端口有2个,分别是:22和3000,其中3000是个web服务;

详细banner信息,如下图所示:

访问3000端口,有如下界面:

该web界面使用node.js编写,通过审计js源码,在“assets/js/app/controllers/home.js”这个文件中可以获取到存储敏感信息的位置/api/users/latest/ ,如下图所示:

访问该位置,获取到用户名和密码,如下图所示:

使用hash-identifier判断加密方式,为SHA-256,如下图所示:

接下来,就是破解出这个密码,使用在线工具,获得密码如下:

使用任意一个口令登录,登陆后如下图所示,没有获取到任何有价值的信息:

这里面说Only admin users have access to the control panel currently, but check back soon to test the standard user functionality!只有管理员用户才能访问这个界面,猜想应该还有另外的管理员帐号,直接访问/api/users/ 获取到了另外一个用户(myP14ceAdm1nAcc0uNT),如下图所示:

解出该用户的密码(manchester)后,登录可以下载该网站的备份源码,如下图所示:

审计源码

下载源码后,发现不能直接打开,首先对其进行base64解码,如下图所示:

发现是个加密文件,需要先进行破解,可以使用kali自带工具fcrackzip进行破解,该工具支持暴力破解和字典猜解两种方式,如下图所示:

fcrackzip -u -D -p /usr/share/wordlists/rockyou.txt myplace.zip
参数描述
-D指定方式为字典猜解
-p指定猜解字典的路径
-u表示只显示破解出来的密码,其他错误的密码不显示出

通过字典猜解出密码为magicword:

解压出源代码,如下图所示:

熟悉nodejs的同学了解app.js的作用,项目入口及程序启动文件,里面存储着重要配置信息,从该文件中,获取到mongodb的配置信息,如下图所示:

使用mark的用户信息,成功登录到ssh,如下图所示:

当前用户(mark)没有root权限,需要进行提权操作。

权限提升

确定当前系统的内核版本和系统版本,如下图所示:

命令描述
lsb-release查看发行的系统版本信息
arch机器的体系架构

通过查看版本信息,使用searchsploit(漏洞查询工具) 查找,可以知道该内核版本存在漏洞可以直接提权,如下图所示:

使用scp命令(远程文件拷贝)将payload上传至靶机,如下图所示:

对上传的文件进行编译,如下图所示:

执行该文件,可成功提权,如下图所示;

最终将会获取到两个flag:

一个是在/root/root.txt ;

另一个是在/home/tom/user.txt;

参考链接

Vulnhub walkthrough

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

StriveBen

写字不易,给点动力吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值