木马分析出现python语言,360的安全人员不禁感叹还有这种操作?
几年前,敲诈者木马还是一个默默无闻的木马种类。然而,由于其极强的破坏力和直接且丰厚的财富回报,敲诈者木马这几年已经一跃成为曝光率最高的木马类型——甚至超越了盗号木马、远控木马、网购木马这传统三强。与此同时,各种敲诈者木马也在不断推陈出新,变着花样地出现在分析人员的视野中。
私信小编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的安全人员不禁感叹还有这种操作?的更多相关文章
- 预测分析建模 Python与R语言实现
预测分析建模 Python与R语言实现 目录 前言 第1章 分析与数据科学1第2章 广告与促销10第3章 偏好与选择24第4章 购物篮分析31第5章 经济数据分析42第6章 运营管理56第7章 文本分 ...
- 【学习笔记】PYTHON语言程序设计(北理工 嵩天)
1 Python基本语法元素 1.1 程序设计基本方法 计算机发展历史上最重要的预测法则 摩尔定律:单位面积集成电路上可容纳晶体管数量约2年翻倍 cpu/gpu.内存.硬盘.电子产品价格等都遵 ...
- Python语言初学总结
课程名称:程序设计方法学 实验1:程序设计语言工具 时间:2015年10月21日星期三,第3.4节 地点:理工楼1#208 一.实验目的 1.深入理解程序设计语言及其几种常见的编程范型: 2.激发学生 ...
- Python语言在企业级应用上的十大谬误
英文原文:https://www.paypal-engineering.com/2014/12/10/10-myths-of-enterprise-python/ 翻译原文:http://www.os ...
- 动态语言的灵活性是把双刃剑 -- 以Python语言为例
本文有些零碎,总题来说,包括两个问题:(1)可变对象(最常见的是list dict)被意外修改的问题,(2)对参数(parameter)的检查问题.这两个问题,本质都是因为动态语言(动态类型语言)的特 ...
- 机器学习之支持向量机(四):支持向量机的Python语言实现
注:关于支持向量机系列文章是借鉴大神的神作,加以自己的理解写成的:若对原作者有损请告知,我会及时处理.转载请标明来源. 序: 我在支持向量机系列中主要讲支持向量机的公式推导,第一部分讲到推出拉格朗日对 ...
- mooc-python语言语法week3-6
week3 1.类型的概念:程序编程不允许有歧义的数据类型存在,所以对数据进行了划分,python语言类型分为,数字类型.字符串类型.元组类型.列表类型.文件类型.字典类型. i:数字类型: pyth ...
- SM3杂凑算法Python语言实现——第三部分
SM3杂凑算法实现--第三部分 一.SM3 密码概述 我们首先把需要用到的算法呈现出来,最后我们再考虑如何集合为一个库的方法,这一部分我们就开始编写一个新的算法:国家商用密码标准SM3密 ...
- 全国计算机等级考试二级Python语言程序设计考试大纲
全国计算机等级考试二级Python语言程序设计考试大纲(2018年版) 基本要求 掌握Python语言的基本语法规则. 掌握不少于2个基本的Python标准库. 掌握不少于2个Python第三方库,掌 ...
随机推荐
- BZOJ4259:残缺的字符串(FFT)
Description 很久很久以前,在你刚刚学习字符串匹配的时候,有两个仅包含小写字母的字符串A和B,其中A串长度为m,B串长度为n.可当你现在再次碰到这两个串时,这两个串已经老化了,每个串都有不同 ...
- virtualbox+vagrant学习-2(command cli)-22-vagrant validate命令
Validate 格式: vagrant validate [options] 该命令用于验证你的Vagrantfile文件 userdeMacBook-Pro:~ user$ vagrant val ...
- Kafka设计解析(十八)Kafka与Flink集成
转载自 huxihx,原文链接 Kafka与Flink集成 Apache Flink是新一代的分布式流式数据处理框架,它统一的处理引擎既可以处理批数据(batch data)也可以处理流式数据(str ...
- 《You dont know JS》原生函数
原生函数 原生函数,即JavaScript的内建函数(built-in function).常用的原生函数有String().Number().Boolean().Array().Object().F ...
- python通过cx_oracle操作数据库过程简单记录
1.环境配置 环境配置过程中,需要关注软件版本是否一致,主要包括:oracle客户端版本.cx_oracle版本.python版本: 2.操作记录 (1)验证环境是否正常:(无报错即为正常) impo ...
- UITableViewCell的父视图
最近版本测试阶段,发现一个奇怪的问题,以前在A测试机上出现的崩溃bug,解决后今天在B测试机上又出现了,在B上解决完之后,返回到设备A上发现又不行了.最后调试发现是测试设备系统版本不同导致的,A设备是 ...
- C++ 容器类型成员
类型别名 iterator 此容器类型的迭代类型 const_iterator 可以读取元素,但不能修改元素的迭代器类型 size_type 无符号整数类型,足够保存此种容器类型最大可能容器的大小 ...
- 在windows上安装不同(两个)版本的Mysql数据库
1.起因: 需要导入一个sql文件,发现死活导不进去.当执行到这一句时,就有问题.经过一番搜索,原来是我的数据库版本(原先Mysql版本5.5)低了,而支持该语句的版本应该是至少要5.7.那我索性就去 ...
- HDFS命令实现分析
HDFS命令概述 HDFS命令涉及两类,一类是hadoop命令,一类是hdfs命令,功能也分为两类,第一类是HDFS文件操作命令,第二类是HDFS管理命令. 二者都是shell命令,真正的命令只有ha ...
- 尝试用docker上的jenkins
比起dockerfile的编写,我更习惯使用简单的docker-compose.yml.但是官方的docker-compose.yml并不是独立的.于是经过一番研究,暂时打造了自己的文件: docke ...