首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >代码注入、命令注入和远程代码执行的区别

代码注入、命令注入和远程代码执行的区别
EN

Security用户
提问于 2017-08-28 10:53:31
回答 2查看 9.1K关注 0票数 7

如果必须描述这三个术语之间的根本区别(即代码注入、命令注入和远程代码执行),这将是什么?

它们在执行攻击的方法和在目标机器上的行为方面有何不同?

EN

回答 2

Security用户

回答已采纳

发布于 2017-08-28 12:18:52

嗯,让我试试:

  • 代码注入包括修改一个可执行/编译单元/脚本,以便在其上面包含恶意代码,这是S预期的功能。代码可以在本地注入,然后可以上传到互联网、论坛、新闻服务器等。这是一种相当容易利用的形式,类似于特洛伊木马。早期的病毒就是这样制造的,并通过共享可执行文件的用户传播。在“密钥生成器”和其他非法软件中,以及在臭名昭著的windows sreensavers ".scr“和其他格式中,您可能仍然会发现这一点,这些格式本身并不是可执行的,但可以用可以执行的代码加载。
  • 命令注入是IMHO,它利用不受保护的系统的弱点,允许执行任意命令来修改或损坏目标系统。例如,这可以通过web注入指令并让远程服务器执行它们。无保护的SQL字符串因此而出名。它们可以破坏数据库,甚至可以在底层操作系统上执行代码。
  • 远程代码执行实际上是再次手工恶意代码,但这一次它不是附加到二进制单元,而是通过网络发送。命令注入的不同之处在于,除了恶意代码/脚本之外,它还需要接收进程的弱点或错误,比如您可能发送错误的指令,造成进程崩溃,然后利用崩溃处理程序执行与“崩溃数据包”一起交付的代码。大多数现代的“零日”都是这样发挥作用的。

我认为这个术语是以模糊的方式使用的,所以其他人可能会看到这一点。

票数 7
EN

Security用户

发布于 2017-08-28 13:50:47

代码注入:当恶意应用程序使用漏洞攻击已经运行的应用程序时,将恶意代码插入被攻击的应用程序;更改执行路径。

命令注入:当您使用系统的某种类型的输入来运行系统命令时。当输入未被正确消毒或检查时,可能会发生这种情况。维基百科有一个好例子

远程代码执行:当代码可以在系统上执行它想要的任何指令时。存在许多漏洞,但并非所有漏洞都允许攻击者在系统上执行任意代码。获取远程代码执行是利用系统的最后一步。

把它们都放在一起。漏洞用于利用系统执行代码或命令注入以获得远程代码执行。应该注意的是,您不需要进行代码/命令注入来获得远程代码执行。它们只是如何使用恶意代码的简单例子。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/168327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档