zoukankan      html  css  js  c++  java
  • 调试脚本病毒

    1、背景

    截获病毒样本时遇到各类脚本病毒样本。

    2、调试.wsf脚本

    .wsf格式文件是windows脚本文件(Windows Script File)的简称,一个wsf文件中不仅可以同时包含js和vbs脚本,而且可以包含Perl、Object REXX、python、 Kixtart等脚本。这类脚本右键打开则可看见加密后的代码,用Visual Studio可对该类脚本调试。通过VS自带的监视变量功能即可看到病毒期间都在执行了什么操作。

    调试.wsf前需要将注册表项进行设置

    第一步:将以下注册表路径JITDebug的键值设为1

    HKEY_CURRENT_USERSoftwareMicrosoftWindows ScriptSettingsJITDebug
    

    第二步:用以下方式执行.wsf脚本,加 /x 参数会弹出使用vs调试的窗口

    wscript.exe /x myScript.wsf
    

    运行以上病例后会抛出一个即时异常,脚本开始运行后自动启动VS调试器。

    图1

    图2 F10,F11调试

    3、调试js脚本

    有两种方式,一种是借助VS直接调试,一种是借助浏览器调试。

    借助Visual Studio调试

    用Visual Studio调试js与.wsf方法差不多,运行

    wscript.exe /x myScript.js
    

    借助浏览器调试

    打开控制台把eval函数替换成alert()或console.log()。

    chrome 单步调试JS也可,开启 debugger ,代码在第三行前停止执行。。

    4、调试office脚本

    alt+shift11,调出脚本窗口,在调试的代码处下断点。通过观察变量变化得到C&C域名或是行为。

    5、调试HTA

    在分析office cve-2017-0199漏洞类样本的时候,会访问一个hta。通过抓包可以看到域名连接,想要看vbs的变形就使用以下工具:

    6、查看SWF

    • 闪客精灵
    • as3
    • JPEXS Free Flash Decompiler

    7、关注重点

    脚本类的样本主要关注3点:判断下载的样本是否可用,样本是否可以联网,联网是否存活。

    9、OD调试

    新建【wscript.exe xxx.js】的快捷方式,拖进OD。然后查看是否有网络模块【WS32_32.dll】被加载。如果有就断点加载的位置,在模块里的联网函数下断点。

    快捷方式运行 wscript.exe XXX.js 
    E查看模块,找kernel32.dll createfile,ws2_32.dll getaddrinfo
    M查看内存状态
    L查看日志
    

    8、参考文章

    《How to Debug Visual Basic Script with Visual Studio - CodeProject》
    https://www.codeproject.com/Tips/864659/How-to-Debug-Visual-Basic-Script-with-Visual-Studi
    《How to debug Windows Script Host, VBScript, and JScript files》
    https://support.microsoft.com/en-us/help/308364/how-to-debug-windows-script-host,-vbscript,-and-jscript-files
    Wscript
    https://technet.microsoft.com/en-us/library/hh875526.aspx

  • 相关阅读:
    oracle数据库闪回执行步骤——oracle数据库回退
    10.20总结
    10.11总结
    10.10总结
    10.9总结
    10.8总结
    10.7总结
    10.6总结
    10.5总结
    10.4总结
  • 原文地址:https://www.cnblogs.com/17bdw/p/7193851.html
Copyright © 2011-2022 走看看