jpg/png 格式的 Shellcode

信息安全 外壳代码
2021-08-18 14:09:42

如果可以在 jpg 文件中编写 shellcode,为什么不是所有可以上传图像的 web 应用程序都被感染?

在客户端计算机中,是否有必要利用 jpg 查看器来运行 shellcode?

2个回答

简单地说,有多种方法可以将 shellcode 伪装成 jpg 文件,但文件仍然需要执行。能否做到这一点取决于服务器和操作系统配置等多种因素。如果您可以以某种方式将上传的 shell 包含在执行路径中(本地或远程),并且如果没有特定的安全机制,那么是的,可以执行“jpg”文件。

所以即使你可以上传伪装的 jpg,也不一定意味着你可以执行嵌入的 shellcode。更重要的是,有一些方法可以检测 jpg 文件的有效性(即使它们也可以用更高级的伪装方法绕过)

注意: shellcode 只是攻击的有效载荷,只有在查看器中存在可利用的漏洞并且以某种方式可以执行 jpg 文件时才会起作用。

可以通过两种方式执行图像文件中的代码:

  1. 零日漏洞:堆栈缓冲区溢出等漏洞可能导致在处理文件(包括图像文件)期间执行代码。这些漏洞一旦被公开就会被修复,但它们并不是未知的
  2. 直接执行:有多种方法可以诱使系统像执行二进制文件一样执行图像文件。见例子。)