Windows远程执行

news2024/11/28 4:38:54

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.coloradmin.cn/o/1577901.html

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

相关文章

C++修炼之路之模板与STL简介

接下来的日子会顺顺利利,万事胜意,生活明朗-----------林辞忧 前言: 在比如写一个交换函数时,由于交换数据的类型不同,可能要写出很多个交换函数,在c可以使用函数重载来实现,但如果数据类型…

一文了解重塑代币发行方式的创新平台 — ZAP

代币的发行方式对加密市场有着重要的影响,它直接影响着项目的社区建设、流动性、价格稳定性以及投资者的参与度,未来预期等!合适的发行方式可以吸引更多的投资者和用户参与,提升项目的社区建设和价值实现。不当的发行方式和分配&a…

JSBridge原理 - 前端H5与客户端Native交互

1. 概述: 在混合应用开发中,一种常见且成熟的技术方案是将原生应用与 WebView 结合,使得复杂的业务逻辑可以通过网页技术实现。实现这种类型的混合应用时,就需要解决H5与Native之间的双向通信。JSBridge 是一种在混合应用中实现 …

字母大小写转换(C语言)

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>int main() {//初始化变量值&#xff1b;char c1 A;char c2 0;//实现大小写转换&#xff1b;c2 c1 32;//输出结果&#xff1b;printf("c2的编码是&…

智慧农场物联网系统:重塑农业的未来

随着科技的进步&#xff0c;物联网技术正在逐渐改变我们的生活。在农业领域&#xff0c;物联网系统也正在发挥着越来越重要的作用&#xff0c;为智慧农场的发展提供了新的可能。本文将深入探讨智慧农场物联网系统的优势、应用场景、技术实现以及未来发展趋势。 一、智慧农场物…

2024年第七届信息管理与管理科学国际会议(IMMS 2024)即将召开!

2024年第七届信息管理与管理科学国际会议&#xff08;IMMS 2024&#xff09;将于2024年8月23-25日在中国北京举行。数字化时代&#xff0c;我们面临着诸多挑战&#xff0c;如信息安全问题、数据治理难题、管理创新需求等。IMMS 2024的召开&#xff0c;旨在让全球信息管理与管理…

express接口请求的几种方式分析总结

导语 在用express做接口开发的时候&#xff0c;我们要处理post,get,put,delete等请求&#xff0c;以及jsonp的方式&#xff0c;这篇文章记录下结合ajax&#xff0c;实现处理这些请求方式的过程 实现过程 上代码&#xff0c;主要演示post,get及jsonp的请求 <!DOCTYPE htm…

引脚数量最少的单片机

引脚数量最少的单片机 2款SOT23-6封装单片机介绍 参考价格 PMS150C-U06 整盘单价&#xff1a;0.19688&#xff0c;该芯片为中国台湾品牌PADAUK(应广) SQ013L-SOT23-6-TR 整盘单价&#xff1a;0.27876&#xff0c;该芯片为国产&#xff1a;holychip(芯圣电子) 上述价格为2024…

弹幕功能1

今天看pure-admin的时候发现有个弹幕功能 GitHub - hellodigua/vue-danmaku: 基于 Vue 的弹幕交互组件 | A danmaku component for Vue

MySQL典型示例

目录 1.使用环境 2.设计表 3.创建表 4.准备数据 5.查询 1.使用环境 数据库&#xff1a;MySQL 8.0.30 客户端&#xff1a;Navicat 15.0.12 2.设计表 假设我们已经建好了一个名为test的数据库。我们添加如下几个表&#xff1a;教师、课程、学生、班级、成绩。实体联系图设…

GESP Python编程八级认证真题 2024年3月

Python 八级 2024 年 03 月 1 单选题&#xff08;每题 2 分&#xff0c;共 30 分&#xff09; 第 1 题 下列代码中&#xff0c;用到的算法是什么算法&#xff0c;去掉存储的空间&#xff0c;算法本身用到的空间复杂度是多少&#xff08; &#xff09; A. 二分法 &#xff0c; O…

无源定位之TDOA定位

一、基本原理 时差定位系统由一个中心站和两个以上的辅站组成&#xff0c;定位原理如下图&#xff08;a&#xff09;所示。主站以及辅站的位置均已知&#xff0c;并且接收辐射源信号&#xff0c;测出雷达发射的脉冲信号到达A,C两个基站之间的时间差&#xff0c;如图&#xff0…

提取COCO数据集中特定的类—vehicle 4类

提取COCO数据集中特定的类—vehicle 4类 1 安装pycocotools2 下载COCO数据集3 提取特定的类别4 多类标签合并 1 安装pycocotools pycocotools github地址 pip install githttps://github.com/philferriere/cocoapi.git#subdirectoryPythonAPI2 下载COCO数据集 COCO官网下载2…

Java常用API——五道综合练习

练习一&#xff1a; 键盘录入一些1~100的整数&#xff0c;并添加到集合中 直到集合中所有数据的和超过200为止 代码&#xff1a; public class Test1 {public static void main(String[] args) {/*键盘录入一些1~100的整数&#xff0c;并添加到集合中直到集合中所有数据的和…

比 Nest.js 更优雅的 TS 控制反转策略 - 依赖查找

一、Cabloy5.0 内测预告 Cabloy5.0 采用 TS 对整个全栈框架进行了脱胎换骨般的大重构&#xff0c;并且提供了更加优雅的 ts 控制反转策略&#xff0c;让我们的业务开发更加快捷顺畅 1. 新旧技术栈对比&#xff1a; 后端前端旧版js、egg2.0、mysqljs、vue2、framework7新版ts…

ISTQB选择国内版,还是国际版呢

1, ISTQB简介 ISTQB&#xff08;International Software Testing Qualifications Board&#xff09;是一个国际软件测试资格认证机构&#xff0c;旨在提供一个统一的软件测试认证标准。ISTQB成立于2002年&#xff0c;是非盈利性的组织&#xff0c;由世界各地的国家或地区软件测…

交叉注意力融合时域、频域特征的FFT + CNN -Transformer-CrossAttention电能质量扰动识别模型

往期精彩内容&#xff1a; 电能质量扰动信号数据介绍与分类-Python实现-CSDN博客 Python电能质量扰动信号分类(一)基于LSTM模型的一维信号分类-CSDN博客 Python电能质量扰动信号分类(二)基于CNN模型的一维信号分类-CSDN博客 Python电能质量扰动信号分类(三)基于Transformer…

OpenAI又更新,自定义AI模型上线

OpenAI 4日表示&#xff0c;他们正在为fine-tuning API引入新的改进功能&#xff0c;以帮助开发者更好地控制fine-tuning的过程&#xff0c;并且宣布了利用OpenAI构建自定义模型的新途径。 为了减少延迟、提高准确性和降低成本&#xff0c;开发者可以使用各种技术来提高模型性…

特别详细的Spring Cloud 系列教程2:微服务网关gateway的启动

继上一篇&#xff1a;特别详细的Spring Cloud 系列教程1&#xff1a;服务注册中心Eureka的启动 在比较多的教程和书籍里&#xff0c;spring cloud的微服务网关用的Zuul。然而&#xff0c;zuul已经不被官方提倡&#xff0c;现在提倡用的是spring cloud gateway。因为gateway的整…

安达发|五金加工业生产计划与排产常见问题及解决方法

五金加工业生产计划与排产是确保制造流程顺畅、高效的关键。在实际操作中&#xff0c;企业可能会遇到多种问题&#xff0c;影响生产效率和产品质量。以下是一些常见问题及其解决方法&#xff1a; 1. 需求预测不准确&#xff1a; - 建立更为精确的需求预测模型&#xff0c;结…