巧妙利用PSR监控Windows桌面

2023-11-26 05:30
文章标签 windows 桌面 监控 巧妙 psr

本文主要是介绍巧妙利用PSR监控Windows桌面,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!



0x00 前言


在渗透测试的过程中,如果需要获取主机的更多信息,相比于键盘记录,记录系统屏幕的操作往往更加直接有效。
也许每个人都有自己独特的实现方式,但是如果能够利用Windows系统自带的程序实现,个人认为绝对是最优先考虑的方案。
下面就介绍一下如何利用Windows系统自带的功能实现监控屏幕操作。

Alt text

0x01 简介


PSR(Problem Steps Recorder),直译为问题步骤记录器,在Windows 早期的系统中,采用WER(Windows Error Reporting)来收集系统的错误报告,但这些报告往往包含的信息太少以致于无法解决实际问题。

为此,微软从Windows 7系统开始,增加了PSR来解决这个问题,PSR能够记录用户在遇到崩溃时执行的所有操作,以便测试人员和开发人员能够重现环境对其分析和调试。

当PSR运行时,将会自动记录屏幕的操作,每次操作都会自动保存成一张图片,最终生成一份zip格式的报告。

注:
百度百科对psr的名称描述有误,准确的应为Problem Steps Recorder(该问题已提交)

如图 Alt text

链接为:
http://baike.baidu.com/link?url=BCQtF6gpxNGulRPj-vACw_NGwZvHPcrfvn4vmx6u_JFI_OcuPJIFzY3GYE-mu91DZcB-RLiQ6pGXTki1Fc0Y6K

0x02 使用方法


1、启动psr.exe,点击开始录制

可使用快捷键win+R直接输入psr来启动
下图为psr的操作面板,点击开始记录即可记录当前的屏幕操作

Alt text

点击后会提示权限的问题,如果需要记录管理员权限的程序,那么需要以管理员权限来运行psr,如图

Alt text

2、进行任意操作

当运行psr开始录制后,鼠标点击时会增加特效

如图 Alt text

3、停止记录,保存报告

如图 Alt text

4、查看报告

报告会对每次操作截图,并记录鼠标的操作

比如鼠标的单击操作,从截图注释可以看到当前的鼠标做了哪些操作 Alt text

而且,在报告后半部分会详细记录相关细节,里面的内容也很是有趣: Alt text

0x03 进阶方法


psr在记录屏幕的操作中会启动UI界面,并且对鼠标点击操作增加特效,这显然无法满足渗透测试的要求。

但好在psr提供了命令行参数用作后台记录

命令行参数如下:

psr.exe [/start |/stop][/output <fullfilepath>] [/sc (0|1)] [/maxsc <value>]
[/sketch (0|1)] [/slides (0|1)] [/gui (0|1)]
[/arcetl (0|1)] [/arcxml (0|1)] [/arcmht (0|1)]
[/stopevent <eventname>] [/maxlogsize <value>] [/recordpid <pid>]/start Start Recording. (Outputpath flag SHOULD be specified)
/stop Stop Recording.
/sc Capture screenshots for recorded steps.
/maxsc Maximum number of recent screen captures.
/maxlogsize Maximum log file size (in MB) before wrapping occurs.
/gui Display control GUI.
/arcetl Include raw ETW file in archive output.
/arcxml Include MHT file in archive output.
/recordpid Record all actions associated with given PID.
/sketch Sketch UI if no screenshot was saved.
/slides Create slide show HTML pages.
/output Store output of record session in given path.
/stopevent Event to signal after output files are generated.

结合实际,可使用以下命令:

  1. psr.exe /start /gui 0 /output C:\test\capture.zip

    后台启动psr并开始录制,文件保存为C:\test\capture.zip

  2. psr.exe /stop

    结束录制并退出psr,自动保存报告文件

0x04 实际测试


测试环境:

Server:
OS:Kali linux
IP:192.168.174.133Client:
OS:Win7 x86
IP:192.168.174.128Kali已获得meterpreter权限

如图 Alt text

测试功能:

  1. 自动启动录制
  2. 录制指定时间后自动退出
  3. 自动保存报告文件

可使用Powershell对上述功能做简单实现:

1、启动自动录制,设置为无界面模式,并指定输出路径:

psr.exe /start /gui 0 /output C:\test\capture.zip;

2、等待10s,即录制时间为10s:

Start-Sleep -s 10;

3、结束录制,自动退出:

psr.exe /stop;

可将以上代码保存为C:\test\1.txt,然后对其作base64加密

在Powershell环境下执行如下代码来对功能代码进行base64加密:

$string=Get-Content "C:\test\1.txt"
$bytes = [System.Text.Encoding]::Unicode.GetBytes($string)
$encoded = [System.Convert]::ToBase64String($bytes)
$encoded

Alt text

如图,从输出得到加密的Powershell命令为:

cABzAHIALgBlAHgAZQAgAC8AcwB0AGEAcgB0ACAALwBnAHUAaQAgADAAIAAvAG8AdQB0AHAAdQB0ACAAQwA6AFwAdABlAHMAdABcAGMAYQBwAHQAdQByAGUALgB6AGkAcAA7ACAAUwB0AGEAcgB0AC0AUwBsAGUAZQBwACAALQBzACAAMQAwADsAIABwAHMAcgAuAGUAeABlACAALwBzAHQAbwBwADsA

然后就可以在meterpreter的shell下直接执行Powershell命令:

powershell -ep bypass -enc cABzAHIALgBlAHgAZQAgAC8AcwB0AGEAcgB0ACAALwBnAHUAaQAgADAAIAAvAG8AdQB0AHAAdQB0ACAAQwA6AFwAdABlAHMAdABcAGMAYQBwAHQAdQByAGUALgB6AGkAcAA7ACAAUwB0AGEAcgB0AC0AUwBsAGUAZQBwACAALQBzACAAMQAwADsAIABwAHMAcgAuAGUAeABlACAALwBzAHQAbwBwADsA

Alt text

代码执行后,等待10s产成报告文件capture.zip,测试成功

0x05 防御


可采用以下两种方法关闭psr:

1、使用组策略

中文系统:

gpedit.msc-管理模板-Windows组件-应用程序兼容性

启用关闭问题步骤记录器

如图 Alt text

英文系统:

gpedit.msc-Computer Configuration-Administrative Templates-Windows Components-Application Compatibility

启用Turn off Problem Steps Recorder

如图 Alt text

2、修改注册表

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat]

新建"DisableUAR"=dword:00000001

如图 Alt text

注:
dword=1对应组策略中的已启用
dword=0对应组策略中的已禁用
删除”DisableUAR”对应组策略中的未配置

0x06 小结


利用PSR监控Windows桌面,不仅仅能够捕获用户桌面的操作,而且在报告中会包含更多有用的细节信息,相信你在渗透测试的过程中,一定会用上它。

0x07 参考资料


  • https://cyberarms.wordpress.com/2016/02/13/using-problem-steps-recorder-psr-remotely-with-metasploit/
  • https://msdn.microsoft.com/en-us/library/windows/desktop/dd371782(v=vs.85).aspx
  • https://blogs.msdn.microsoft.com/cjacks/2009/02/25/deciphering-the-command-line-configuration-of-the-windows-7-problem-steps-recorder/
  • https://technet.microsoft.com/en-us/magazine/dd464813.aspx
  • http://blogs.msdn.com/b/wer/archive/2009/03/30/problem-steps-recorder-psr-exe-windows-error-reporting-another-tool-to-help-find-solutions-to-software-defects.aspx
  • http://blogs.technet.com/b/mspfe/archive/2013/03/22/uncovering-a-hidden-gem-psr-exe.aspx
  • http://www.sevenforums.com/tutorials/139779-problem-steps-recorder-enable-disable.html

本文由三好学生原创并首发于乌云drops,转载请注明

这篇关于巧妙利用PSR监控Windows桌面的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/425189

相关文章

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Windows下C++使用SQLitede的操作过程

《Windows下C++使用SQLitede的操作过程》本文介绍了Windows下C++使用SQLite的安装配置、CppSQLite库封装优势、核心功能(如数据库连接、事务管理)、跨平台支持及性能优... 目录Windows下C++使用SQLite1、安装2、代码示例CppSQLite:C++轻松操作SQ

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Windows的CMD窗口如何查看并杀死nginx进程

《Windows的CMD窗口如何查看并杀死nginx进程》:本文主要介绍Windows的CMD窗口如何查看并杀死nginx进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows的CMD窗口查看并杀死nginx进程开启nginx查看nginx进程停止nginx服务

Python使用Tkinter打造一个完整的桌面应用

《Python使用Tkinter打造一个完整的桌面应用》在Python生态中,Tkinter就像一把瑞士军刀,它没有花哨的特效,却能快速搭建出实用的图形界面,作为Python自带的标准库,无需安装即可... 目录一、界面搭建:像搭积木一样组合控件二、菜单系统:给应用装上“控制中枢”三、事件驱动:让界面“活”

Windows 系统下 Nginx 的配置步骤详解

《Windows系统下Nginx的配置步骤详解》Nginx是一款功能强大的软件,在互联网领域有广泛应用,简单来说,它就像一个聪明的交通指挥员,能让网站运行得更高效、更稳定,:本文主要介绍W... 目录一、为什么要用 Nginx二、Windows 系统下 Nginx 的配置步骤1. 下载 Nginx2. 解压

windows系统上如何进行maven安装和配置方式

《windows系统上如何进行maven安装和配置方式》:本文主要介绍windows系统上如何进行maven安装和配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. Maven 简介2. maven的下载与安装2.1 下载 Maven2.2 Maven安装2.

JVisualVM之Java性能监控与调优利器详解

《JVisualVM之Java性能监控与调优利器详解》本文将详细介绍JVisualVM的使用方法,并结合实际案例展示如何利用它进行性能调优,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全... 目录1. JVisualVM简介2. JVisualVM的安装与启动2.1 启动JVisualVM2

使用Python实现Windows系统垃圾清理

《使用Python实现Windows系统垃圾清理》Windows自带的磁盘清理工具功能有限,无法深度清理各类垃圾文件,所以本文为大家介绍了如何使用Python+PyQt5开发一个Windows系统垃圾... 目录一、开发背景与工具概述1.1 为什么需要专业清理工具1.2 工具设计理念二、工具核心功能解析2.