配置错误的smb共享

news2025/7/26 19:23:00
介绍

Windows 是当今最流行的操作系统,不仅由个人用户使用,而且在大公司中也广泛使用。由于其操作简单性以及使用图形界面,如今,大量实体的公司网络充满了运行Windows操作系统的主机和服务器。无论这些机器针对的是最终用户、我们的员工还是现场技术团队,但由于 Windows 操作系统的演示简单性,它们很容易被错误配置,这在现实当中是广泛存在的。Windows 必须提供的机制管理群集中控件定位的差异意味着,在进行安全强化过程时,覆盖操作系统的所有隐藏角落和缝隙并不总是一件容易的事,尤其是对于新手团队。

在此示例中,我们将查看配置错误的 SMB 共享,该共享提供两种类型的攻击媒介。一个是可发现且易于使用的。另一个涉及安装和部署流行的开发框架,虽然非常有效,但在可发现性方面也有其自身的缺点。采取正确的步骤,了解正确的路径并感知攻击媒介的原理对我们的学习和理解是非常重要。

列举

为了获得目标主机的信息,我们将从nmap扫描开始。然而我们将使用新的功能进行扫描。我们将使用-Pn而不是服务检测开关。在实际环境中,防火墙一般都是存在的,拦截每一步的连接并拒绝所有非标准连接请求或扫描尝试。在典型的 nmap 扫描期间,nmap 脚本将执行一种复杂的 ping 扫描形式,大多数防火墙都设置为自动拒绝,毫无疑问。反复拒绝会引起安全人员的怀疑,在典型的扫描过程中,很多相同的请求将被拒绝。该标志将跳过主机发现阶段并直接转到其他探头类型,在一定程度上使我们的主动扫描静音。可以防止我们在攻击目标前被目标发现。

-Pn :将所有主机视为在线 -- 跳过主机发现
nmap -sC -Pn 10.129.175.196

在这里插入图片描述

根据 nmap 扫描的结果,计算机在端口 445 上运行 Windows 和服务器消息块服务。我们找到了目标。下面是发现的每个端口及其功能的简短摘要,以获取有关目标的一些背景信息。在开始任何类型的攻击之前,记录这些端口和目标信息非常重要。它将帮助我们避免防火墙的阻止和警报,同时能够第一时间定位到有问题的目标的缺陷点。

端口 135:

远程过程调用 (RPC) 服务支持 Windows 应用程序之间的通信。具体来说,该服务实现 RPC 协议 — 一种进程间通信的低级形式,其中客户端进程可以向服务器进程发出请求。微软的基础COM和DCOM技术建立在RPC之上。该服务的名称为 RpcSs,它在共享服务主机进程 svchost.exe 中运行。这是任何Windows操作系统中的主要进程之一,不会停止运行。

端口 139:

此端口用于 NetBIOS。NetBIOS 是网络基本输入/输出系统的首字母缩写。它提供与 OSI 模型的会话层相关的服务,允许不同计算机上的应用程序通过局域网进行通信。作为严格的API,NetBIOS不是网络协议。较旧的操作系统分别使用 NetBIOS 帧 (NBF) 和 NetBIOS over IPX/SPX (NBX) 协议通过 IEEE 802.2 和 IPX/SPX 运行 NetBIOS。在现代网络中,NetBIOS 通常通过 NetBIOS over TCP/IP (NBT) 协议在 TCP/IP 上运行。这会导致网络中的每台计算机都具有与(可能不同的)主机名对应的 IP 地址和 NetBIOS 名称。NetBIOS 还用于识别 TCP/IP(Windows) 中的系统名称。
简单地说,它是一种协议,允许通过 LAN 中 OSI 模型的会话层进行文件和打印机的通信。


端口 445:

此端口用于 SMB。SMB 是一种网络文件共享协议,需要计算机或服务器上的开放端口才能与其他系统通信。SMB 端口通常为端口号 139 和 445。端口 139 由通过 NetBIOS 进行通信的 SMB 协议使用。它是一种会话层协议,旨在通过本地网络在 Windows 操作系统中使用。端口 445 由较新版本的 SMB(Windows 2000 之后)在 TCP 堆栈之上使用,允许 SMB 通过 Internet 进行通信。这也意味着我们可以使用 IP 地址来使用 SMB 和文件共享。
简单地说,SMB一直是一种网络文件共享协议。因此,SMB 需要计算机或服务器上的网络端口才能启用与其他系统的通信。SMB 使用 IP 端口 139 或 445。

本质上,SMB(服务器消息块)是一种文件共享协议,这意味着我们可以通过探索smb协议来发现一些有用的东西。可以通过使用smbclient工具来实现。

我们可以通过运行以下命令来安装它。

apt install smbclient

在这里插入图片描述

smbclient -h

在这里插入图片描述

Administrator帐户适用于 Windows 操作系统。通常,SMB 服务器会请求密码,但由于我们希望涵盖可能的错误配置的所有方面,因此我们可以尝试无密码登录。

smbclient -L 10.129.175.196 -U Administrator
-L :列出目标上的可用共享。
-U :要使用的登录标识。

在这里插入图片描述

立足

从这里我们有两种攻击选择。

1、Smbclient 通过管理员授权轻松导航到 C$ 共享

2、PSexec.py 来自Impacket,涉及Impacket安装和常见的攻击面,大指纹。

smbclient \\\\10.129.175.196\\ADMIN$ -U Administrator

在这里插入图片描述

这是访问ADMIN 共 享 , 我 们 可 以 访 问 C 共享,我们可以访问C 访C共享,这是Windows的文件系统。

smbclient \\\\10.129.175.196\\C$ -U Administrator

在这里插入图片描述

我们将直接导航到Windows易受攻击的标准根位置:C:\Users\Administrator\Desktop。使用该命令,我们发现标志文件在我们的系统上。

cd Users\Administrator\Desktop
dir
get flag.txt
exit

在这里插入图片描述

cat flag.txt

在这里插入图片描述

选项B

我们设法获得了SMB命令行交互式界面。但是,由于我们可以访问分享目录,我们将尝试使用一种名为利用这种错误配置并获得交互式的工具psexec.py。它是Impacket框架的一部分。

Impacket是一个用Python编写的框架,用于处理网络协议。它专注于提供对数据包的低级编程访问,对于某些协议(例如SMB和MSRPC)。简而言之,Impacket包含数十种用于与Windows系统和应用程序交互的工具,其中许多是攻击Windows和Active Directory的理想选择。

impacket中最常用的工具之一是psexec.py。它以微软Sysinternals套件中的实用程序PsExec命名,因为它执行相同的功能,使我们能够在远程Windows机器上执行完全交互式的shell。

PsExec 是 Microsoft 的便携式工具,可让我们使用任何用户的凭据远程运行进程。它有点像远程访问程序,但不是用鼠标控制计算机,而是通过命令提示符发送命令,而无需手动安装客户端软件。当我们在学习一款工具的时候,了解Impacket的psexec是如何工作的是很重要的。

git https://github.com/SecureAuthCorp/impacket.git
cd impacket
ls
pip3 install .
pip3 install -r requirements.txt

在这里插入图片描述

Impacket 通过在共享上上传随机命名的可执行文件来创建远程服务。远程系统,会将其注册为 Windows 服务。这将导致通过 TCP端口 445 在远程 Windows 系统上提供交互式外壳。Psexec需要具有本地管理员权限或更高权限的用户的凭据,因为读取/写入权限到系统是必需的。成功进行身份验证后,它会将我们放入外壳中。

注意:如果我们没有安装 pip3(Python3 的 pip)或 Python3,请使用以下命令安装它:

sudo apt install python3 python3-pip

psexec.py -h

在这里插入图片描述

简单地从目标获取交互式 shell 的语法:

Python psexec.py username:password@hostIP

psexec.py administrator@10.129.175.196

从我们使用smbclient的先前方法中,我们知道“Administrator”用户没有密码。因此,我们将要运行的命令是:

当它提示输入密码时,只需按回车键(因为没有密码)。

在这里插入图片描述

我们获得了具有最高权限的外壳。棒!现在,我们可以浏览文件系统并检索flag。

在模拟测试环境中使用pkexec实用程序通常是首选,但它很容易在实际环境当中被Windows Defender 检测到。

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

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

相关文章

XSS-labs靶场实战(一)——第1-3关

今天继续给大家介绍渗透测试相关知识,本文主要内容是XSS-labs靶场实战。 免责声明: 本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负! 再次强调:严禁对未授权设备…

Linux安全--iptables详解

目录 1、iptables介绍 2、iptables四表五链详解 3、iptables基本语法 4、实际操作 4.1 增加规则 4.2 删除规则 4.3 修改规则 5、命令语法总结 6、基本匹配条件 7、iptables进阶用法 7.1 iprange扩展模块 7.2 string扩展模块 8、iptables进行端口转发 1、iptables介绍 …

【Python】面向Sqli-Labs Less15的布尔盲注二分法脚本

前言 其实写这个python脚本是为了完成我某节课的某个实验 代码里有一堆一堆的for循环,导致程序整个运行下来起码需要一个小时,而且还是基于二分法的qwq。本来想说去学一学python的多线程提升一下效率,但我发现我这代码一环扣一环&#xff0c…

基于PHP+MySQL的在线学习网站系统

随着我国教育体制的改革,我国大学生的数量越来越多。相对应的对我国的教育质量也提出了新的要求。如果仅仅是在课堂上学习那些有限的知识已经不能够再满足大学生对知识的渴望了。为了能够让大学生学习到更多的内容需要一个在线学习系统来辅助大学生进行学习。 PHP在线学习网站系…

点阵 LED 显示设计实验

一、实验目的: 1.了解LED点阵的基本结构。 2.学习LED点阵扫描显示程序的设计方法。 二、实验内容与要求: 编写程序,控制点阵向上卷动显示“原来如此是这样呀”。 实验系统中的1616 LED点阵由四块88LED点阵组成,如图1所示&…

[附源码]SSM计算机毕业设计作业自动评阅系统JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【多标签文本分类】《融合注意力与CorNet的多标签文本分类》

阅读摘要:   本文主要提出标签与文本注意力文本注意力、CorNet增强标签预测概率两个创新点,提升了实验精度。 参考文献:   [1] 融合注意力与CorNet的多标签文本分类 参考论文信息 论文名称:《融合注意力与CorNet的多标签文本分…

2.10 80%的小红书新手博主都会忽略的问题:排版【玩赚小红书】

其实,不管在哪一个平台发布作品,都需要注重排版。 因为舒服的排版,不仅能让读者视觉舒服,而且也是你重新检查作品逻辑是不是清晰的过程。 比如,你看下面这张对比图,从读者角度来看,你更喜欢排…

人类小脑内在组织背后的基因图谱

摘要 人类小脑的功能多样性在很大程度上被认为更多地来自于其广泛的联系,而不是局限于其部分不变的结构。然而,小脑内在组织中连接的确定是否以及如何与微尺度基因表达相互作用仍不清楚。在这里,我们通过研究同时连接小脑功能异质性及其驱动因…

【快速上手系列】使用idea调百度AI接口实现人脸识别功能

【快速上手系列】使用idea调百度AI接口实现人脸识别功能 一、人脸检测 步骤 1、百度AI开放平台 登录后点击控制台 点击公有云服务——应用列表——点击创建应用 填写一下信息然后创建 然后回到概览——领取免费资源(如果账号没领取过的话) 可以自选&…

[Java] [Spring boot] Mybatis generator 生成Mapper.xml无效的问题

报错:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 百度出来的解决方案: 1:Mapper.xml中的namespace不对应和mapper接口不对应 2:Mapper.xml中的方法(即id)和mapper接口中的方法名字不同或…

使用 nexus 作为 npm 私服

背景: 之前公司内部是使用的 verdaccio 作为私有前端 npm 仓库的工具的, 由于最近安装包时总是遇到问题, 发包 和 安装都比较慢, 不太确定具体是什么问题 几经解决还是没能够解决掉, 索性换一个工具试试, 公司后端的 maven 库私服是使用的 nexus, 找资料时发现 nexus 也是可…

C++,STL,,vector容器

文章目录一、vector介绍1.vector对象构造2.vector的赋值3.vector的大小4.vector末尾的添加移除操作5.vector的数据存取6.vector的插入7.vector的删除8.vector迭代器一、vector介绍 vector相当于顺序表 vector是将元素置于一个动态数组中加以管理的容器。 vector可以随机存取元…

天元宠物上市首日破发:市值蒸发约5亿元,薛元潮兄妹为实控人

11月18日,杭州天元宠物用品股份有限公司(下称“天元宠物”,SZ:301335)在深圳证券交易所创业板上市。本次上市,天元宠物的发行价格为49.98元/股,发行数量为2250万股,募资总额约为11.25亿元&#…

华玉通软发布“云雀”执行管理中间件,为智能驾驶关键应用提供确定性执行保障

11月17日,华玉通软(下称“华玉”)宣布正式发布“云雀”执行管理中间件(LARK EM Execution Management)。 这是继“雨燕”通信中间件(SWIFT DDS)后,华玉的又一款完全自主研发的智能驾…

[iOS]分析Mach-O文件

一、Mach-O文件介绍 我们拿到IPA文件后,解压后就能拿到一个与APP同名的可执行文件。 Mach-O为Mach Object文件格式的缩写,它是一种用于可执行文件,目标代码,动态库,内核转储的文件格式。 每个Mach-O文件包括一个Mach-…

Design A NearBy Friends

title: Notes of System Design No.09 — Design a Uber backend description: Design a PasteBin ’ date: 2022-05-13 18:01:58 tags: 系统设计 categories: 系统设计 00. What is Newarby Friends? 01.Functional Requirement 02. Non-Functional Requirement 03. Assump…

Java新特性(2):Java 10以后

您好,我是湘王,这是我的CSDN博客,欢迎您来,欢迎您再来~ 虽然到目前为止Java的版本更新还没有什么惊天动地的改变,但总是会冒出一些有趣的小玩意。前面列举了Java9和Java10的一些特色,现在接着来…

shell修改永久性别名,压缩与解压缩(zip gzip bzip2)文件上传预下载(sftp)

命令别名(永久有效) 敲重点(写入文件)(1)仅对root有效,写一个命令命为hello,实现的功能为每输入一次hello命令,就有hello,everyone写入文件/file.txt中。 root用户…

[UE][C++]Assimp库安装编译,UE_Assimp插件安装使用,各种三维格式转换

[UE][C]Assimp库安装编译,UE_Assimp插件安装使用,各种三维格式转换写在前面1.作者碎碎念2.结果1.需要准备的软件2.Assimp库编译步骤3.UE_Assimp插件的安装4.UE_Assimp插件样例使用5.Assimp库各种三维格式转换小程序写在前面 1.作者碎碎念 (…