并放行防火墙)
Flipper Zero BadUSB 实战ActivateRDP 脚本一键开启 Windows 远程桌面RDP并放行防火墙【免费下载链接】FlipperPlayground (and dump) of stuff I make or modify for the Flipper Zero项目地址: https://gitcode.com/GitHub_Trending/fl/Flipper导读ActivateRDP是 UNC0V3R3D-BadUSB-Collection 中 Windows BadUSB 脚本集的一个执行类Execution载荷它把 Flipper Zero 模拟成键盘在目标 Windows 主机上自动完成启用远程桌面连接 开启 RDP 认证 放行防火墙入站规则三项配置。读完本文你将理解该脚本每一行 DuckyScript 与 PowerShell 命令的作用、RDP 相关注册表键与防火墙规则的技术含义并掌握如何安全地部署、测试和复现这套载荷。脚本概览一个即插即用的 RDP 开启器按脚本自带的 readme.md 说明这个脚本的核心用途是允许远程连接将目标系统切换为允许 Remote Desktop 会话进入启用 RDP 认证要求远程客户端通过身份验证NLA网络级认证后才建立连接允许传入的远程连接打开 Windows 防火墙中与远程桌面相关的入站规则确保3389端口流量不会被拦截。使用方式也非常简单将 Flipper Zero 通过 USB 插入目标电脑在 BadUSB 菜单中运行脚本即可整个过程无需人工干预。脚本作者在集合 README.md 中明确强调所有脚本仅用于教育目的运行前必须获得对方授权并建议在虚拟机中先行测试。DuckyScript 载荷逐行解析完整的载荷位于 ActivateRDP.txt全文如下REM Author: UNC0V3R3D (UNC0V3R3D#8662 on Discord) REM Description: Activates Remote Desktop. REM Version: 1.0 REM Category: Execution DELAY 750 WINDOWS d DELAY 1500 WINDOWS r DELAY 1500 STRING powershell Start-Process powershell -Verb runAs ENTER DELAY 750 LEFTARROW ENTER DELAY 1200 ALT y DELAY 1200 GUI UP DELAY 1200 STRING Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server -Name fDenyTSConnections -Value 0;Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp -Name UserAuthentication -Value 1;netsh advfirewall firewall set rule groupremote desktop - remotefx new enableYes;netsh advfirewall firewall set rule groupremote desktop new enableYes; exit ENTER这段脚本可以拆成四个阶段来理解。阶段一唤醒屏幕并打开运行对话框DELAY 750 WINDOWS d DELAY 1500 WINDOWS r DELAY 1500WINDOWS d发送Win D最小化所有窗口、显示桌面避免后续按键被前台窗口吃掉WINDOWS r发送Win R呼出运行对话框为输入 PowerShell 命令做准备每步之间用DELAY预留 750~1500 毫秒等待系统响应。这类时间参数是 DuckyScript 最常见的调优点——如果机器较慢导致按键丢失可像集合 README 的 Troubleshooting 部分建议的那样适当增大DELAY数值。阶段二以管理员身份启动 PowerShellSTRING powershell Start-Process powershell -Verb runAs ENTER DELAY 750 LEFTARROW ENTER DELAY 1200 ALT y DELAY 1200在运行框中输入powershell Start-Process powershell -Verb runAs并回车这会通过Start-Process以**管理员权限runAs**拉起一个新的 PowerShell 进程UAC 弹出后LEFTARROWENTER用于选中是Yes按钮ALT y则是兼容旧版本 Windows 的备选确认方式之后所有注册表与防火墙操作都必须在管理员上下文里执行因此这段提权流程是整个载荷能成功的前提。阶段三通过注册表启用远程桌面GUI UP DELAY 1200 STRING Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server -Name fDenyTSConnections -Value 0;...GUI UP是作者特别加入的一步先按Win Up恢复窗口/刷新焦点确保随后的长命令键入到正确的 PowerShell 窗口。核心命令分两条允许远程桌面连接Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server -Name fDenyTSConnections -Value 0fDenyTSConnections是 Windows 远程桌面Terminal Server的总开关注册表值DWORD。值为1表示拒绝远程桌面连接设为0即允许。这等价于在系统属性 → 远程中勾选允许远程连接到此计算机只是改成了命令行方式。启用 RDP 认证NLASet-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp -Name UserAuthentication -Value 1RDP-Tcp是默认的 RDP 监听会话WinStation配置项UserAuthentication同样是一个 DWORD 开关。设为1表示要求使用网络级身份验证NLA即CredSSP客户端必须先完成身份认证才能建立远程会话从而避免仅凭网络层信息就开放桌面安全性高于0。阶段四放行防火墙入站规则STRING ...;netsh advfirewall firewall set rule groupremote desktop - remotefx new enableYes;netsh advfirewall firewall set rule groupremote desktop new enableYes; exit ENTER脚本用两条netsh命令把 Windows 防火墙中与远程桌面相关的规则组全部置为启用remote desktop - remotefx对应 RemoteFXRemoteFX USB 重定向 / 增强体验相关规则组remote desktop对应常规远程桌面入站规则组TCP 3389 等。命令末尾的; exit会在全部配置执行完毕后关闭管理员 PowerShell 窗口不留痕迹地收尾。此时目标主机已开放 3389 端口其他主机即可通过远程桌面客户端连接。底层原理为什么这些注册表键和防火墙规则缺一不可从 Windows 的远程桌面实现来看一个可被外部访问的 RDP 服务需要同时满足三层条件层面位置 / 命令关键项本脚本的设置服务开关HKLM:\SYSTEM\CurrentControlSet\Control\Terminal ServerfDenyTSConnections0允许连接认证策略HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-TcpUserAuthentication1要求 NLA 认证网络放行netsh advfirewall firewall set rule group...remote desktop规则组enableYes若只改注册表而忽略防火墙外网/局域网客户端的数据包会被 Windows Defender 防火墙拦截连接必然超时若只开防火墙而不改注册表服务端根本不会监听 RDP。脚本把三步一次性做完这正是它即插即用的可靠性来源。值得对照的是同集合中的另外两个脚本它们与ActivateRDP是同一套注册表 netsh模式下的不同变体OpenAnyPort.txt用netsh advfirewall firewall add rule name... dirin actionallow protocolTCP or UDP localport端口在防火墙上开放任意自定义端口可作为 RDP 之外的远程通道如反向 Shell 端口DisableFirewall.txt用netsh advfirewall set allprofiles state off直接关闭全部防火墙配置文件的拦截。可以看到三者在 UAC 提权、延迟节奏、PowerShell 内联命令的写法上高度一致属于同一作者在集合 README.md 中所述的PowerShell 驱动 DuckyScript通用模式。区别在于ActivateRDP走的是精开端口 保留认证的更克制路线而DisableFirewall则是一刀切关闭防御的高风险做法。部署与运行前提根据集合 README 的安装指引将载荷放到 Flipper Zero 上的步骤是克隆或下载本仓库取得ActivateRDP目录下的 ActivateRDP.txt通过 qFlipperPC 端或 Flipper Zero 手机 App蓝牙连接设备进入SD Card → badusb目录把.txt文件拖入其中在 Flipper 的 BadUSB 菜单中找到该脚本插入目标电脑后按中间键启动。运行前提与限制需要注意几点以当前仓库内容为准系统兼容性脚本使用的WINDOWS、GUI、ALT组合键和 UAC 交互面向 Windows 桌面版UAC 必须处于开启状态且当前用户拥有管理员权限否则runAs提权或ALT y确认可能无法命中正确按钮交互时序敏感DELAY是基于普通机器响应速度设计的系统缓慢、中文/非美式键盘布局等都会影响键入必要时需自行增大延迟安全边界该载荷会持久化修改目标主机的系统配置并开放网络端口属于高风险操作务必只在已授权的测试环境或虚拟机中执行切勿在未获许可的机器上运行。结语从一行脚本理解 Windows RDP 的配置链路ActivateRDP的价值不仅在于一键开 RDP更在于它以 21 行 DuckyScript 完整演示了 Windows 远程桌面从注册表开关、认证策略到防火墙放行的完整配置链路。配合本仓库中 readme.md、OpenAnyPort.txt 与 DisableFirewall.txt 等文件对比学习可以快速掌握 BadUSB 攻击面中系统配置篡改类载荷的通用套路也能反向理解运维人员应如何加固远程桌面服务关闭fDenyTSConnections开关、强制 NLA、按需收敛防火墙规则。【免费下载链接】FlipperPlayground (and dump) of stuff I make or modify for the Flipper Zero项目地址: https://gitcode.com/GitHub_Trending/fl/Flipper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考