几年前,敲诈者木马还是一个默默无闻的木马种类。然而,由于其极强的破坏力和直接且丰厚的财富回报,敲诈者木马这几年已经一跃成为曝光率最高的木马类型——甚至超越了盗号木马、远控木马、网购木马这传统三强。与此同时,各种敲诈者木马也在不断推陈出新,变着花样地出现在分析人员的视野中。

私信小编007即可自动获取大量Python视频教程,还有各类PDF!

去年,360安全团队就发现了一款使用PHP语言编写的敲诈者木马(具体内容参考《用世界上最好的编程语言写成的敲诈者木马》)。最近,一款使用Python语言编写的敲诈者木马又被发现。面对花样百出的攻击,360的安全分析人员不禁感叹——竟然还有这种操作?

永远的“我的化学浪漫”

7月27日,360的反勒索申诉平台接到了两例反馈,两案例均为26日中毒,而且文件扩展名均被修改为“MyChemicalRomance4EVER”。两位受害人本可逃过一劫,可惜却都是中毒之后才想起安装360安全卫士来加强系统安全防护的。

上述扩展名中的“My Chemical Romance”这个名称,其实是源自一支美国新泽西州的同名朋克乐队。该乐队成立于2002年,十一年后的2013年宣告解散。朋克这种充满了叛逆与不羁的音乐风格向来深受年轻人的喜爱,所以该木马的作者想来应该也是一个充满着叛逆性格的年轻人吧?

病毒名字起的很“朋克”,但传播方式却颇为老套,无非就是伪装成一些对广大网民比较有吸引力的软件对外发布,诱导大家下载并执行。

比如我们拿来分析的这个样本,就自称是一款叫做“VortexVPN”的VPN软件。除此之外,还有类似于“PornDownload”、“ChaosSet”、“PanDownloader”、“BitSearch”等等,基本都是广大网友都懂得的各种工具软件。

通过进一步追溯,发现该木马传播早期,可能是来自于一个名为ZeroNet的匿名网络,该网络是一个去中心化的加密网络,显然作者是对隐藏自身信息也是做了比较周密的安排。

木马分析惊现Python语言

言归正传,我们来看下木马本身。和常见勒索木马一样,会加密中毒电脑中的所有常见文档文件,并留下敲诈信息

而很是与众不同的是,在分析的时候,我们发现这款木马竟然是用Python语言编写了木马脚本,然后再打包成一个exe的可执行程序的。

于是我们尝试使用现有工具对该exe进行反编译,结果喜人——工具成功的对木马程序进行了反编译,其中除了一些Python环境所依赖的库文件之外,核心部分就是一个名为“wub_crypted”的pyc文件。

之后,我们将pyc脚本恢复为py脚本文件,发现脚本本身的内容也是加密过的。再经过两次的Base64解码和一次AES解密,最终我们拿到了木马核心功能脚本的内容。

脚本代码分析

有了明文脚本,功能就显而易见了。

首先,木马会判断自身进程名是否为systern.exe。如果不是,则将自身复制为C:UsersPublicsystern.exe 并执行。

之后,木马释放s.bat批处理脚本,关闭各种数据库和web 服务及进程。

接下来,就是遍历所有系统中所有文件并加密且留下勒索信息了。当然,为了避开敏感的系统文件,代码有意避开了“C:Documents and Settings”和“C:Windows”两个目录。

最终木马会调用系统的wevtutil命令,对系统日志中的“系统”、“安全”和“应用程序”三部分日志内容进行清理,并删除自身,以求不留痕迹。

该木马的亮点是,在加密的文件类型列表中,除了大量的文档类型外,还包括有比特币钱包文件和一些较重要的数据库文件。

而另一个更大的亮点则是——该木马不同于以往的敲诈者木马使用不对称加密算法,而是采用了AES对称加密算法,并且用于加/解密的密钥则是硬编码在脚本中的:“MyChemicalRomance4EVER_tkfy_lMCR”。

用Python脚本写了个敲诈者木马,再打包成 exe程序,再费尽周章用匿名网络发不出去,最终因为使用对称加密算法被分分钟破解……惊不惊喜?意不意外?

老生常谈的一些话

1.不要从不明来源下载程序。

2.安装杀毒软件并开启监控。

3.不要相信所谓外挂、XX工具、XX 下载器一类的程序宣称的杀软误报论。

这些真的已经算是老生常谈了。不过大家放心,这类木马虽然有些新意,但本质上还是老套的敲诈者木马,360 对此类木马可实现无压力拦截。

木马分析出现python语言,360的安全人员不禁感叹还有这种操作?的更多相关文章

  1. 预测分析建模 Python与R语言实现

    预测分析建模 Python与R语言实现 目录 前言 第1章 分析与数据科学1第2章 广告与促销10第3章 偏好与选择24第4章 购物篮分析31第5章 经济数据分析42第6章 运营管理56第7章 文本分 ...

  2. 【学习笔记】PYTHON语言程序设计(北理工 嵩天)

    1 Python基本语法元素 1.1 程序设计基本方法 计算机发展历史上最重要的预测法则     摩尔定律:单位面积集成电路上可容纳晶体管数量约2年翻倍 cpu/gpu.内存.硬盘.电子产品价格等都遵 ...

  3. Python语言初学总结

    课程名称:程序设计方法学 实验1:程序设计语言工具 时间:2015年10月21日星期三,第3.4节 地点:理工楼1#208 一.实验目的 1.深入理解程序设计语言及其几种常见的编程范型: 2.激发学生 ...

  4. Python语言在企业级应用上的十大谬误

    英文原文:https://www.paypal-engineering.com/2014/12/10/10-myths-of-enterprise-python/ 翻译原文:http://www.os ...

  5. 动态语言的灵活性是把双刃剑 -- 以Python语言为例

    本文有些零碎,总题来说,包括两个问题:(1)可变对象(最常见的是list dict)被意外修改的问题,(2)对参数(parameter)的检查问题.这两个问题,本质都是因为动态语言(动态类型语言)的特 ...

  6. 机器学习之支持向量机(四):支持向量机的Python语言实现

    注:关于支持向量机系列文章是借鉴大神的神作,加以自己的理解写成的:若对原作者有损请告知,我会及时处理.转载请标明来源. 序: 我在支持向量机系列中主要讲支持向量机的公式推导,第一部分讲到推出拉格朗日对 ...

  7. mooc-python语言语法week3-6

    week3 1.类型的概念:程序编程不允许有歧义的数据类型存在,所以对数据进行了划分,python语言类型分为,数字类型.字符串类型.元组类型.列表类型.文件类型.字典类型. i:数字类型: pyth ...

  8. SM3杂凑算法Python语言实现——第三部分

    SM3杂凑算法实现--第三部分 一.SM3 密码概述        我们首先把需要用到的算法呈现出来,最后我们再考虑如何集合为一个库的方法,这一部分我们就开始编写一个新的算法:国家商用密码标准SM3密 ...

  9. 全国计算机等级考试二级Python语言程序设计考试大纲

    全国计算机等级考试二级Python语言程序设计考试大纲(2018年版) 基本要求 掌握Python语言的基本语法规则. 掌握不少于2个基本的Python标准库. 掌握不少于2个Python第三方库,掌 ...

随机推荐

  1. wk_10.md

    Python检测和处理异常 try-except语句 try-except语句定义了进行异常监控的一段代码,并且提供了异常处理的机制,下面是使用的语法: try: # 可能抛出异常的语句,会一直执行, ...

  2. Linux - 常用归档、压缩命令

    1. ncompress compress命令是一个相当古老的 unix 档案压缩指令,压缩后的文件会加上一个 .Z 的后缀名,默认不会保留源文件.compress只能对文件进行压缩,若要压缩目录,先 ...

  3. Day8 Servlet

    HttpServletRequest 说明 公共接口类HttpServletRequest继承自ServletRequest.客户端浏览器发出的请求被封装成为一个HttpServletRequest对 ...

  4. python基础整理2——Linux

    Linux 目录 /:根目录,一般根目录下只存放目录 /bin./usr/bin: 可执行二进制文件的目录,如常用的命令ls.tar.mv.cat等 /boot:放置linux系统启动时用到的一些文件 ...

  5. Python自动化之迭代器不能在迭代的时候更改值

    除列表外的其他序列都是不可变的, 所以危险就发生在这里. 一个序列的迭代器只是记录你当前到达第多少个元素, 所以如果你在迭代时改变了元素, 更新会立即反映到你所迭代的条目上.在迭代字典的 key 时, ...

  6. js 操作字典

    有时候我们进行ajax请求的时候,列表并不满足我们需求,有时候需要 key :value形式. 如果还按照python的定义: var data={}; data[tag_id][tag_ch_id] ...

  7. dategate的用法

    菜鸟教程上的说法是这样: delegate() 方法为指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数. 使用 delegate() 方法的事件处理程序适 ...

  8. GoldData学习实例-采集官网新闻数据

    概述 在本节中,我们将讲述抓取政府官网地方新闻.并将抓取的新闻数据融入到以下两张数据表news_site和news中. news_site(新闻来源) 字段 类型 说明 id bigint 主键,自动 ...

  9. lua协程实现

    协程是个很好的东西,它能做的事情与线程相似,区别在于:协程是使用者可控的,有API给使用者来暂停和继续执行,而线程由操作系统内核控制:另外,协程也更加轻量级.这样,在遇到某些可能阻塞的操作时,可以使用 ...

  10. 小白日记53:kali渗透测试之Web渗透-SSL、TLS中间人攻击(SSLsplit,Mitmproxy,SSLstrip),拒绝服务攻击

    SSL.TLS中间人攻击 SSL中间人攻击 攻击者位于客户端和服务器通信链路中 利用方法: ARP地址欺骗 修改DHCP服务器 (存在就近原则) 手动修改网关 修改DNS设置 修改HOSTS文件[高于 ...