0x01 前言 这篇文章我们主要讲的是获取主机已安装程序的多种方式,通过获取的软件及版本信息可用于权限提升、搜集密码等。...0x03 通过WMI获取安装程序列表 WMI查询Win32_Product这种方式获取的已安装程序列表并不完整,因为这种方只能获取那些通过Windows Installer安装的程序,所以其它方式安装的程序就会无法获取...0x04 通过注册表获取安装程序列表 这种方式一般都是通过读取以下4个注册表项中的子健来获取主机上的已安装程序,每个子健代表一个已安装的程序,对应的是控制面板的程序和功能程序列表,Wow6432Node...enum_applications模块获取主机上已安装的应用程序及其版本列表,虽然也能在会话中用run get_application_list获取,但并不完整。...x64和x32的已安装应用程序列表,所以比较完整。
这些API是在系统安装WMI模块的时候安装的,通过他们我们能够能拿到我们想要的类。 WMI有一个存储库。...允许 WMI 使用者通过标准接口而不是自定义控制面板应用程序来配置设备。 通知驱动程序定义事件的 WMI 使用者,无需使用者轮询或发送 Irp。...简单示例: # 1) 计算机相关信息获取、操作 Get-WmiObject Win32_UserAccount # 获取计算机中的账号 (可省略Class) Get-WmiObject Win32...,IdentifyingNumber # 查看本机已安装的软件列表 (稍慢) Get-WMIObject -Class Win32_PhysicalMemory # 获取内存信息 gwmi Win32...可以使用PowerShell或CMD检索Windows产品密钥。
|findstr KB3080079 //查找TLS1.1、1.2远程支持更新包是否安装 【防火墙相关】 Get-Service MpsSvc //查看防火墙服务 Restart-Service MpsSvc...把获取到的信息存在一个数组变量$sysinfo中($sysinfo = Get-SystemInfo),然后数组名.属性名来呈现系统具体信息($sysinfo.Hostname、$sysinfo.'...是为了让显示不全的文本显示全 get-windowsfeature | format-table displayname,name //获取角色列表 get-windowsfeature -name rsat...Select name,DisplayName //获取服务显示名称里有Fire的服务 Get-FileHash -Path C:\Windows\System32\notepad.exe | Format-List...//获取某个文件的Hash值(算法SHA256) Get-WMIObject win32_Processor //获取CPU信息 Get-WmiObject Win32_VideoController
可以使用 Win32_LogOnSession 类获取每个会话的登录 ID、身份验证类型、开始时间和范围的列表: Get-WmiObject -Class win32_logonsession | select...authenticationpackage,logonid,starttime,scope 7 安装的补丁 枚举机器上安装的更新/补丁通常很有用。...WMI 有一个称为 Win32_QuickFixEngineering 的类,其中包含有关已安装更新和安全补丁的信息。...可以通过以下方式快速获取用户列表: Get-WmiObject -Class win32_useraccount 但是,对于加入域或域控制器,还会有其他几个帐户,包括 krbtgt、sqladmin、...但在此之前,对于那些不熟悉卷影副本的人: 卷影拷贝是 Microsoft Windows 中的一项技术,可以创建计算机文件或卷的备份副本或快照,即使它们正在使用中 为了卷影与副本进行交互,有 2 种可用的方法
清理临时文件Windows在运行过程中会生成大量临时文件,这些文件可以安全删除。使用磁盘清理工具cleanmgr在弹出的窗口中选择C盘。...卸载不需要的软件某些安装在C盘的软件可能占用大量空间。使用控制面板卸载软件appwiz.cpl 打开“程序和功能”窗口。按照占用空间排序,卸载不再需要的软件。...切换到“位置”选项卡,修改路径为其他磁盘(如D盘)。点击“应用”,系统会自动迁移文件。4. 清理Windows更新文件Windows更新会留下大量旧版文件,这些文件可以安全删除。...使用DISM工具清理更新文件DISM /Online /Cleanup-Image /StartComponentCleanup该命令会清理旧的Windows更新组件。...清理旧的系统还原点vssadmin delete shadows /for=C: /all删除C盘上的所有系统还原点(请确保已备份重要数据)。5.
使用Docker本地部署Focalboard 演示环境:Windows10专业版、Docker 如未安装Docker,可参考下方如何在Windows中安装Docker,如已安装可跳过以下步骤。...1.1 在Windows中安装 Docker 第一步:启动Hyper-v 打开控制面板,在程序与功能页面选择启用或Windows功能 勾选Hyper-V、虚拟机平台、Linux子系统并点击确认 然后,重启计算机...可以切换语言为中文 看板可以包含多种视图,也可以创建更多的其他视图,除了模版带好的元素,也可以自己添加新的属性。...管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑 修改隧道信息,将保留成功的二级子域名配置到隧道中 域名类型:选择二级子域名 Sub Domain:填写保留成功的二级子域名...点击更新(注意,点击一次更新即可,不需要重复提交) 更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名 最后,我们使用固定的公网https地址在任何浏览器打开访问
使用Docker本地部署Focalboard 1.1 在Windows中安装 Docker 1.2 使用Docker部署Focalboard 2. 安装Cpolar内网穿透工具 3....使用Docker本地部署Focalboard 演示环境:Windows10专业版、Docker 如未安装Docker,可参考下方如何在Windows中安装Docker,如已安装可跳过以下步骤。...1.1 在Windows中安装 Docker 第一步:启动Hyper-v 打开控制面板,在程序与功能页面选择启用或Windows功能 勾选Hyper-V、虚拟机平台、Linux子系统并点击确认 然后,重启计算机...可以切换语言为中文 看板可以包含多种视图,也可以创建更多的其他视图,除了模版带好的元素,也可以自己添加新的属性。...点击更新(注意,点击一次更新即可,不需要重复提交) 更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名 最后,我们使用固定的公网https地址在任何浏览器打开访问
系统类的实例,要获取 root 命名空间下所有命名空间的列表,可使用以下命令查询同一个类: Get-WmiObject -Namespace root -Class __Namespace 输出的内容包含了许多信息...一个奇怪而有趣的事实是,WMI 中的默认命名空间不是 root\DeFAULT 而是 root\CIMV2 (自 Windows 2000 以来一直是这样) 使用 CIM cmdlet Get-CimInstance...可以使用以下命令来缩小范围,该命令列出了用于获取或操作用户信息的所有可用类: Get-WmiObject -Class *user* -List 同样也可以使用 Get-CimClass 命令也能实现同样的效果...: Get-WmiObject -Query 'select * from win32_process where name="lsass.exe"' 现在我们知道在 WMI 中列出、获取和过滤类的实例...,我们应该看看更新类的实例。
在 PowerShell 可以很容易使用 WMI 拿到系统的信息,如果有关注我的网站,就会发现我写了很多通过 WMI 拿到系统的显卡,系统安装的软件等方法,本文告诉大家如果通过 PowerShell 拿到...WMI 类里面的属性 在 Windows 系统通过 Windows Management Instrumentation (WMI) 统一管理系统的配置,在 PowerShell 能使用 WMI 的功能进行获取系统...很少有人知道 WMI 里面包含了多少可以使用的类,包括我之前写的很多博客,实际上也只是里面的很少,通过下面的例子告诉大家如何获取设备里面包含的类 获取 WMI 类 在使用 WMI 之前需要知道 WMI...-List 在 Windows 10 设备,右击开始菜单,打开 PowerShell 输入上面代码,就可以看到输出 在 Get-WmiObject 的参数可以加上计算机是哪个,支持访问局域网可以访问的计算机的信息...PowerShell 通过 WMI 获取系统信息 PowerShell 通过 WMI 获取系统安装的驱动 PowerShell 通过 WMI 获取系统服务 PowerShell
在 PowerShell 可以很容易使用 WMI 拿到系统的信息,如果有关注我的网站,就会发现我写了很多通过 WMI 拿到系统的显卡,系统安装的软件等方法,本文告诉大家如果通过 PowerShell 拿到...WMI 类里面的属性 在 Windows 系统通过 Windows Management Instrumentation (WMI) 统一管理系统的配置,在 PowerShell 能使用 WMI 的功能进行获取系统...很少有人知道 WMI 里面包含了多少可以使用的类,包括我之前写的很多博客,实际上也只是里面的很少,通过下面的例子告诉大家如何获取设备里面包含的类 获取 WMI 类 在使用 WMI 之前需要知道 WMI...WMI 类的简洁属性,可以通过这个格式 Get-WmiObject -Class 某个类 具体的类可以通过 Get-WmiObject -List 找到 获取某个类里面包含的所有属性,通过这个格式...-Class 某个类 | Format-Table -Property 属性1,属性2 如获取 Win32_OperatingSystem 的 TotalVirtualMemorySize 和 RegisteredUser
在横向移动中的固定过程中一定离不开“信息收集”,然后分析信息根据实际场景(工作组或者域)来进行横向移动,至于使用什么工具,为什么使用这个工具,笔者使用WMI的意见。...使⽤wmic识别安装到系统中的补丁情况 wmic product get name,version #查看系统中安装的软件以及版本,2008R2上执行后无反应。...### ###安装软件 wmic product get name,version wmic product list brief 使用Powershell操作wmi Get-WmiObject -...#⽂件/⽬录列表 Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_Volume #磁盘卷列表 Get-WmiObject -Namespace ROOT...横向移动 注意:分析完信息后,根据已掌握的信息开始横向移动,无论您作何考虑,都需要利用到工具来进行操作,工具可以帮助您无需理解或多或少的知识,您只需读懂README即可,来帮助您获取shell,上传,
htm 这些命令创建并打开一个 HTML 页,该页列出了本地计算机上进程的名称、路径和所属公司。 第一个命令使用 Get-Process cmdlet 获取用来表示计算机中运行的进程的对象。...第一个命令获取进程的列表并将它们存储在 $a 变量中。第二个命令使用 Out-File cmdlet 将该列表发送给 Process.txt 文件。...命令:out-Printer 应用: PS C:\>$h = get-help -full get-wmiobject PS C:\>out-printer -inputobject $h 这些命令将打印完整版本的...第一个命令使用 Get-Help cmdlet 获取完整版本的 Get-WmiObject 的“帮助”主题,并将其存储在 $h 变量中。第二个命令将内容发送到 认打印机。...8.从安全事件(event)日志检索所有的条目可能需要很长时间,你怎么只获取最近的10条记录? 求解答 9.是否有办法可以获取一个远程计算机上安装的服务(services)列表?
,并进而测试了如何在不关闭Windows防火墙,不切换专用用户(一般的教程都需要在OPC客户端和OPC服务器的计算机上使用同一个用户账户登录)。...第二步,OPC Client获取已注册OPC服务器信息后,确定需要连接的OPC服务器,并通过ConnectionPoint接口及AdviseSink接口获取服务器的各种配置信息、数据项(Tag)实时数据及其它通知...第二步,OPC Client获取已注册OPC服务器信息后,确定需要连接的OPC服务器,并通过ConnectionPoint接口及AdviseSink接口获取服务器的各种配置信息、数据项(Tag)实时数据及其它通知...另外的一个问题是硬件的抢占,如串口,当一个使用了,其它的用户就无法再使用。因此通常不使用此选项。 ...,如ERP等,可能会有同样的对登录账户的需求,而在企业所有的网络计算机上设置并使用相同的用户账户登录是不现实的,同时也会有潜在的安全问题。
要卸载早期版本的 Windows PowerShell 3.0,请在每台安装了早期版本的计算机上完成以下过程: 在 Windows 控制面板中,单击“卸载程序”。 ...在“程序和功能”中,单击“查看已安装的更新”。 ...在“卸载更新”对话框中,单击“是”。 请注意,您需要在卸载更新后重新启动计算机。 安装Windows PowerShell 3.0 1....安装Microsoft .NET Framework 4.0的完整安装版本(dotNetFx40_Full_x86_x64.exe),或者,安装Microsoft .NET Framework 4.5的完整安装版本...在“Windows 更新独立安装程序”对话框中,当询问您是否安装更新时单击“是”。 在下载和安装更新向导中的“请阅读许可条款”页上,单击“我接受”。
利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。 乌鸦安全拥有对此文章的修改、删除和解释权限,如转载或传播此文章,需保证文章的完整性,未经允许,禁止转载!...本文所提供的工具仅用于学习,禁止用于其他,请在24小时内删除工具文件!!! 更新时间:2022.06.19 说明 本文大量参考了师傅们的文章,感谢各位师傅的帮助!...: type \\192.168.135.15\c$\windows\temp\shell.txt 在获取cmd之后,其实是可以进行任意操作的,但是由于wmic的隐蔽性更好,所以在这里可以使用wmic...使⽤wmic识别安装到系统中的补丁情况 wmic product get name,version #查看系统中安装的软件以及版本,2008R2上执行后无反应。...其可以在远程系统中执行命令并进行回显,获取远程主机的半交互式Shell。
/Metasploit.mof 在这种情况下,payload 是通过 Metasploit “ web_delivery/ ”模块使用 regsvr32 方法远程获取的。...PowerShell PowerShell 包含可以查询 WMI 对象并将信息检索回控制台的 cmdlet。以下命令可用于验证是否已创建任意事件以及恶意负载/命令是否存储在 WMI 存储库中。...Wmi -Persistence是一个简单的 PowerShell 脚本,支持以下触发器:启动、登录、间隔和定时。它包含三个功能,用于安装、查看和删除已创建的 WMI 事件。.../WMI-Persistence “ Get-WMIObject ” cmdlet 将确保已创建事件过滤器,因为脚本不提供任何控制台输出。...“ wmi_updater ” 模块能够从远程位置获取有效负载,而不是将其存储在 WMI 存储库中。它将注册为“ AutoUpdater ”,并且可以在启动时或一天中的特定时间设置触发器。
本文将详细介绍如何在WSL环境中配置VS Code,搭建高效的C++开发环境,包括编译器安装、项目创建、代码编写、调试配置等全过程。...环境准备前置要求在开始前,请确保已安装以下软件:Visual Studio CodeVS Code的WSL扩展Windows Subsystem for Linux (WSL)及所选Linux发行版(本文以...Ubuntu为例)设置Linux开发环境启动WSL终端:在Windows搜索栏输入"Ubuntu"并打开首次启动会要求设置用户名和密码,请记住此密码,后续使用sudo命令时需要更新系统包列表并安装GNU...IntelliSense不工作问题:代码提示和自动补全功能失效解决:确保C/C++扩展已正确安装在WSL中检查c_cpp_properties.json中的编译器路径是否正确重启VS Code总结通过本文教程...,你已经学会了如何在WSL环境中配置VS Code进行C++开发,包括:设置WSL和Linux开发环境安装必要的工具和扩展创建、编译、运行和调试C++程序配置自定义构建和调试任务这种开发方式结合了Windows
查看已安装的更新列表,包括更新时间、名称和类型。方法二:通过“控制面板”查看更新历史记录步骤:打开“控制面板”:按下Win + R键,输入control,然后按回车。...点击“程序” -> “查看已安装的更新”。在列表中查看所有已安装的更新,可以按日期或类别排序。...输入以下命令以列出最近的更新记录:Get-WindowsUpdateLog 或者使用以下命令查看特定时间段内的更新:Get-HotFix | Sort-Object InstalledOn -Descending...在左侧导航栏中展开“Windows 日志” -> “应用程序”和“系统”。查找与“Windows Update”相关的事件(通常事件ID为19、20、21等)。...HistoryXP:显示Windows更新和其他系统活动的历史记录。步骤:下载并安装上述工具之一。打开工具并查看详细的更新历史记录。
一、概述 Windows Subsystem for Linux (WSL) 允许在几分钟内在 Windows 机器上安装完整的 Ubuntu 终端环境,无需离开 Windows 即可开发跨平台应用程序...将学到什么: 如何在 Windows 11 上启用和安装 WSL 如何安装和运行使用 WSLg 的简单图形应用程序 如何安装和运行使用 WSLg 的更高级的应用程序 你需要什么: 安装了所有更新的 Windows...如果不是,则无法按照本教程安装 WSL。请按照此处的说明进行操作。 验证的第二个先决条件是虚拟平台功能。 搜索 Windows 功能。 打开控制面板并向下滚动到虚拟机平台。...单击 Windows Subsystem for Linux Preview 项,打开相应的应用程序页面。 单击获取以下载并安装该应用程序。...完成初始设置后,将需要创建用户名和密码(这不需要与Windows 用户匹配)。 20.04 22.04 乱码也很夸张的…… 最后,最好使用以下命令安装最新更新,并在提示时输入密码。
关闭端口 比如在Windows 2000/XP中关闭SMTP服务的25端口,可以这样做:首先打开“控制面板”,双击“管理工具”,再双击“服务”。...这样,关闭了SMTP服务就相当于关闭了对应的端口。(注:SMTP服务安装后在”服务”中才有。)...下面介绍如何在WinXP/2000/2003下关闭这些网络端口: 方法一:“本地安全策略“中关闭 第一步,点击“开始”菜单/设置/控制面板/管理工具,双击打开“本地安全策略”,选中“IP 安全策略,在本地计算机...第二步,右击该IP安全策略,在“属性”对话框中,把“使用添加向导”左边的钩去掉,然后单击“添加”按钮添加新的规则,随后弹出“新规则属性”对话框,在画面上点击“添加”按钮,弹出IP筛选器列表窗口;在列表中...方法二:防火墙关闭端口方法 1、在任务栏右端的网络连接图标处右键单击-打开网络和共享中心,弹出的面板里面左侧下找到windows防火墙; 2、开始-控制面板-windows防火墙。