实验二:Linux主机漏洞利⽤攻击实践

news2024/12/26 21:45:23

(一)实验简介

  实验所属系列:windows主机漏洞利用攻击实践

  实验对象:本科/专科信息安全专业

  相关课程:渗透测试

  实验时数(学分):2学时

  实验类别:实践类

(二)预备知识

  本实验要求实验者具备如下的相关知识

samba服务远程溢出漏洞

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成,samba服务对应的端口有139、445等等。

概述:

1.该漏洞CVE-2017-7494又被称为Linux版的永恒之蓝

2.主要是利用smb上的反弹shell漏洞,进行远程代码执行

3.samba 3.5.0 到4.6.4/4.5.10/4.4.14的中间版本、docker

   原理:

   1.远程命令执行

Samba允许连接一个远程的命名管道,并且在连接前会调用is_known_pipename()函数验证管道名称是否合法。

 2.Samba远程命令执行漏洞形成的原因

在is_known_pipename()函数中,并没有检查管道名称中的特殊字符,加载了使用该名称的动态链接库。导致攻击者可以构造一个恶意的动态链接库文件,执行任意代码。

该漏洞要求的利用条件:

拥有共享文件写入权限,如:匿名可写等

需要知道共享目录的物理路径

(三)实验目的

  1.让学生充分了解samba服务远程溢出漏洞形成原因

  2.学会搭建靶机环境

  3.学会使用kali里面的msf

(四)实验环境

Ip

os

应用

靶机

192.168.74.161

Centos

Samba 4.6.3

攻击主机

192.168.74.168

Kali2021

Msf

五)实验步骤

   渗透准备(靶机上操作)

1.创建快照,一定要创建快照,渗透结束后可以恢复靶机

2.创建一个新的普通权限用户,我这里创的用户是john

3.下载CVE-2017-7494环境,内含samba包

网盘地址: https://pan.baidu.com/s/1hJmICRP4casbgTUTgA2DIg

提取码:w8yb

下载完成后,进入CVE-2017-7494文件夹:

重要1:编辑一下容器的配置文件docker-compose.yml,将下图volumes:字段圈中部分替换为当前目录(务必要做,否则samba服务起不来)

重要2切换为root账户,将用户uu加入docker的用户组,然后安装docker,这里附上链接,可以参考安装:CentOS7安装Docker详细步骤_Eric-x的博客-CSDN博客,安装完毕后执行以下命令

重要3切换为用户uu,在CVE-2017-7494目录执行,开始运行测试环境:

//注意,若报如下的错误:那么我们刚刚把用户uu加入到组后,还要再重新登录该用户,再次执行重要2和重要3

//如果拉好镜像,但是samba服务起不来,就重新执行重要1,再次启动dockerSamba服务启动成功

查看samba服务是否开启,查看445端口是否开启

至此,靶机环境已经搭建完成

渗透工作(在kali上进行)

启动msf

使用exploit/linux/samba/is_known_pipename模块

设置RHOST为靶机ip地址

run一下,输入shell,就拿到shell

而且还是root权限,接下去就可以进行控制靶机进行命令操作了

提权之后

提权之后,可以扫描出他的所有账户密码/etc/shadow,然后横向渗透所有内网主机;或者扫描网络上所有存在该samba漏洞的主机,全部拿下。

如果靶机是服务器,可以上传木马,留个后门。

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

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

相关文章

如何集中式管理多个客户端节点传输任务-镭速

在一些生产制造企业或it部门,它们的生产机器设备每天都会有大量的生产数据,并且需要人为地对这些数据进行迁移或者归档备份到其他存储。这样重复性的操作,无疑大大提高了人工成本,而且运作起来的效率也不高。 镭速服务器集中式任务…

MySQL优化方案

一、MySQL 的优化方案有哪些?MySQL 数据库常见的优化手段分为三个层面:SQL 和索引优化、数据库结构优化、系统硬件优化等,每个大的方向中又包含多个小的优化点。1.SQL 和索引优化通过优化 SQL 语句以及索引来提高 MySQL 数据库的运行效率① 使…

【UE5】动画系统

title: 【UE5】动画系统 date: 2023-01-31 19:50:47 tags: UE5 categories: 学习笔记 password: abstract: message: 最近接触的项目涉及到动捕和动画,以前接触的范围主要是GamePlay以及C和蓝图的交互,很少接触动画,借此机会学习一下UE5的动…

【Jmeter】报错解决:JedisException: Could not return the broken resource to the pool

一、报错详情 (1)报错场景 使用 Jmeter 插件 Redis Data Set 配置连接 Redis 数据池时,运行出现报错 (2)报错日志

Python对liunx中mysql数据库进行单表查询 10个案例带你了解

关于Python连接liunx中mysql数据库的方式在这一篇文章 这里写目录标题1.在Liunx服务器中的mysql新建一个表2.插入数据3.连接liunx中的mysql数据库1、查询1946班的成绩信息2,查询1944班,语文成绩大于60小于90的成绩信息3,查询学生表中1到6行的…

QTabWidget 美化 qss

1. tab, tab-bar, pane属性分布 2. 使用qss美化时,tab标签上和pane中都能美化成功,但tab最右侧的tab-bar却始终没有成功。 /*设置控件的背景*/ QTabWidget {background-color:rgb(4,138,224); } /*设置控件下面板的背景颜色*/ QT…

C++11 常用的新特性

本篇介绍C11标准对比之前C标准的新特性,C11为C语言在2011年发布的版本,它改进幅度很大,影响至今。如加入auto 关键字、nullptr、移动语义(move semantics)、委托构造函数(delegating constructors&#xff…

ChatGPT超详细注册与使用教程

文章目录前言一、ChatGPT账号注册二、SMS-ACTIVATE虚拟手机号验证三、ChatGPT使用总结前言 最近ChatGPT非常火爆,是一种革命性的技术,这也吸引来了很多人想尝试一下,但是由于并没有在国内开通这项服务,所以国内的用户无法使用Chat…

Javascript预解析

1.我们js引擎运行js 分为两步,1.预解析,2.执行代码 (1)预解析:js引擎会把js里面所有的var还有function提升到当前作用域发的前面 (2)执行代码:按照代码书写的顺序从上往下执行 2.预…

RK3588平台开发系列讲解(进程篇)进程的处理器亲和性

平台内核版本安卓版本RK3588Linux 5.10Android 12文章目录 一、简介二、相关结构体三、函数接口四、cpuset的使用沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇介绍进程的处理器亲和性相关知识。 一、简介 Linux进程调度器为了充分利用CPU资源,会将进程在不同的…

如何养成整洁的代码习惯

如何养成整洁的代码习惯前言1.为什么要保持代码整洁?1.1 所以从一开始就要保持整洁1.2 如何写出整洁的代码?2.命名2.1 不好的命名方式1.没有任何意义的命名方式2.命名前后不一致3.命名冗余3.类3.1单一职责3.2 开闭原则3.3 内聚4.函数4.1 只做一件事4.2 函数命名1.函数名应见名…

春季开学必备物品清单、数码好物推荐篇

开学的脚步近了,近了,大学生返校,万物更新,大家迎接开学季的阵仗堪比迎接春天了。灵魂发问:开学装备备齐了吗?大学生们的情绪调整好了吗?自己要不要再回回炉,充充电?这次…

【redis6】第十二章(持久化)

RDB RDB是什么 在指定的时间间隔内将内存中的数据集快照写入磁盘, 也就是行话讲的SNAPSHOT快照,它恢复时是将快照文件直接读到内存里 备份是如何执行的 Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写…

ARM学习(17)ARM函数调用规则

笔者来聊聊ARM的函数的调用规则 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 新的改变 我们对Markdown编辑器进行了一些功能拓展与语法支持&…

观点动力学模型:主要理论与模型综述

文章目录意见动态建模图论DeGroot 模型Friedkin-Johnsen models社会权力演变自我评价反映的演变DeGroot-Friedkin模型(DeGroot)的新研究最终社会权力的分析动态相对互动拓扑相似时间尺度,记忆和噪声表达观点(expressed opinion)和私人观点(private opinion)EPO模型意…

学完python再学Java顺利吗,学完python再学Java要多久

这篇文章主要介绍了学完python再学C会不会轻松一点,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。 1、学编程先学python,然后学java可以吗? 建议先学J…

solidity Dapp 从签名中提取消息签名地址

通常, ECDSA(椭圆曲线数字签名算法)包含两个参数, r 和 s. 在以太坊中签名包含第三个参数 v,它可以用于验证哪一个账号的私钥签署了这个消息。 Solidity 提供了一个内建函数 ecrecover 它接受 r, s and v 作为参数并且返回签名这的地址。我们如何进行测试…

Windows使用WinSW实现开机自启动服务

在windwos系统中,有时候需要java的jar开机自启动,或者nginx的开机自启动,或者内网穿透工具(frp)的开机自启动,使用WinSW是一种很好的选择,记录一下使用WinSW实现的方式WinSW开源和下载地址(最新版WinSW v2.…

从0开始学python -14

Python3 字符串 -1 字符串是 Python 中最常用的数据类型。我们可以使用引号( ’ 或 " )来创建字符串。 创建字符串很简单,只要为变量分配一个值即可。例如: var1 Hello World! var2 "Runoob"Python 访问字符串中的值 Python 不支持…

Springboot2.x+Websocket+js实现实时在线文本协同编辑,并展示协同用户

文章目录诉求相关技术思路展开相关步骤pom配置服务端相关配置文本信息、用户广播处理逻辑前端功能代码功能测试小结诉求 实现页面实时在线文本协同编辑,且显示当前同时编辑文本的用户。 相关技术 Springboot(2.7.0)Websocketjavascript 思路展开 页面展示当前登陆用户页面有…