【内网安全-横向移动】基于SMB协议-PsExec

news2024/11/28 23:54:05

目录

一、SMB协议

1、简述:

2、工具:

二、PsExec

1、简述:

2、使用:

1、常用参数:

2、情况:

3、插件

三、PsExec(impacket)

1、简述:

1、impacket:

2、PsExec-impacket

1、简述:

2、使用:

四、MSF

1、简述:

2、使用:


一、SMB协议

1、简述:

1)SMB(全称是Server Message Block)是一个网络协议名,它能被用于Web连接和客户端与服务器之间的信息沟通

【内网安全-隧道技术】SMB、ICMP、DNS隧道、SSH协议icon-default.png?t=N176https://blog.csdn.net/qq_53079406/article/details/128328429?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167590823616800192267225%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=167590823616800192267225&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-128328429-null-null.blog_rank_default&utm_term=smb&spm=1018.2226.3001.4450

——————

2)判断:445端口

——————

3)IPC$连接:走的445端口,功能即实现文件共享

【内网安全-横向移动】IPC$连接--->计划任务--->上线icon-default.png?t=N176https://blog.csdn.net/qq_53079406/article/details/128899133?spm=1001.2014.3001.5501

2、工具:

PsExec、impacket-smbexec、services等



二、PsExec

1、简述:

1)PsExec:是一种轻量级 telnet-replacement,可用于在其他系统上执行进程,为控制台应用程序提供完全交互性,而无需手动安装客户端软件

——————

2)(远程命令行工具)PsExec 最强大的用途包括对远程系统和远程启用工具(如 IpConfig)启动交互式命令提示符,否则无法显示有关远程系统的信息。

——————

3)注意:一些防病毒扫描程序报告一个或多个工具感染了“远程管理员”病毒。 PsTools 中没有含有病毒,但它们已被病毒使用,这就是为什么它们触发病毒通知的原因

——————

4)使用条件

目标开启ipc$ (该共享默认开启,依赖445端口),连接到admin$

ipc$连接需要账号密码(工作组:使用管理员、域环境:使用域用户/域管理员、域控:使用域管理员)

目标防火墙开发445端口(默认禁止连接)

杀软检测不出被病毒使用(微软自带的,在白名单里)

——————

5)官方文档

PsExec - Sysinternals | Microsoft Learnicon-default.png?t=N176https://learn.microsoft.com/zh-cn/sysinternals/downloads/psexec用法

psexec [\\computer[,computer2[,...] | @file]][-u user [-p psswd][-n s][-r servicename][-h][-l][-s|-e][-x][-i [session]][-c executable [-f|-v]][-w directory][-d][-<priority>][-a n,n,...] cmd [arguments]

文档中包含相关参数

2、使用:

1、常用参数:

-u            用户名,如果在域内:域\用户名
-p            密码
-accepteula   第一次运行不弹出确认框
-s            system权限运行
-i            运行该程序,以便它与远程系统上指定会话的桌面进行交互。如果没有指定会话,进程将在控制台会话中运行
(-i cmd = cmd.exe)
(账号密码 = -hashes :$HASH$)

2、情况:

情况一:未建立IPC$的情况

1、建立连接,并以管理员运行cmd.exe
.\PsExec.exe -accepteula \\*.*.*.* -u administrator -p 密码 -s cmd.exe /c "命令如whoami"

——————

情况二:已经建立IPC$的情况

1、建立正常连接
net use \\192.168.*.*\ipc$ "密码" /user:"Administrator"     

2、已建立连接后
.\PsExec.exe -accepteula \\*.*.*.* -s cmd.exe /c "whoami"

3、插件

cs-psexec



三、PsExec(impacket)

1、简述:

1、impacket:

1)简述:Impack是一组用于处理网络协议的Python类的集合。Impack专注于提供对数据包的低级编程访问,并为某些协议(例如SMB1-3和MSRPC)提供协议实现本身。数据包可以从头开始构建,也可以从原始数据中解析,面向对象的API使处理协议的深层层次结构变得简单。该库提供了一组工具作为示例,说明可以在该库的上下文中完成什么

——————

2)项目地址

exe版本:

maaaaz/impacket-examples-windows: The great impacket example scripts compiled for Windows (github.com)icon-default.png?t=N176https://github.com/maaaaz/impacket-examples-windows——————

py版本:

mirrors / SecureAuthCorp / impacket · GitCodeImpacket is a collection of Python classes for working with network protocols. 🚀 Github 镜像仓库 🚀 源项目地址 https://gitcode.net/mirrors/SecureAuthCorp/impacket?utm_source=csdn_github_accelerator


3)UAC(User Account Control:用户账户控制):(从Win7开始)Windows系统引入的一种新的安全机制,这是一种通知用户是否对应用程序使用硬盘和系统文件授权,从而防止恶意程序损坏系统的机制

Windows) 用户帐户控制 ( | Microsoft Learnicon-default.png?t=N176https://learn.microsoft.com/zh-cn/windows/security/identity-protection/user-account-control/user-account-control-overview界面操作:

Win10中关闭UAC方法:控制面板--->用户账户--->更改用户账户控制设置--->对话框中设置合适的等级(最低:从不通知)

——————

命令操作:

# 管理员运行cmd,输入以下命令(参数0为关闭,1为恢复默认)
C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

4)RID

RID=1000+:指派给用户、计算机和组

RID=500-999:保留起来、表示在每个Windows计算机和域中

2、PsExec-impacket

1、简述:

1)相关参数

1、lget {file}                 #下载目标机器中的文件。
2、lput {src_file, dst_path}   #上传文件到目标机器。
3、-codec                      #解码命令执行的返回结果

——————

2)原理:通过smb上传一个服务程序到c:\windows(ADMIN$)目录,服务程序通过管道进行后续的命令执行的输入输出

——————

3):原版psexec.py上传会被拦截,需要绕过杀软(需要对服务程序修改尝试绕过杀软,如修改管道名称--->重新生成RemComSvc--->转成hex)

——————

4)命名:上传会随机英文字符串,使用PsExec.py提供的参数命名(防止名字容易被察觉异常


2、使用:

1、工具的准备(impacket中,服务程序位于/impacket/examples/remcomsvc.py文件中(二进制数据),需要修改其中的二进制数据绕过杀软)

1、通过IPC$(smb协议)建立连接上传服务程序到c:\windows(ADMIN$)目录(管理员权限,且防火墙端口开放)

2、打开管道,连接目标服务控制管理器SCM,创建、启动服务(serviceinstall.py进行服务安装),通过管道进行命令执行的输入输出,命令执行结束。

3、重新连接服务控制管理器,停止并删除服务、并删除服务程序



四、MSF

1、简述:

1)特点:安全漏洞检测工具、数千个软件漏洞(不断更新)


2)功能:信息收集、漏洞探测、漏洞利用等(即渗透测试的全流程


3)GitHub:

rapid7/metasploit-framework: Metasploit Framework (github.com)icon-default.png?t=N176https://github.com/rapid7/metasploit-framework


4)下载最新版本:

夜间安装程序|Metasploit文档渗透测试软件,渗透测试安全性icon-default.png?t=N176https://docs.metasploit.com/docs/using-metasploit/getting-started/nightly-installers.html

2、使用:

1)搜索相关模块

search psexec

2)使用模块

use exploit/windows/smb/psexec
(或者use +序号)

3)配置、运行

show options                #查看相关配置
set rhosts 192.168.*.*      #目标主机
set smbuser administrator   #用户名
set smbpass 111111          #密码

exploit                     #运行
(会出现meterpreter >)

4)命令执行

输入shell
meterpreter >shell
(获得system权限的shell,进行相关命令执行)

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

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

相关文章

C++-类和对象(上)

类和对象&#xff08;上&#xff09;一&#xff0c;构造函数1&#xff0c;概念2&#xff0c;特性二&#xff0c;析构函数1&#xff0c;概念2&#xff0c;特性三&#xff0c;拷贝构造1&#xff0c;概念2&#xff0c;特性四&#xff0c;运算符重载1&#xff0c;概念2&#xff0c;…

联合培养博士经历对于国内就业有优势吗?

2023年国家留学基金委&#xff08;CSC&#xff09;申请在即&#xff0c;很多在读博士在关心申报的同时&#xff0c;也对联培经历能否有助于国内就业心中存疑&#xff0c;故此知识人网小编重点解答此问题。之前&#xff0c;我们在“CSC联合培养-国内在读博士出国的绝佳选择”一文…

【论文解读|KDD2020】AKT. Context-Aware Attentive Knowledge Tracing

文章目录摘要1 引言1.1 贡献3 模型3.4 基于Rasch模型的嵌入摘要 知识追踪(KT)是指根据学习者在教育应用中的过去表现预测未来学习者表现的问题。KT最近使用灵活的基于深度神经网络的模型的发展在这一任务中表现出色。然而&#xff0c;这些模型通常提供有限的可解释性&#xff…

HTML画布与SVG(Canvas vs. SVG)

目录 画布(Canvas) 什么是 Canvas&#xff1f; 创建 Canvas 元素 通过 JavaScript 来绘制 理解坐标 更多 Canvas 实例 实例 - 线条 实例 - 圆形 实例 - 渐变 实例 - 图像 相关页面 SVG (Scalable Vector Graphics) 什么是 SVG&#xff1f; SVG 的优势 浏览器支持…

Springboot+Vue java毕业论文选题管理系统

在分析并得出使用者对程序的功能要求时&#xff0c;就可以进行程序设计了。如图展示的就是管理员功能结构图。 系统实现前端技术&#xff1a;nodejsvueelementui 前端&#xff1a;HTML5,CSS3、JavaScript、VUE 系统分为不同的层次&#xff1a;视图层&#xff08;vue页面&#…

bert处理超过512的长文本(强制改变位置编码position_embeddings )

最近在做 NER 任务的时候&#xff0c;需要处理最长为 1024 个字符的文本&#xff0c;BERT 模型最长的位置编码是 512 个字符&#xff0c;超过512的部分没有位置编码可以用了 处理措施&#xff1a; 将bert的位置编码认为修改成&#xff08;11024&#xff09;&#xff0c;前512…

【C++】类和对象(二)

目录 一、默认成员函数 二、构造函数 1、构造函数概念 2、构造函数编写 3、默认构造函数 4、内置类型成员的补丁 三、析构函数 1、析构函数概念 2、析构函数编写 3、默认析构函数 四、拷贝构造函数 1、拷贝构造函数概念及编写 2、默认拷贝构造函数 3、拷贝构造…

大学物理·第15章【量子物理】

黑体 斯特藩玻耳兹曼定律 维恩定律 光电效应 在光照射下 &#xff0c;电子从金属表面逸出的现象&#xff0c;叫光电效应. 逸出的电子&#xff0c;叫光电子 经典理论&#xff1a; 光电流值与入射光强成正比截止频率&#xff08;红限&#xff09;v0对某种金属来说&#xff0c;只有…

关于 NodeJs 处理超长字符串问题的分析

问题&#xff1a;对于超大的 string V8不能支持 问题背景 在 Nodejs 计算服务中&#xff0c;对端上上报的内存信息二进制数据进行预处理缓存时&#xff0c;遇到了一个奇怪的报错&#xff1a;RangeError: Invalid string length 。根据该报错信息&#xff0c;查找得知是字符串长…

二叉搜索树(查找,插入,删除)

目录 1.概念 2.性质 3.二叉搜索树的操作 1.查找 2.插入 3.删除(难点) 1.概念 二叉搜索树又称二叉排序树.利用中序遍历它就是一个有顺序的一组数. 2.性质 1.若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 2.若它的右子树不为空,则右子树上所有节点的值都…

代码解析工具cpg

cpg 是一个跨语言代码属性图解析工具&#xff0c;它目前支持C/C (C17), Java (Java 13)并且对Go, LLVM, python, TypeScript也有支持&#xff0c;在这个项目的根目录下: cpg-core为cpg解析模块的核心功能&#xff0c;主要包括将代码解析为图&#xff0c;core模块只包括对C/C/Ja…

Flink 滚动窗口、滑动窗口详解

1 滚动窗口(Tumbling Windows) 滚动窗口有固定的大小&#xff0c;是一种对数据进行“均匀切片”的划分方式。窗口之间没有重叠&#xff0c;也不会有间隔&#xff0c;是“首尾相接”的状态。如果我们把多个窗口的创建&#xff0c;看作一个窗口的运动&#xff0c;那就好像它在不…

大坝安全监测系统:水库“守坝人”!

一、项目背景 随着社会经济的迅速发展&#xff0c;我国水资源利用率越来越高&#xff0c;各类水利水电工规模进一步扩大。在抗洪救灾、水利发电等方面带来巨大的经济和社会效益。但受多种因素影响&#xff0c;大坝的安全问题日益严重。大量工程实践证明&#xff0c;为保证大坝…

uniapp 离线本地打包

uniapp打包教程地址 https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android.html点击查看 需要的环境&#xff1a; java (1.8)离线SDK(上面的连接下载即可)Android Studio&#xff08;同上&#xff09; 配置环境变量 依次点击“计算机”&#xff0d;“属性”&#…

通过 指针 引用 多维数组 详解

目录 一&#xff1a;回顾多维数组地址知识 二&#xff1a;二维数组的有关指针 三&#xff1a;指向数组元素的指针变量 四&#xff1a;用指向数组的指针作为函数参数 首先简单来讲&#xff0c;指针变量可以指向一维数组中的元素&#xff0c;也可以指向多维数组中的元素。下面…

Java线程中:Runnable和Callable的区别和联系

点个关注&#xff0c;必回关 文章目录一、Java提供了三种创建线程的方法1.继承Thread2.实现Runnable接口3.通过Callable和Future创建线程二、Runnable和Callable的区别和联系1.定义接口&#xff08;1&#xff09; Runnable&#xff08;2&#xff09;Callable&#xff08;3&…

onnx-graphsurgeon----ONNX计算图修改神器

0. 简介 作为深度学习用户&#xff0c;经常会听到ONNX、TensorRT等一系列常用的文件保存格式。而对于ONNX而言&#xff0c;经常我们会发现在利用TensorRT部署到NVIDIA显卡上时&#xff0c;onnx模型的计算图不好修改&#xff0c;在以前的操作中很多时候大佬是将onnx转换成ncnn的…

vscode中安装python运行调试环境

在运行代码之前&#xff0c;需要到微软商店下载安装python环境&#xff0c;35m&#xff0c;都是自动的。 1、安装python 的extensions插件。 ctrlshiftx 输入 python 后点击 install 按钮。 2、新建文件夹spider文件夹。 3、在新建文件夹spider下新建文件spider.py源代码。…

注册OpenAI体验ChatGPT实战演示

什么是ChatGPT ChatGPT&#xff0c;美国OpenAI 研发的聊天机器人程序 &#xff0c;于2022年11月30日发布的人工智能技术驱动的自然语言处理工具&#xff0c;能够真正像人一样完成交流和任务处理。日前&#xff0c;ChatGPT已经更新多个版本&#xff0c;很多大厂也都在接入其API。…

Spark On YARN时指定Python版本

坑很多&#xff0c;直接上兼容性最佳的命令&#xff0c;将python包上传到hdfs或者file:/home/xx/(此处无多余的/) # client 模式 $SPARK_HOME/spark-submit \ --master yarn \ --deploy-mode client \ --num-executors 2 \ --conf "spark.yarn.dist.archives<Python包…