对程序实施精准手术!阿里安全猎户座实验室首创“自动逆向机器人”

近日举办的看雪安全开发者峰会上,阿里安全猎户座实验室首度向外界展示了最新的研究成果——“自动逆向机器人”。该机器人可以像医生一样“望闻问切”,对程序进行显微镜级别的勘察,并完整“回放”其运作过程,因此,可以侦测出程序中的漏洞或隐蔽行为。据悉,该机器人被命名为TimePlayer。

阿里安全猎户座实验室负责人杭特认为,逆向能力是安全从业人员必须具备的基本功。杭特打了一个形象的比方,他介绍说,“逆向”就如同医生看病一样,通过望闻问切、各种化验,甚至是CT核磁共振,这些手段都是为了一个目的,弄清楚病因。对程序进行逆向,就是为了弄清楚程序究竟在做什么。

杭特指出,在当前的安全行业,逆向工作基本都是不断重复的、纯体力的。而阿里安全猎户座实验室TimePlayer的最大价值就是可以将安全从业人员逆向工作的大部分能力完全自动化。

阿里安全猎户座实验室研究人员弗为在看雪论坛上的演讲中称,TimePlayer集“摄像机”、“播放机”和下“显微镜”三大功能于一身。如果要分析一个程序,只需在TimePlayer中运行一次就可以,它会把该程序所有的行为全部忠实地记录下来,而且不会遗漏任何细节。不仅如此,TimePlayer还可以将“拍摄”的内容进行向前放、向后放、快放、慢放,能够放大任意处的细节并且追踪任意的目标。最重要的是,TimePlayer对于程序行为的勘察粒度达到了指令级别。

对程序实施精准手术!阿里安全猎户座实验室首创“自动逆向机器人”
阿里安全猎户座实验室研究人员弗为展示“自动逆向机器人”TimePlayer"

“TimePlayer正如其名一样,摄像和播放的结果一模一样,要做到这点是非常有挑战性的。”阿里安全猎户座实验室研究人员弗为表示,“现在随便一个APP都有几十亿条指令,如果要逆向这些APP,TimePlayer一条指令都不会遗漏。”

弗为在演讲中,以臭名昭著的WannaCry勒索病毒为例,现场演示了如何通过TimePlayer在系统内核中精确定位,找回RSA私钥。据弗为介绍,由于WannaCry勒索病毒刻意地删除了本机的“私钥”,因此,理论上只能掏钱向勒索者获取,这曾经使得诸多安全厂商束手无策,但阿里安全猎户座实验室的研究人员通过TimePlayer独家发现,“私钥”实际上在用户态和内核态均有残留,且相较于暴力搜索用户态内存方法,精准的内核态残留提取更为稳定。

另外,弗为还演示了如何通过TimePlayer逆向超级复杂的文件格式。弗为在演讲中表示,即便是逆向DOC这类超级复杂的文件格式,也是轻而易举——只需要把DOC文档放到TimePlayer中打开,就能自动化地对文件进行分析。以前要好几个人耗费数年时间的分析工作,TimePlayer几天时间就可以搞定,而且无需人员参与。

众所周知,***是个对抗的过程。为了对抗人工逆向,防护人员开发了各种各样的工具和产品提升逆向难度,其中最有名的叫做“虚拟机壳”。弗为在演讲中也演示了轻松突破这种“迷魂阵”的方法,那就是用TimePlayer。

阿里安全猎户座实验室负责人杭特指出,在全球范围来看,TimePlayer的能力是领先的、独一无二的。它出现可以说填补了安全行业的一大空白,同时也证明,二进制的黑盒性质,代码混淆的障眼法,终有失效的一天 。

转载于:https://blog.51cto.com/11180717/2148985

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/277598.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(24) 不可能的出栈顺序

一、问题描述 给定两个数组,一个进栈顺序,一个出栈顺序。判定出栈数组的出栈顺序是不是有可能的。 二、Code 1 package algorithm;2 3 import java.util.ArrayDeque;4 import java.util.Deque;5 6 /**7 * Created by adrian.wu on 2019/5/30.8 */9 pub…

《魔兽世界》的魅力究竟在哪儿?

写在前面:《魔兽世界》(World of Warcraft,后面简称WOW),是由暴雪开发的一款大型角色扮演网络游戏,曾经付费的正式用户一度超过1150万人,覆盖244个国家和地区,是曾经的“世界第一网游…

Service Mesh所应对的8项挑战

2019独角兽企业重金招聘Python工程师标准>>> Lori Macvittie 微服务架构是把双刃剑,我们享受它带来的开发速度(development velocity),却也不得不面对服务间通讯带来的复杂性问题。 目前大多数扩展容器化微服务的架构多…

stm32cubeide外部中断_【STM32】HAL库 STM32CubeMX教程三----外部中断(HAL库GPIO讲解)

前言上一节我们讲解了STM32CubeMX的基本使用和工程的配置,那么这一节我们正式来学习CubeMX配置STM32的各个外设功能了今天我们会详细的带你学习STM32CubeMX配置外部中断,并且讲解HAL库的GPIO的各种函数,带你学习不一样的STM32那么话不多说&am…

html5兼容ie

https://www.jb51.net/html5/143049.html转载于:https://www.cnblogs.com/rivsidn/p/10913532.html

什么叫内部银团_什么是紫钛晶?紫钛晶是不是天然水晶?

都说紫钛晶是紫水晶与钛晶的结合,听上去好像这种水晶不是天然的,像是人工合成的,事实上并非如此,紫钛晶也是天然形成的水晶,由于内部的包裹体是金色的,因此被称为紫钛晶。和菩心晶舍家的晶舞倾城一起了解紫…

如何使用Squid服务来构建=》传统和透明代理服务器,通俗易懂!

1、缓存代理概述: 作为应用层的代理服务软件,Squid主要提供缓存加速和应用层过滤控制的功能 2、代理的工作机制: (1)当客户机通过代理来请求web页面时,指定的代理服务器会先检查自己的缓存,若缓…

排序算法-C++实现

#include <iostream>using namespace std;void show(int M[], int n) {for(int i0; i<n; i)cout<<M[i]<<" ";cout<<endl; }//快速排序 void quick_sort(int M[], int left, int right) {if(left < right){int i,j,x;i left;j right;…

Bootstrap开发框架视频整理

最近到客户处进行实地培训&#xff0c;整理了很多培训的材料&#xff0c;现将它们录制相关主题的视频&#xff0c;作为我的Bootstrap开发框架的知识补充&#xff0c;希望给感兴趣的朋友进行了解。培训内容主要包括基础框架部分、MVC框架部分、Bootstrap框架部分、Bootstrap重要…

安卓随机通话记录_Android 通话记录

查询通话记录private static final String[] CALLLOGS_PROJECTION new String[]{CallLog.Calls._ID,CallLog.Calls.CACHED_NAME, CallLog.Calls.NUMBER, CallLog.Calls.TYPE, CallLog.Calls.DATE,CallLog.Calls.DURATION};/*** * 概述&#xff1a;获取最近10条通话记录 */publ…

【c基础】入门语法

%d:占位符 表示要输出一个整形数。 %f:为float 浮点数 %lf:为double型 双精度浮点数 \n:换行 const:定义一个常量,一旦被初始化就不能修改&#xff0c;只读的变量&#xff08;read-only variable&#xff09;。 整数运算 的结果是整数 如果有小数就抛弃没有考虑四舍五入。 一&a…

vue的移动app项目中,自定义拖拽指令的问题

使用vue的都知道vue有一个自定义指令&#xff0c;我比较喜欢的就是拖拽的自定义指令&#xff0c;感觉挺方便的&#xff01; //组件内的拖拽指令 directives: {//组建内自定义指令drag: {// 指令的定义bind: function(el, value) {let oDiv el; //当前元素let self this; //上…

弹窗php整人_[整人小程序] 超级信息框(无限弹窗++)

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼貌似刚才缩进空格被吞了&#xff0c;再发一次Set FSO  createobject("scripting.filesystemobject")Set ws  Createobject("Wscript.shell")Set SA  CreateObject("Shell.Application")If …

day22 Java学习 IO流(序列流)

IO流&#xff08;序列流&#xff09; 序列流&#xff1a; * 可以把多个字节输入流整合成一个&#xff0c;从序列流中读取数据时&#xff0c;将从被整合的第一个流开始读&#xff0c;读完一个之后继续读第二个。 整合方式&#xff1a; * Seq uenceInputStream ( InputStream &am…

网站建设-简单动态网站搭建

通过前面Clouder课程的学习&#xff0c;或许你已经掌握了在云服务器上发布和部署静态网页的方法&#xff0c;那么如何搭建一个可以随时更新内容的动态网站&#xff1f;通过本课程的学习&#xff0c;你将掌握如何在云端搭建全世界使用最多的WordPress网站的方法&#xff0c;并学…

mysql的concat函数_MySQL中concat函数(连接字符串)

MySQL中concat函数使用方法&#xff1a;CONCAT(str1,str2,…)返回结果为连接参数产生的字符串。如有任何一个参数为NULL &#xff0c;则返回值为 NULL。注意&#xff1a;如果所有参数均为非二进制字符串&#xff0c;则结果为非二进制字符串。如果自变量中含有任一二进制字符串&…

利用airTest的图像实别技术测试Web应用

airTest的第三方类库中有图像实别功能&#xff0c;根据官网的介绍&#xff0c;这个功能是能够在Windows上用来定位元素&#xff0c;进行操作的。尝试过以下脚本&#xff0c;发现真的可以。 from selenium.webdriver.chrome.options import Options from selenium import webdri…

MySQL主从复制故障解决

丛库复制停止&#xff0c;进丛库查看&#xff0c;报错1007&#xff0c;数据库已存在&#xff0c;不能创建数据库 mysql> show slave status\G; Slave_IO_Running: Yes Slave_SQL_Running: No Last_Errno: 1007 Last_Error: Error Cant create database test; database exis…

Unraveling the JPEG file

(文章还剩实践部分没写&#xff0c;答辩过后补上...) JPEG文件在当下数字化生活中是无处不在的&#xff0c;但是在熟悉的JPEG面纱背后&#xff0c;隐藏着一些算法&#xff0c;它们去除了人类眼中无法察觉到的细节。这产生了最高的视觉质量与最小的文件大小。让我们来看看这一算…

mysql interval 3 day_Mysql之INTERVAL与DATE_SUB与EXTRACT函数的使用

1. INTERVALINTERVAL代表的是时间间隔MySQL中的时间间隔类型有如下几种:1.1 利用INTERVAL做时间的加减法示例&#xff1a;加法:SQL>SELECT DATE 2018-11-01 INTERVAL 10 11 DAY_HOUR;结果:2018-11-11 11:00:00减法&#xff1a;SQL> select date 2018-11-11 11:00:00 -INT…