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

Linux/Academy

116911d0daf94762960e2a0a77b53986.png

Enumeration

nmap

首先扫描目标端口对外开放情况

nmap -p- 10.10.10.215 -T4

发现对外开放了22,80,33060三个端口,端口详细信息如下

a4105d68b5cc4149a46077934387dbb7.png

结果显示80端口运行着http,且给出了域名academy.htb,现将ip与域名写到/et/hosts中,然后从http入手

TCP/80

访问站点,看到了HTB的图标还怀疑了10秒钟

eb7e9d3028e44479b05e734faca72bd5.png

站点有一个登录口,一个注册口,通过查看网页源代码中的后缀名得知使用php语言

389ae0b5d2f94a1c99463ded807e26a6.png

既然有注册页面,那就先注册一个账号,然后登录看看

42f6e80dd877429ca8d7dc6df6443436.png

登录后点击一些链接也没有反应,使用dirsearch来检查是否存在其他目录

d3a60836fad14d5a9a55cce9cd363e7b.png

其中admin.php与之前的登录页面相同,但是用刚才注册的账户无法登陆,尝试重新注册一个用户,并用burp拦截数据包

27f4d566ee884ff49bf81eee86214c99.png

发现数据包中不止有在表单中填入的参数,还有一个roleid,猜测该参数可能是控制账户权限的,因为之前创建的账 户权限id为0,因此无法登陆admin.php的登录页面

尝试修改roleid为1,并发送请求包,可以看到服务器仍在正常响应

e7265aeaa23a452f96290272be4df730.png

再次尝试在admin.php中登录,发现登录成功,登陆成功后发现又是一个计划表

其中前五项都已经完成,最后一个是待定,在/etc/hosts中添加该域名,dev-staging-01.academy.htb

4392006efc6a4b48a0f7d420ee79167a.png

访问得到如下结果

5f9d1cb99aee45f8b145b16b54fef3a7.png

可以看到使用了php框架Laravel

8f36dd5c898e4a2f97831ed3b6ec278d.png

Exploition

CVE-2018-15133

发现该框架有一个漏洞,可以直接远程执行代码,条件是要知道程序秘钥,在上文中发现了APP_KEY,可能就是这个秘钥

005b573cd414443b8a7906f015400e49.png

在metasploit中可以直接配置攻击,利用对应程序

2d14cc0156ae469faf29023557f8fcc7.png

设置如下内容

3b8e9ee738da467f8a558cdb1067220f.png

执行程序后即可获取一个shell

24058e73b52a47468f16f6bc5648756f.png

使用python获取一个交互式shell

f011eac3a05d44678cf411e4558a8848.png

Lateral Movement

在web目录下,发现了一个.env文件,里面有一个数据库密码,考虑密码复用

e4db83c2e9d2405280c487dbbe800709.png

查看存在的用户

ded835fe89814983b136b65131fccd15.png

发现找到的密码适用于cry0l1t3用户,成功登录

6f61374f46b2415a89b5ba829b595d2e.png

并且在该用户目录下发现了第一个flag

5040f4c19d8f40c081d78f5d16ba057c.png

发现该用户属于adm组,作为非root用户,可以审查日志

6b567617402f49c6b577ea1578159afe.png

首先列出日志文件

e58fd390c6964d53b23d3a2c89f8660a.png

Linux 内核会记录很多内容,但默认情况下它不会记录 TTY 输入,而审计日志允许系统管理员记录这一点。如果启用了TTY 输入日志记录,则包括密码在内的任何输入都将以十六进制编码形式存储在 /var/log/audit/audit.log 内。可 以使用 aureport 程序来查询和检索 TTY 输入的记录。

b29c251db65e42199ba6812dbea623bd.png

发现了mrb3n的登录密码,登录该用户

80a2339581524690aaec4a0d40109824.png

Privilege Escalation

执行sudo -l,发现mrb3n可以以root身份运行composer

6fb80f8a9e18488abe5d033a0e16b22d.png

然后在GTFOBins中发现该程序可以用来提权

075067b8ea414e9ea2b7cf1defac08e7.png

按照上图中执行,即可获取root权限

ee1e3e609c674cf3a0aeef6979a2b8bb.png

在root目录中除了root.txt还有一个academy.txt,看起来挺有趣

de025b6ddae147f1b630171429322db2.png

 

相关文章:

Linux/Academy

Enumeration nmap 首先扫描目标端口对外开放情况 nmap -p- 10.10.10.215 -T4 发现对外开放了22,80,33060三个端口,端口详细信息如下 结果显示80端口运行着http,且给出了域名academy.htb,现将ip与域名写到/et/hosts中,然后从ht…...

windows .vscode的json文件配置 CMake 构建项目 调试窗口中文设置等

一、CMake 和 mingw64的安装和环境配置 二、tasks.json和launch.json文件配置 tasks.json {"version": "2.0.0","options": {"cwd": "${workspaceFolder}/build"},"tasks": [{"type": "shell&q…...

uniapp canvas做的刮刮乐解决蒙层能自定义图片

最近给湖南中烟做元春活动&#xff0c;一个月要开发4个小活动&#xff0c;这个是其中一个难度一般&#xff0c;最难的是一个类似鲤鱼跃龙门的小游戏&#xff0c;哎&#xff0c;真实为难我这个“拍黄片”的。下面是主要代码。 <canvas :style"{width:widthpx,height:hei…...

利用SPI,结合数据库连接池durid进行数据服务架构灵活设计

接着上一篇文章业务开始围绕原始凭证展开,而展开的基础无疑是围绕着科目展开的。首先我们业务层面以财政部的小企业会计准则的一级科目引入软件中。下面我们来考虑如何将科目切入软件更加灵活,方便业务扩展、维护与升级。 SPI是首先想到的数据服务方式 为什么会想到它呢?首…...

自动驾驶的决策层逻辑

作者 / 阿宝 编辑 / 阿宝 出品 / 阿宝1990 自动驾驶意味着决策责任方的转移 我国2020至2025年将会是向高级自动驾驶跨越的关键5年。自动驾驶等级提高意味着对驾驶员参与度的需求降低&#xff0c;以L3级别为界&#xff0c;低级别自动驾驶环境监测主体和决策责任方仍保留于驾驶…...

排序算法——希尔排序算法详解

希尔排序算法详解 一. 引言1. 背景介绍1.1 数据排序的重要性1.2 希尔排序的由来 2. 排序算法的分类2.1 比较排序和非比较排序2.2 希尔排序的类型 二. 希尔排序基本概念1. 希尔排序的定义1.1 缩小增量排序1.2 插入排序的变种 2. 希尔排序的工作原理2.1 分组2.2 插入排序2.3 逐步…...

Docker 容器内运行 mysqldump 命令来导出 MySQL 数据库,自动化备份

备份容器数据库命令&#xff1a; docker exec 容器名称或ID mysqldump -u用户名 -p密码 数据库名称 > 导出文件.sql请替换以下占位符&#xff1a; 容器名称或ID&#xff1a;您的 MySQL 容器的名称或ID。用户名&#xff1a;您的 MySQL 用户名。密码&#xff1a;您的 MySQL …...

【Java万花筒】数字信号魔法:Java库的魅力解析

从傅立叶到矩阵&#xff1a;数字信号Java库全景剖析 前言 随着数字信号处理在科学、工程和数据分析领域的广泛应用&#xff0c;开发者对高效、灵活的工具的需求日益增长。本文旨在探讨几个与数字信号处理相关的Java库&#xff0c;通过介绍其特点、用途以及与已有库的关系&…...

面试高频知识点:2线程 2.1 线程池 2.1.2 JDK中常见的线程池实现有哪些?

1. Executors类 Executors类是线程池的工厂类&#xff0c;提供了一些静态方法用于创建不同类型的线程池。然而&#xff0c;它的使用并不推荐在生产环境中&#xff0c;因为它存在一些缺点&#xff0c;比如默认使用无界的任务队列&#xff0c;可能导致内存溢出。 2. ThreadPool…...

Azure Private endpoint DNS 记录是如何解析的

Private endpoint 从本质上来说是Azure 服务在Azure 虚拟网络中安插的一张带私有地址的网卡。 举例来说如果Storage account在没有绑定private endpoint之前&#xff0c;查询Storage account的DNS记录会是如下情况&#xff1a; Seq Name …...

windows 安装sql server 华为云文档

先安装net3.5,剩下安装sqlserver步骤看下面文档 安装SQL Server_弹性云服务器 ECS_最佳实践_搭建Microsoft SharePoint Server 2016_华为云 (huaweicloud.com)...

相同主题文章竟同时发表在同一个2区期刊 | 孟德尔随机化周报(1.10-1.16)

欢迎报名2024年郑老师团队课程课程&#xff01; 郑老师科研统计培训&#xff0c;包括临床数据、公共数据分析课程&#xff0c;欢迎报名 孟德尔随机化,Mendilian Randomization&#xff0c;简写为MR&#xff0c;是一种在流行病学领域应用广泛的一种实验设计方法&#xff0c;利用…...

网络安全的使命:守护数字世界的稳定和信任

在数字化时代&#xff0c;网络安全的角色不仅仅是技术系统的守护者&#xff0c;更是数字社会的信任保卫者。网络安全的使命是保护、维护和巩固数字世界的稳定性、可靠性以及人们对互联网的信任。本文将深入探讨网络安全是如何履行这一使命的。 第一部分&#xff1a;信息资产的…...

【七、centos要停止维护了,我选择Almalinux】

搜索镜像 https://developer.aliyun.com/mirror/?serviceTypemirror&tag%E7%B3%BB%E7%BB%9F&keywordalmalinux dvd是有界面操作的&#xff0c;minimal是最小化只有命里行 镜像下载地址 安装和centos基本一样的&#xff0c;操作命令也是一样的&#xff0c;有需要我…...

架构师之路(十六)计算机网络(传输层)

前置知识&#xff08;了解&#xff09;&#xff1a;计算机基础。 作为架构师&#xff0c;我们所设计的系统很少为单机系统&#xff0c;因此有必要了解计算机和计算机之间是怎么联系的。局域网的集群和混合云的网络有啥区别。系统交互的时候网络会存在什么瓶颈。 既然网络层已经…...

python 调用SumatraPDF 静默打印PDF

SumatraPDF 文档 https://www.sumatrapdfreader.org/docs/Command-line-arguments ⽆边框 noscale/缩⼩到合适⼤⼩&#xff08;默认&#xff09;shrink/合适⼤⼩ fit/compat 兼容 # 分为 Portrait (纵向)和 Landscape (横向)两类 https://github.com/sumatrapdfreader/sumatrap…...

nginx部署https域名ssl证书

1、在你服务器nginx文件夹下创建ssl文件夹存放证书文件和秘钥文件 把.crt和.key证书放上 2、在nginx.conf文件中配置 在nginx.conf文件中server下加入listen 443 ssl; server {listen 443 ssl;charset utf-8;index index.html index.htm index.jsp index.do;add_heade…...

Python学习之路-Django基础:HelloDjango

Python学习之路-Django基础:HelloDjango 简介 Django&#xff0c;发音为[dʒŋɡəʊ]&#xff0c;是用python语言写的开源web开发框架&#xff0c;并遵循MVC设计。劳伦斯出版集团为了开发以新闻内容为主的网站&#xff0c;而开发出来了这个框架&#xff0c;于2005年7月在BSD…...

完成NAT实验

实验要求&#xff1a; 步骤一&#xff1a;配置vlan vlan b 2 3 interface GigabitEthernet 0/0/2 port link-type access port default vlan 2 interface GigabitEthernet 0/0/3 port link-type access port default vlan 3 interface GigabitEthernet 0/0/1 port link-type…...

uniapp 用web-view嵌套网页地址并传参

小程序登陆后把token和openId 对应传到pc端 pc端有两套一套pc端代码和适应移动端的代码 嵌套的是适应移动端的代码 1.uniapp <template><view class"main"><u-navbar :fixed"true" :autoBack"false" leftClick"goBack&quo…...

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

conda相比python好处

Conda 作为 Python 的环境和包管理工具&#xff0c;相比原生 Python 生态&#xff08;如 pip 虚拟环境&#xff09;有许多独特优势&#xff0c;尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处&#xff1a; 一、一站式环境管理&#xff1a…...

树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频

使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

django filter 统计数量 按属性去重

在Django中&#xff0c;如果你想要根据某个属性对查询集进行去重并统计数量&#xff0c;你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求&#xff1a; 方法1&#xff1a;使用annotate()和Count 假设你有一个模型Item&#xff0c;并且你想…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

跨链模式:多链互操作架构与性能扩展方案

跨链模式&#xff1a;多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈&#xff1a;模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展&#xff08;H2Cross架构&#xff09;&#xff1a; 适配层&#xf…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

JVM虚拟机:内存结构、垃圾回收、性能优化

1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...