黑客24小时在线接单的网站

黑客24小时在线接单的网站

欺骗防御新方法:rMTD

如果操作系统和应用程序中存在漏洞,攻击者很可能会找到一种使用它的方法。解决隐患的唯一方法是从程序库中修复问题。然而,在安全补丁发布之前,系统仍有被抓获的风险。许多人不得不接受这种情况。

不过,事情可能出现了转机:轮换移动目标防御技术(rotational Moving Target Defense,rMTD)。

rMTD这是一个使现有漏洞难以利用的概念。这个概念可以通过各种不同的技术来实现:它可以是静态的,植入在应用程序编译中,也被称为“自我保护应用于编译(Compile Time Application Self Protection,CASP)”;也可在运行时动态使用,称为“运行时应用自我保护(Runtime Application Self Protection,RASP)”。CASP和RASP不互斥,可以完全结合在一起。

CASP通过修改应用程序在编译过程中产生的汇编代码,以确保没有两个汇编会产生完全相同的汇编指令组。攻击者通常会根据从生成的静态编译中获得的已知汇编布局进行攻击。一旦他们建立了自己的攻击模式,他们就会操作系统中相同的二进制码。他们利用应用程序或操作系统的静态编译特性劫持系统。

如果你想类比一下,就像一个小偷得到了你的保险箱的复制品,并有足够的时间找到如何破解它。唯一的区别是,对于黑客攻击者来说,他们比保险箱更容易获得软件的复制品,并且已经知道并发布了相关的漏洞。CASP保护,同一个保险箱(即应用)在遮盖(二进制布局)下会显得不同。

RASP它是在应用程序运行过程中创建一个无序的状态。二进制布局在每个应用程序运行过程中都会发生动态变化。攻击者无法猜测应用程序的堆栈布局,或函数和图书馆地址。类比之下,在高速公路上奔跑时,汽车切换发动机并重新设置内部组件。

CASP和RASP它将通过一系列技术实现。以下是一些总结:

CASP技术

1. 修改汇编代码

用完全不同但逻辑上一致的指令组替换程序库中的原始汇编指令组。ABI(Application Binary Interface,应用二进制接口)是与程序库调用函数的接口。修改汇编指令不会影响ABI。应用与二进制之间的界面保持不变。

攻击者将检查汇编指令组的布局,然后计划攻击。他们的工具允许他们检查编译代码和生成的汇编指令,以找到代码漏洞(如缓冲区溢出、缓冲区反向溢出、整形溢出、双自由调用等)。一旦发现漏洞,攻击者将根据二进制的汇编布局攻击修改附近的汇编指令。由于二进制的汇编布局被修改,因此对攻击者未知的汇编代码进行无效攻击。

2. 随机化每个程序库中每个函数的起始地址

每个程序库或模块都显示应用程序可调用的函数。默认情况下,编译时固定每个函数的起始地址。

攻击者可以在不检查源代码的情况下检查编译后的二进制内容,然后轻松获得每个函数的地址。此信息将用于攻击。当堆栈被劫持时,攻击代码可以指定攻击者想要调用的程序库中的地址,从而打开shell。

3. 数据结构防护

编译时,二进制中的数据结构记忆布局会随机化,数据字段会实时动态加密,防止它们被重写或读取。

数据结构通常包括缓冲,如字符串缓冲或数组缓冲。所有这些都将成为实现缓冲区溢出攻击的目标。为了通过定义数据结构中的缓冲来劫持堆栈,攻击者必须在数据结构中找到缓冲区的位置。通过在编译过程中随机布局数据结构,攻击者无法在数据结构中定位缓冲区的位置。

RASP技术

1. 随机动态程序库地址

在运行过程中,程序库的地址将是随机的。所有涉及程序库的参考都将更新并显示新的地址。这将使攻击者在劫持过程中更难从应用程序中调用外部程序库。

2.

在编译过程中,程序库中定义的每个函数的地址都给出了一个静态地址。除了随机程序库的地址外,每个函数的地址在执行时也会发生变化。

3. 动态stack canary

与容易绕过的固定随机值静态相比stack canary,动态的canary可以随时动态随机化。动态随机化stack canary,在它改变之前,攻击者没有足够的时间猜测它的值。

4. 影子堆栈

阴影堆栈是指编译中生成的堆栈的复制,但阴影堆栈从存储到返回地址。返回地址在阴影堆栈中加密,以免被攻击者修改。在应用程序从堆栈读取返回地址并跳转到之前的执行状态之前,返回地址将被加密并与阴影堆栈中的值进行比较。如果两者匹配,执行将跳转到返回地址指向的下一个指令;如果两者不匹配,攻击者可能会修改地址,导致应用程序崩溃,然后记录事件。

5. PLT

PLT(Procedure Linkage Table,程序链接表)是定位其他程序库中函数的搜索表。在执行过程中随机存储外部程序库的函数地址PLT而不是静态的。

这可以防止攻击者从已知的程序库中调用函数生成终端。例如,攻击者可以通过发现PLT中的strcpy()函数和调用实现攻击;但是,如果在外部程序库定义外部程序库的函数位置,攻击者就无法通过发现外部函数的地址实现return0to-PLT攻击。

rMTD可能是下一代预防0day攻击的前线能力可以使计算机和系统对攻击者有更强的抵抗力。随着该技术在行业中的成熟和广泛应用,它可能像防毒软件一样流行。

点评

安全阶段越早,最终的安全效果就越明显。安全能力嵌入在应用程序和系统的代码层面,可以进一步推进安全防线,从而拓宽防御深度,增加攻击者的攻击难度。在过去的两年里,中国RASP由于产品的逐渐发展,产品正在逐渐发展RASP产品更适合运行中的保护,是传统网站应用保护中的新武器;CASP更需要在开发初期投入使用,需要一定的时间来提高市场信任度和技术稳定性。rMTD确实是未来开发安全值得重视的方向。

   
  • 评论列表:
  •  辞眸诤友
     发布于 2022-06-08 16:46:36  回复该评论
  • nse,rMTD)。rMTD这是一个使现有漏洞难以利用的概念。这个概念可以通过各种不同的技术来实现:它可以是静态的,植入在应用程序编译中,也被称为“自我保护应用于编译(Compile Time Application Self Protection,CASP)”;也可在运行时动态使用,称
  •  掩吻夙世
     发布于 2022-06-08 19:39:27  回复该评论
  • 布局,然后计划攻击。他们的工具允许他们检查编译代码和生成的汇编指令,以找到代码漏洞(如缓冲区溢出、缓冲区反向溢出、整形溢出、双自由调用等)。一旦发现漏洞,攻击者将根据二进制的汇编布局攻击修改附近的汇编指令。由于二进制的汇编布局被修改,因此对攻击者未知的汇编代码进
  •  姐姐你玩不起。1
     发布于 2022-06-08 20:42:27  回复该评论
  • nse,rMTD)。rMTD这是一个使现有漏洞难以利用的概念。这个概念可以通过各种不同的技术来实现:它可以是静态的,植入在应用程序编译中,也被称为“自我保护应用于编译(Compile Time Application Self Protection,CASP)”;也可在运行时动态使用,称
  •  澄萌淤浪
     发布于 2022-06-08 22:45:56  回复该评论
  • le,程序链接表)是定位其他程序库中函数的搜索表。在执行过程中随机存储外部程序库的函数地址PLT而不是静态的。这可以防止攻击者从已知的程序库中调用函数生成终端。例如,攻

发表评论:

Powered By

Copyright Your WebSite.Some Rights Reserved.