利用信息收集拿到路径得到账户密码,下载备份文件,base64解密后,利用fcrackzip爆破zip压缩包,得到一个文件,查看app.js,发现泄露的账户密码,连接ssh,成功连接,利用ubuntu历史版本漏洞提权

一、靶机搭建

选择扫描虚拟机

选择路径即可

开启靶机

二、信息收集

靶机信息

name: Node: 1
日期: 7 Aug 2018
难度:中等
描述:Node是一个中等级别的boot2root挑战,最初是为HackTheBox创建的。有两个标志(用户标志和根标志)和多种不同的技术可供使用。OVA已经在VMware和Virtual Box上进行了测试。
本节介绍已收集到的有关该版本的各种信息,例如网页和/或自述文件中的引文。这些信息来源通常有助于完成发布,因为作者可以给出提示*以及帮助发布和工作的方法。

扫ip

靶机ip:192.168.108.151

扫开放端口和版本服务信息

可以看到开放了22和3000端口

3000端口:3000端口通常用于多种应用和协议,但最常见的是用于开发和测试的Web应用程序。许多JavaScript框架和库(如Node.js、Express.js等)默认使用3000端口来运行本地服务器

指纹探测

使用以下命令

nmap 192.168.108.151 -p 22,3000 -sV -sC -O --version-all

目录扫描

dirb扫描没有结果,试试dirsearch扫描

有个文件上传文件,可能存在漏洞

三、Web渗透

信息收集

如下页面,访问http://192.168.108.151:3000

查看源码,发现下面的路径

访问 /home.js,得到一些账户密码

解密一下

结果如下

用户名       密码
tom spongebob
mark snowflake
rastating 无法解密

都无法成功登录

都不是管理员

访问该页面,拿到一个路径

得到一组新的账户密码

myP14ceAdm1nAcc0uNT   密码:manchester

成功登录,有一个备份文件,下载下来

下载到kali

查看一下,很多字符,base64加密

重命名

base64解码是乱码

file查看一下,是zip压缩包,重命名

unzip解压,需要密码

zip爆破

fcrackzip爆破,拿到密码:magicword

unzip解压

查看app.js文件,拿到一个信息,可能是ssh链接的密码

ssh连接

密码:5AYRft73VtFpc84k

登录成功

四、提权

找找可以用的信息

看看/home目录,有三个文件

在tom目录下发现一个user.txt文件,但是无法查看

回到/home目录,看看系统内核版本

内核版本提权

搜索一下该漏洞,选择一个exp

下载下来

本地开启web服务

下载脚本到靶机

赋予权限

gcc编译并执行,提权成功

找找root下的flag,成功发现

Vulnhub-Node的更多相关文章

  1. babeljs源码

    babel.min.js!function(e,t){"object"==typeof exports&&"object"==typeof mo ...

  2. Vulnhub靶场题解

    Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...

  3. vulnhub靶场之Chronos:1

    准备: 攻击机:虚拟机kali.本机win10. 靶机:Chronos,下载地址:https://download.vulnhub.com/chronos/Chronos.ova,下载后直接vbox打 ...

  4. NPM (node package manager) 入门 - 基础使用

    什么是npm ? npm 是 nodejs 的包管理和分发工具.它可以让 javascript 开发者能够更加轻松的共享代码和共用代码片段,并且通过 npm 管理你分享的代码也很方便快捷和简单. 截至 ...

  5. node服务的监控预警系统架构

    需求背景 目前node端的服务逐渐成熟,在不少公司内部也开始承担业务处理或者视图渲染工作.不同于个人开发的简单服务器,企业级的node服务要求更为苛刻: 高稳定性.高可靠性.鲁棒性以及直观的监控和报警 ...

  6. node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理

    一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...

  7. 细说WebSocket - Node篇

    在上一篇提高到了 web 通信的各种方式,包括 轮询.长连接 以及各种 HTML5 中提到的手段.本文将详细描述 WebSocket协议 在 web通讯 中的实现. 一.WebSocket 协议 1. ...

  8. 高大上的微服务可以很简单,使用node写微服务

    安装 npm install m-service --save 使用 编写服务处理函数 // dir1/file1.js // 使用传入的console参数输出可以自动在日志里带上request id ...

  9. 构建通用的 React 和 Node 应用

    这是一篇非常优秀的 React 教程,这篇文章对 React 组件.React Router 以及 Node 做了很好的梳理.我是 9 月份读的该文章,当时跟着教程做了一遍,收获很大.但是由于时间原因 ...

  10. 利用Node.js的Net模块实现一个命令行多人聊天室

    1.net模块基本API 要使用Node.js的net模块实现一个命令行聊天室,就必须先了解NET模块的API使用.NET模块API分为两大类:Server和Socket类.工厂方法. Server类 ...

随机推荐

  1. 【bug记录】AttributeError: 'CollectReport' object has no attribute 'description'

    问题截图 问题原因 有完全重复用例,因为写用例的时候,为了图方便,直接复制的,还没来得及改,然后,用pytest运行的时候,就报这个错误了. 问题解决 去掉重复就行了

  2. 基于Three.js的大屏3D地图(一)

    依赖安装 yarn add three yarn add @types/three yarn add d3-geo three库安装后在node_modules下其还包含核心three/src和插件t ...

  3. Qt编写地图综合应用53-省市轮廓图下载

    一.前言 Qt的浏览器控件的交互机制非常方便,所以在在线地图的时候可以对每个区域的经纬度坐标集合发给Qt程序,让他去存储到文件,在实际的测试过程中,发现有部分地图有多个封闭的曲线的,比如散落的岛屿和飞 ...

  4. DotNetBar控件中,删除或移除AdvTree上指定名称的Node

    废话少说,直接上核心代码: string deleteNodeName = "节点1"; //移除advTree上指定名称的Node Node deleteNode = advTr ...

  5. 即时通讯技术文集(第10期):IM通信协议该选TCP还是UDP [共12篇]

    为了更好地分类阅读52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第10 期. [-1-] 简述传输层协议TCP和UDP的区别 [链接] http://www.52 ...

  6. webpack使用详解

    官网 官网:https://webpack.js.org 中文网:https://www.webpackjs.com 一.介绍 从webpack4.+进行介绍,会对Webpack常用配置一一讲解,各个 ...

  7. Family of Solution Sets

      欢迎投歌词!评论告诉我歌曲链接和词就好啦-大概四五天一更? Solution Set - "卷起击碎定论的漩涡" \(\to\) <夏虫> Solution Set ...

  8. Solution Set -「LOCAL」冲刺省选 Round VII

    \(\mathscr{Summary}\)   三道结论题,毁灭吧.   A 题一开始思路偏了,发现答案最高 bit 能固定之后接下来的结论就顺理成章了.   B 题哈哈哈哈又是经典:我结论猜对了,然 ...

  9. manim边做边学--动画联动

    今天介绍Manim中的动画联动的技巧,在数学动画中,动画联动是常用的功能, 比如讲解平面几何中三角形与圆的位置关系变化,通过动画联动可以让圆沿着三角形的边滚动,或者让三角形的顶点在圆上移动,从而直观地 ...

  10. SpringBoot启动报错:HikariPool-1 - Exception during pool initialization.

    不说废话,直接上错误信息: 2020-06-23 10:48:19.899 INFO 10608 --- [ main] cn.wps.ep.account.sync.Application : St ...