典型的exploitkit流程:
- 入口点:网站被挂马,被插入恶意js代码
- 分发:重定向到外部网站,可能是个虚假的登陆页面
- 利用:获取客户端的指纹,版本,插件等,探测可利用的漏洞,利用已武器化的工具攻击
- 感染:木马在客户机上下载更多的病毒,建立持久化访问,RAT 勒索软件等
- 执行:病毒执行
如何分析js代码:
- 使用debug设置断点,截获对象
- 模拟真实环境 浏览器环境
- 通常恶意js代码有很多垃圾变量名函数名,观察代码 搜索并替代这些命名
- 使用代码美化器 cyberchef等
- 下断点 step in 跟随代码执行
- 找到反混淆的切入点
- 解释程序
需要下断点关注的几个函数:
- eval()
- document.write()
- document.writeln()
- document.appendChild()
需要关注的事件对象:
- onload()
- onUnload()
- onSubmit()
- etc
用于混淆的函数:
- fromCode(),chr(),ord()
- base64
- string split
- unescape
- etc