Windows远程执行

Windows远程执行

前言

1、在办公环境中,利用系统本身的远程服务进行远程代码执行甚至内网穿透横向移动的安全事件是非常可怕的,因此系统本身的一些远程服务在没有必要的情况下建议关闭,防止意外发生;
2、作为安全人员,了解远程执行的方法或者原理对于防范或者事件监控也都是很有必要的;

以下只是一些简单的示例,如有不对的地方,请大家指正,我会立马修改!!!

一、利用powershell 远程执行

1、通过winrm服务进行远程操作

Get-Service WinRM ##查看winrm状态
Enable-PSREmoting -Force ##启用配置系统接收远程命令

在这里插入图片描述
防火墙规则也会多出监听端口
在这里插入图片描述
如果计算机已经加入了域,直接可以发起连接,若没有需要先做一步信任设置,然后重启winrm服务
A连接B 需要在A上面设置信任B

set-item wsman:\localhost\client\trustedhosts B主机ip ##信任设置
Restart-Service WinRM ##重启winrm服务
get-item wsman:\localhost\client\trustedhosts ##查看信任ip
clean-item wsman:\localhost\client\trustedhosts ##去掉信任ip

在这里插入图片描述
在这里插入图片描述
测试远程连接
powerShell 还提供了一个命令用来测试远程主机是否开启了远程操作服务:

test-wsman 主机IP地址 

在这里插入图片描述
创建远程连接 Session

enter-pssession -computername 主机IP -credential 主机用户名 

在这里插入图片描述
在这里插入图片描述已连接 且B主机无感知 可执行命令

Exit-PSSession 退出连接

2、自动化脚本

命令被执行了,但缺陷也很明显:需要用户输入密码,因此无法被写到脚本中进行自动化操作
使用如下办法就可以实现脚本自动化

$Username = 'xxxx'
$Password = 'yyyy'
$pass = ConvertTo-SecureString -AsPlainText $Password -Force
$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$pass
Invoke-Command -ComputerName cd-lsr-svr -ScriptBlock { Get-Service WinRM } -credential $Cred

3、远程执行多个命令

有时候我们需要连续执行多个有关联的命令,比如后一条命令会用到前一条命令的结果。此时再使用上面的方法就不行了。需要通过 session 来处理命令之间的联系;

Invoke-Command -ComputerName myserver -ScriptBlock {$p = Get-Process PowerShell}
Invoke-Command -ComputerName myserver -ScriptBlock {$p.VirtualMemorySize}
$s = New-PSSession -ComputerName myserver
Invoke-Command -Session $s -ScriptBlock {$p = Get-Process PowerShell}
Invoke-Command -Session $s -ScriptBlock {$p.VirtualMemorySize}

当我们直接执行前两个命令时,由于第二个命令中的 $p 没有值,所以不能获得结果。最后两行的命令是通过同一个 session 执行的,所以它们可以共享变量,并最终获得结果;

4、远程拷贝文件

$mySession = new-PSSession -ComputerName xxxxxx
Copy-Item -Path .\task.ps1 -Destination C:\task.ps1 -ToSession $mySession

上面的命令把本地当前目录下的 task.ps1 文件拷贝到远程主机 xxxxxx 的 C 盘根目录下。注意 Copy-Item 命令使用了一个 Session 对象作为参数,这个参数的名称为 ToSession。其实文件传递的方向就是由这个参数决定的:使用 ToSession 会把本地的文件传递到远程主机;使用 FromSession 则会把远程主机上的文件传递到本机;

$mySession = new-PSSession -ComputerName xxxxxx
Copy-Item -Path .\PowerShell -Destination C:\PowerShell -ToSession $mySession -Recurse

注意目录拷贝操作要加上 Recurse 参数;

上面的两个操作分别是把一个文件和一个目录拷贝到远程的主机上,接下来我们要把远程主机上的文件或文件夹拷贝到本机来:

$mySession = new-PSSession -ComputerName xxxxxx
Copy-Item -Path C:\task.ps1 -Destination F:\temp\task.ps1 -FromSession $mySession
Copy-Item -Path C:\PowerShell -Destination F:\temp -FromSession $mySession -Recurse

在这里插入图片描述

注:语言模式会影响powershell文件远程拷贝命令执行,需要将目的机器改为FullLanguage模式

$ExecutionContext.SessionState.LanguageMode = "FullLanguage"

在这里插入图片描述

$mySession = new-PSSession -ComputerName xxxxxx
Copy-Item -Path .\task.ps1 -Destination C:\task.ps1 -ToSession $mySession  ##拷贝本地文件到目的机器
Copy-Item -Path .\PowerShell -Destination C:\PowerShell -ToSession $mySession -Recurse  ##拷贝本地目录到目的机器 
Copy-Item -Path C:\task.ps1 -Destination F:\temp\task.ps1 -FromSession $mySession ##拷贝目的机器文件到本地
Copy-Item -Path C:\PowerShell -Destination F:\temp -FromSession $mySession -Recurse    ##拷贝目的机器目录到本地

在这里插入图片描述

二、利用schtasks 远程执行

1、传输文件到目标服务器

首先确保受控端开启smb服务(445端口开放)
在这里插入图片描述建立IPC连接
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2、创建计划任务运行后删除

SCHTASKS /Create /S 192.168.17.130 /U Administrator /P "######" /SC ONCE /ST 11:00 /TN test1 /TR c:\cmd.exe /RU system

在这里插入图片描述
因为防火墙规则并没有开通 文件和打印机共享的rpc-epamp规则 只开了139,445端口
rpc-epmap程序服务用于RPCSS服务的入站规则,以允许后台打印程序服务的RPC/TCP通信
在这里插入图片描述
启用规则之后 便可以远程创建定时

在这里插入图片描述
在这里插入图片描述
查看是否执行成功
此计划任务是建立一个用户
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
删除计划任务
在这里插入图片描述

三、利用wmic 远程执行

  1. 需要远程系统启动 Windows Management Instrumentation 服务,开放135端口
  2. 远程系统的本地安全策略的“网络访问: 本地帐户的共享和安全模式”应设为“经典-本地用户以自己的身份验证
  3. wmic 会以管理员权限在远程系统上执行命令
  4. 防火墙开启将无法连接
  5. 如果报错 “Invalid Global Switch” ,用双引号把包含-的结点括起来即可正常执行。
C:\Users\Administrator>wmic /node:192.168.17.131  /user:administrator /password:****** process call create "cmd.exe /c net user test1 westos /add && net localgroup administrators test1 /add"
执行(Win32_Process)->Create()
方法执行成功。
外参数:
instance of __PARAMETERS
{ReturnValue = 9;
};C:\Users\Administrator>wmic /node:192.168.17.131  /user:administrator /password:****** process call create c:\cmd.exe
执行(Win32_Process)->Create()
方法执行成功。
外参数:
instance of __PARAMETERS
{ProcessId = 8488;ReturnValue = 0;
};C:\Users\Administrator>wmic /node:192.168.17.131  /user:administrator /password:****** process call create "cmd.exe /c net user test1 westos /add"
执行(Win32_Process)->Create()
方法执行成功。
外参数:
instance of __PARAMETERS
{ProcessId = 8632;ReturnValue = 0;
};

返回值为0代表执行成功

总结

1、对于powershell的远程执行,建议用户没有必要的情况下关闭winrm服务,安全人员可检测监控此服务进程是否开启,监控 enter-pssession,Invoke-Command,new-PSSession,Copy-Item等命令执行;
2、对于schtasks的远程执行,建议用户没有必要的情况下关闭smb服务,安全人员可检测监控此服务端口是否开启,监控 net.exe,net1.exe,SCHTASKS等命令执行
3、对于wmic的远程执行,建议用户用户没有必要的情况下关闭Windows Management Instrumentation 服务(135端口),安全人员可检测监控此服务端口是否开启,监控wmic等命令执行;

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

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

相关文章

学会了一门编程语言,如何1天入手其它编程语言?

1 语言之间都是相通的,核心在于计算机四大件和项目逻辑: 1.1 计算机专业四大件: 数据结构和算法、操作系统、计算机网络、计算机组成原理。 计算机组成原理、操作系统、数据结构和计算机网络融会贯通_操作系统,计算机网络&#…

easyexcel处理复杂表头

需求&#xff0c;模板如下 功能如下 开始整活&#xff0c;依赖包。 <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.2.1</version> </dependency>下载导入模板 1.方法 GetMapping…

【Vue】我的第一个组件

文章目录 项目简介 项目简介 项目根目录中的index.html是项目的入口文件 加载index.html&#xff0c;vite解析。指向的src下的ts文件或者js文件 最后通过vue3的createApp函数创建一个应用&#xff0c;并挂载到指定div下 App.vue结构说明 特别注意:script脚本内&#xff0…

基于单片机四路温度报警系统仿真设计

**单片机设计介绍&#xff0c; 基于单片机四路温度报警系统仿真设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机四路温度报警系统仿真设计概要主要涉及一个使用单片机作为核心控制器的温度监控系统&#xff0c;该系…

新型基础设施建设(新基建)

新型基础设施建设&#xff08;新基建&#xff09;主要包括七个方面&#xff0c;即5G基站建设、特高压、城际高速铁路和城市轨道交通、新能源汽车充电桩、大数据中心、人工智能和工业互联网。 以下是新型基础设施的详细内容&#xff1a; 一、5G基站建设。5G网络的扩展和优化&a…

【canvas】canvas的基础使用(一):创建canvas

canvas Canvas API 提供了一个通过JavaScript 和 HTML的<canvas>元素来绘制图形的方式。它可以用于动画、游戏画面、数据可视化、图片编辑以及实时视频处理等方面。 Canvas API 主要聚焦于 2D 图形。 canvas元素 <canvas> 元素可被用来通过 JavaScript&#xff…

C++ 圆周率的几种求解方法

公众号&#xff1a;编程驿站 圆周率的常见几种求解算法&#xff0c;包括但不仅仅包含特卡洛模拟、割圆法和公式法。本文讲解这几种算法的实现流程。 1. 蒙特卡洛模拟算法 假设有一个半径为1的圆&#xff0c;如图所示。先绘制一个半径为1的圆。则图中阴影部分&#xff08;1/4…

SV学习笔记(八)

文章目录 SV入门练习基本数据类型字符串类型数组类型接口的定义与例化类的封装类的继承package的使用随机约束线程的同步线程的控制虚方法方法&#xff08;任务与函数&#xff09;SV用于设计 参考资料 SV入门练习 基本数据类型 有符号无符号、四状态双状态、枚举类型、结构体…

STM32 F401/411外设内部互联矩阵摘要

STM32 F401/411外设内部互联矩阵摘要 &#x1f4cd;参考文档AN4646&#xff1a;https://www.stmcu.com.cn/Designresource/detail/localization_document/709908(中译) -&#x1f4cc; 相关工程案例《HAL STM32主从定时器联级使用》、《STM32G4 TIM1触发ADC转换》 &#x1f4d…

24考研-东南大学916经验贴

文章目录 一、个人情况二、初试备考经验1.政治 67&#xff0c;客观382.英语 60&#xff0c;客观大概40左右3.数学 136&#xff0c;客观应该满分4.专业课 数据结构计网 114小分不清楚 三、复试备考经验笔试&#xff1a;C面试复试流程 附一下成绩单&#xff1a; 一、个人情况 本…

如何给自己的网站添加 https

文章目录 一、简介二、申请 ssl 证书三、下载 ssl 证书四、配置 nginx五、开放 443 端口六、常见问题解决(一)、配置后&#xff0c;访问 https 无法连接成功(二) 证书配置成功&#xff0c;但是访问 https 还是报不安全 总结参考资料 一、简介 相信大家都知道 https 是更加安全…

【利器篇】前端40+精选VSCode插件,总有几个你未拥有!

前言 姊妹篇&#xff1a; 【利器篇】35精选chrome插件&#xff0c;含15前端插件&#xff0c;总有一款值得你停留 关于关于 【前端工具系列】&#xff1a; 有句话&#xff0c;事半功倍&#xff0c;其必然是借助了某些思想和工具。 VSCode是我们前端开发的武器&#xff0c;本文…

Python学习从0开始——专栏汇总

Python学习从0开始——000参考 一、推荐二、基础三、项目一 一、推荐 Hello World in Python - 这个项目列出了用Python实现的各种"Hello World"程序。 Python Tricks - 这个项目包含了Python中的高级技巧和技术。 Think Python - 这是一本教授Python的在线书籍&…

嵌入式Linux系统调用执行基本流程

内核态与用户态 什么是系统调用 系统调用是怎么实现的 库函数write 库函数扩展汇编宏 int 0x80中断 调用对应的中断处理函数 检索系统调用函数表 最终执行sys_write 内核态与用户态数据交互 内核态与用户态 早期工程师们在操作系统上编写程序的时候,自己写个程序可以访问别人…

面试算法-150-缺失的第一个正数

题目 给你一个未排序的整数数组 nums &#xff0c;请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,0] 输出&#xff1a;3 解释&#xff1a;范围 [1,2] 中的数字都…

90天玩转Python—07—基础知识篇:Python中运算符详解

90天玩转Python系列文章目录 90天玩转Python—01—基础知识篇:C站最全Python标准库总结 90天玩转Python--02--基础知识篇:初识Python与PyCharm 90天玩转Python—03—基础知识篇:Python和PyCharm(语言特点、学习方法、工具安装) 90天玩转Python—04—基础知识篇:Pytho…

创建型模式--2.简单工厂模式【人造恶魔果实工厂1】

1. 工厂模式的特点 在海贼王中&#xff0c;作为原王下七武海之一的多弗朗明哥&#xff0c;可以说是新世界最大的流氓头子&#xff0c;拥有无上的权利和无尽的财富。他既是德雷斯罗萨国王又是地下世界的中介&#xff0c;控制着世界各地的诸多产业&#xff0c;人造恶魔果实工厂就…

windows10系统下TP-LINK万兆网卡属性配置高级说明

文章目录 打开配置属性说明ARP Offload&#xff1a;ARP地址解析协议卸载Downshift retries:降档重试次数Energy-Efficient Ethernet:高能效以太网Flow Control:流量控制Interrupt Moderation:中断调整Interrupt Moderation Rate:中断调节率IPv4 Checksum Offload:IPv4校验和卸载…

2024/4/2—力扣—连续数列

代码实现&#xff1a; 思路&#xff1a;最大子数组和 解法一&#xff1a;动态规划 #define max(a, b) ((a) > (b) ? (a) : (b))int maxSubArray(int* nums, int numsSize) {if (numsSize 0) { // 特殊情况return 0;}int dp[numsSize];dp[0] nums[0];int result dp[0];fo…

three.js零基础入门超全超细的教程整理(一)

事情是这样的&#xff1a; 有一天 我干完活 看技术文章 发现了three.js 诶&#xff01;这玩应挺有意思 盘盘 于是第一天找教程 上官网 初上手 第二天 找案例 渲模型 试VR 第三天 捋文档 然后来活了 没时间捋了 下面是集百家精华教程的整理总结 涉及到教程方面有加源作者和地址…