MaxUserPort并不是最大用户端口号,而是最大用户端口数,其算法是tcp动态端口范围包含的端口数+1024。...No, needs to be added. ②核实句柄泄漏,解决句柄泄漏后方可彻底解决 如何确认是句柄泄漏?...powershell执行get-process|Measure-Object -Property Handles -Sum可以看句柄数 建议执行get-process|select -Property...)级别句柄数有无特别高的,另一方面是看按进程名汇聚后看句柄数有无特别高的,一般情况下,浏览器的句柄数都比较高可以忽略,主要看浏览器之外的 要看具体某个进程的句柄数的话,加个进程名,例如get-process...chrome|Measure-Object -Property Handles -Sum 如果确认了是某个进程存在句柄泄漏,找开发这个程序的人来健壮代码
句柄数很高的话一般是有问题的,单个进程句柄数超过3000一般是有异常的(浏览器进程除外) 操作系统本身的进程的句柄数一般是几百到几千不等,很少超过1万 关于句柄泄露,官方说法是认为单个进程超过3000个句柄就可能是罪魁祸首...https://docs.microsoft.com/en-us/windows/client-management/troubleshoot-tcpip-port-exhaust 管理员身份 powershell...执行 get-process|Measure-Object -Property Handles -Sum 可以看总句柄数 要看某个进程比如wetool的句柄数,加个进程名,例如wetool这个进程 get-process...wetool*|Measure-Object -Property Handles -Sum system进程本身的句柄数一般在1万以下 get-process system|Measure-Object...system*|Measure-Object -Property Handles -Sum 图片.png 图片.png 浏览器程序的句柄数一般较高 get-process chrome*|Measure-Object
打开任务管理器按下 Ctrl + Shift + Esc 或右键点击任务栏并选择“任务管理器”。查看资源占用切换到“性能”选项卡。查看以下资源的实时图表:CPU:显示当前的使用率和频率。...切换到“进程”选项卡,按资源占用排序,找出异常进程。2. 使用资源监视器资源监视器提供了更详细的资源使用信息。打开资源监视器resmon查看详细资源占用在“概述”选项卡中查看整体资源使用情况。...使用PowerShell脚本PowerShell可以快速查询系统资源的实时占用情况。...查看CPU和内存占用Get-Process | Sort-Object CPU -Descending | Select-Object Name, CPU, WorkingSet -First 10该命令会列出占用...查看每个进程的详细资源占用情况,包括句柄、线程和I/O活动。6. 生成性能报告通过命令行工具生成系统性能报告,分析资源占用趋势。
作为Windows Server的脚本大当家——PowerShell,就是最具代表性的脚本语言,其功能在微软系架构(Exchange/AD/SystemCenter/Azure)上杀伤力不是大蟒蛇(Python...1、GetProcess,进程,一个Windows与Linux均有的概念,与Linux一样,Windows的进程可以拥有多个子进程或者线程,而在腾讯云的日志收集工具里的收集是采 来实现: get-process...WS2K8R2(Windows Server 2008R2)的句柄默认上限为10000(腾讯云/阿里云默认未作任何调整),最高上限可以调到18000,这里要根据自身的内存情况,理论上2Gb RAM以上的系统句柄调整为...18000并不会有问题,作为腾讯云的运维,笔者曾经见过一个木马程序(其实就是勒索病毒)伪装的svchost竟然多达9000+句柄,后来在反编译后发现该伪装进程有个BUG,就是申请VM(虚拟内存,后面讲到...,如果可以的话,应该输出其关系(站在Windows Server运维者角度来说,这个逻辑确实比较复杂,而且在PowerShell 2.0版本中并没有直接命令,如果要到这种级别的映射,只能通过前面一篇所讲的
关闭目标进程句柄。...----来着@伍默(红队学院星球) 注入步骤为: 1.获取目标进程中加载目标DLL的基址: 通过获取句柄,然后列出目标进程加载的所有DLL Get-Process -name powershell #...获取目标句柄 (Get-Process -name powershell).Modules #获取目标进程加载的所有DLL 获取DLL的基址 $addr = $Modules.BaseAddress...powershell demo $process_name = ""; $dll_name = @(""); $process_id = (Get-Process -name $process_name...)[0].Id; #获取进程加载的dll $Modules = (Get-Process -name $process_name).Modules; if ($Modules.moduleName.ToLower
,都能保证其能正常运行是怎么做的呢?...最后我们再回到上面cs ,powershell上线里面:上文分析其相关逻辑,发现就是实现了一个shellcodeloader,shellcode加载器。...,传入的两个关键参数,远程进程的句柄和线程执行的过程以及该执行过程的参数,这个参数就是dll文件的字符串。...注入思路没啥区别,就不结合代码来看了,和上面的普通dll注入差不多,唯一的区别在于下面第3步: 1.1、使用OpenProcess拿到宿主进程的句柄。...(整个过程宿主进程就是本身执行powershell这个进程,就变成了宿主进程自己加载自己。。。。。。)
PID Get-WmiObject -Class win32_service -Filter "name = 'eventlog'" #kill掉对应PID taskkill /F /PID 1792...获取最近十条日志 wevtutil.exe qe Security /f:text /rd:true /c:10 日志导出过滤 wevtutil.exe epl Security 1.evtx 过滤分两种: 按日志号过滤...3、释放日志文件句柄 4、替换日志文件 5、重启日志服务 运行完成后把删除处理后的日志重新导入安全日志,但会留下7034的系统日志 EventLogMaster 这是一款用于日志清除的Cobalt...Phant0m以事件日志服务为目标,找到负责事件日志服务的进程,它会检测并终止负责事件日志服务的线程。...项目地址:https://github.com/hlldz/Phant0m 可以通过编译后的exe程序或者项目的cs插件运行 或通过Powershell分别执行以下三条命令 1、powershell
Sodinokibi作为一个子进程运行PowerShell,命令行参数为base64编码,解码为: Get-WmiObject Win32_Shadowcopy| ForEach-Object { $...PowerShell cmdlets 也支持别名。有些是内置的,比如Get-WmiObject的gwmi,或者Get-CimInstance的gcim。...与其使用已知的主机进程作为PowerShell核心,不如使用.NET框架从自己的进程中执行PowerShell脚本。比如UnmanagedPowerShell和SharpPick。...一些默认的系统二进制文件具有意想不到的副作用,这可能会让攻击者在利用后隐藏其活动。 2....5.打开备份卷的句柄(即C:,影子副本属性中的 “原始卷”)。
此外,执行 explorer.exe 也通过标准令牌来显示桌面,而 explorer.exe 是父进程,所有其他用户启动的进程都从中继承其访问令牌。...我们以 Rpcss 服务为目标,因为它也作为网络服务运行并且具有很多高权限的令牌句柄,最重要的是,Rpcss 是第一个以 Network Service 运行的进程。如图20,图21所示。...图20 查询Rpcss服务的Pid 图21 Rpcss服务相关句柄 在开始验证之前,我们需要先取得一个 Network Service 的 PowerShell 环境。...Import-Module C:\NtObjectManager $sess = Get-NtToken -Session $token = Get-NtToken -Service NetworkService...图27 查询令牌组列表 0x04 数据报式身份验证的令牌 参考资料 我们可以通过代码来模拟一个数据报式身份验证的过程,然后观察其过程生成的相关令牌。
命名管道的所有实例拥有相同的名称,但是每个实例都有其自己的缓冲区和句柄,用来为不同客户端提供独立的管道。...V3 及以上版本的 powershell 还可以使用: Get-ChildItem \.\pipe\ ? b、chrome 使用 chrome 查看管道列表,只需在地址栏输入file://....函数成功返回后,服务器进程得到一个指向一个命名管道实例的句柄。...(三)在已经建立了连接的命名管道实例中,服务端进程就会得到一个指向该管道实例的句柄,这个句柄称之为服务端句柄。...,客户进程就得到了一个指向已经建立连接的命名管道实例的句柄,到这里,服务器进程的 ConnectNamedPipe 也就完成了其建立连接的任务。
/powershell/module/Microsoft.PowerShell.Core/Get-History?...view=powershell-3.0 默认Powershell v2及以上支持能够记录当前会话中输入的命令,多个PowerShell的进程之间不共享,Powershell的进程退出后自动清除所有记录。...删除所有历史记录: Clear-History 按ID号删除命令: Clear-History -Id 3 2.利用思路 获得了一台视窗系统的权限,发现后台有PowerShell的进程,想要读取PowerShell...(1)Powershell的进程无法接收键盘输入命令例如PowerShell的加载了一个在后台运行的脚本:Powershell -ep bypass -f 1.ps1 此时无法向Powershell的进程发送键盘消息...PID的进程,向进程发送键盘消息,内容为:Get-History|export-csv $env:temp”\history.csv” 3.补充:查看cmd.exe的历史记录 命令如下: doskey
方法一:使用任务管理器限制CPU使用率步骤:打开任务管理器:按下Ctrl + Shift + Esc组合键。找到目标程序:在“进程”选项卡中找到占用资源过多的程序。...选择较低的优先级(如“低于标准”或“低”)以减少其对系统资源的影响。...方法二:使用PowerShell限制CPU使用率步骤:打开PowerShell(管理员权限):按下Win + X键,选择“Windows PowerShell(管理员)”。...获取目标进程的ID:输入以下命令并按回车:Get-Process | Sort-Object CPU -Descending记录下目标进程的ID(PID)。...方法五:使用组策略限制资源使用(适用于Windows专业版及以上)步骤:打开“本地组策略编辑器”:按下Win + R键,输入gpedit.msc ,然后按回车。
动态链接库(DLL)的方式以及Windows API指示使用它们的方式都可以用作任意代码执行的接口,并协助恶意行为者实现其目标。 动态链接库是Microsoft实施共享库的产品。...使用Windows操作系统时,进程加载算法的关键步骤包括将动态链接库(DLL)加载到内存中,以利用其功能并满足其进程与DLL之间的依赖关系。每当启动进程时,都会发生此操作。...这些函数接收一个路径参数,该参数导致所请求的DLL,并向调用过程返回模块的句柄。...攻击利用过程 当我们确定某个进程按某个搜索顺序搜索DLL,并且缺少DLL 或者错误实现的DLL的进程之后,才能够进行下一步攻击 第一步:确定DLL 首先,我们从Sysinternals设置ProcMon...通过使用PowerShell和DLL代码中包含的NetCat的反向Shell 并尝试与kali上的侦听器联系,然后使用PowerShell打开shell 我们可以看到执行劫持的进程后,将加载DLL并打开
PowerShell v3采用新的cmdlet让管理员能够更深入到系统进程中,这些进程可以制作成可执行的文件或脚本(script)。...Cmdlet包括显示当前目录的Get-Location,访问文件内容的Get-Content和结束运行进程的Stop-Process。...Powershell版本特性 PowerShell V2 PowerShell V2提供事件记录能力,可以协助蓝队进行相关的攻击事件推断和关联性分析,但是其日志记录单一,相关Post-Exploitation...按Win+R打开Windows运行窗口,在输入框里输入gepdit.msc,打开Windows本地组策略编辑器; 2....模拟执行Get-process获取系统进程信息,然后观察Powershell日志能否记录此次测试行为。
命名管道的所有实例拥有相同的名称,但是每个实例都有其自己的缓冲区和句柄,用来为不同客户端提供独立的管道。...powershell 使用 powershell 列出管道列表需要区分版本,V3 以下版本的 powershell 只能使用: [System.IO.Directory]::GetFiles("\\....V3 及以上版本的 powershell 还可以使用: Get-ChildItem \\.\pipe\ ?...函数成功返回后,服务器进程得到一个指向一个命名管道实例的句柄。...(三)在已经建立了连接的命名管道实例中,服务端进程就会得到一个指向该管道实例的句柄,这个句柄称之为服务端句柄。
方式一,SCOM(或Zabbix或其他监控套件): SCOM是微软System Center 套件中的一个重要大员,笔者从11年研究到16年,也是至今未找到能够与这个解决方案比拟的代替方案,其架构的完整度...p=379 方式二,PowerShell: PowerShell是一个比较灵活且在Windows Server平台上兼容性较高的方式,不过要求一定的读写脚本能力,我这里抛砖引玉下: 进程CPU占用情况...: Get-Process | select * 要实现追溯的目的,那就必须长期驻留跑着,此时需要考虑下如何持续保留: 1、可以采用export-csv来将进程记录到csv中; 2、避免csv被打爆也可以用文件总数或者时间来判断是否是进行清理...1 重新启动计算机使其生效后,在系统异常时,按住 Ctrl 键,同时按 Scroll Lock 键两次即可触发,不过腾讯云目前还没有在控制台实现键位重定向功能,所以此方式需要提单给后台工程师协助触发。...综合对比来说 方式 轻量 效果(可视化程度) SCOM/Zabbix ⭐⭐ ⭐⭐⭐⭐⭐ PowerShell ⭐⭐⭐⭐ ⭐⭐⭐ DMP ⭐ ⭐⭐ So,建议采用PowerShell在特定的排障场景中制定适合具体
#查看排除项 Get-MpPreference | select ExclusionPath #关闭Windows defender Set-MpPreference -DisableRealTimeMonitoring...成功上线 powershell #查看排除项 Get-MpPreference | select ExclusionPath #关闭Windows defender Set-MpPreference...MsMpEng.exe,MsMpEng.exe是一个受保护的进程(Protected Process Light,简写为PPL) 非 PPL 进程无法获取 PPL 进程的句柄,导致我们无法直接结束 PPL...进程 MsMpEng.exe, 但是我们能够以 SYSTEM 权限运行的线程修改进程 MsMpEng.exe 的 token, 当我们移除进程 MsMpEng.exe 的所有 token 后,进程 MsMpEng.exe...无法访问其他进程的资源,也就无法检测其他进程是否有害,最终导致 Windows Defender 失效。
测试环境: 工具环境: 测试过程: 首先我们要知道AMSI是一个什么东西,之前做过相关的分享,这里就不再去啰嗦其概念了,一句话概括,win10自带的一个扫描接口,其核心组件存在于amsi.dll内,...frida-trace -p 15 -x amsi.dll -i Amsi* 使用-p指定进程powershell的Pid,-x指定dll,-i使用*通配符来指定我们需要监控的API。...下面我们打开windbg并也附加到powershell进程之中: 在powershell中输入字符串,测试: 所指的地方是其内存地址,我们使用windbg进行追踪: dc:双字值(4字节)和ASCII...我们不知道其大小,但可以看到AMSI的ASCII字符,为了知道其调用方式,我们需要unassemble,AMSI模块的AmsiOpenSession功能 我们可以看到我圈起来的地方有明显的内存比较的过程...,其为一个返回值为句柄的函数: HRESULT AmsiOpenSession( HAMSICONTEXT amsiContext, HAMSISESSION *amsiSession ); 而
在PowerShell中我们也可以通过各种Get-XXX命令获得各种各样需要的数据,但是并不是所有操作系统和各个版本的PowerShell都支持某个命令的。...比如我们将当前的所有进程信息导出为CSV文件,命令为: Get-Process | Export-Csv C:\test.csv -Encoding Unicode (注意,如果是有中文内容建议设置Encoding...比如我们按Handles排序,只查看头10条进程记录的名字和Handles。...比如VM列记录的是以Byte为单位的数据,我们先新建一列名为”VM(MB)”,其值是换算成MB的结果,那么我们可以写为: $data | select Name,VM,@{n="VM(MB)";e={$...在PowerShell中也有对应的命令Group-Object。如果我们想要按进程的Name进行分组,查看每个进程名对应的VM总大小。
在AllCase_10007F19()里面就是beacon得全部命令功能,我们按反编译循环中的case号从低向高写,case号与发送数据包的任务号是大同小异的。...steal_token case31,从目标进程中窃取访问令牌 先打开进程,获取指定进程的句柄令牌,再用ImpersonateLoggedOnUser模拟一个登陆用户的访问令牌的安全上下文,最后用DuplicateTokenEx...Kill case33,结束指定进程 调用TerminateProcess()结束指定进程: ?...powershell-import case37,导入Powershell脚本 导入相关的ps脚本(如nishang)以便后续调用 ? ?...4 小结 在这里我们分析beacon的约前50项功能,一探其相关功能的实现,为日后重写beacon有所帮助,下次我们继续分析后50项功能。最后谢谢大家观看。 ?
领取专属 10元无门槛券
手把手带您无忧上云