pou*_*def 19
实际上,有几件事是可能的(并且通常用于诸如点击计数器之类的东西.)
考虑一下:
<img src="myPicture.php" />
Run Code Online (Sandbox Code Playgroud)
myPicture.php可能如下所示:
<?php
// Use PHP's GD image libraries.
// Create the image
$my_img = imagecreate( 200, 80 );
// set image attributes
// Set the header to indicate we're sending image data, rather than ASCII
header( "Content-type: image/png" );
// Output the image
imagepng( $my_img );
// cleanup
?>
Run Code Online (Sandbox Code Playgroud)
因此,PHP脚本的输出不是ASCII文本(或HTML),它是.png文件的二进制文件.因此,header()被设置为指示这一点,并且所示的imagepng()函数实际输出原始PNG图像数据.(例子从这里解除).
其他人提到的另一个选项涉及"正常"图像标记:
<img src="myPicture.png" />
Run Code Online (Sandbox Code Playgroud)
请注意,这以".png"结尾.在这种情况下,必须配置Web服务器,以便它不仅将.php文件解析为可执行的PHP代码,还解析.png文件.你的代码看起来一样,但它会包含在"myPicture.png"而不是".php"中.
它可能是一个服务器端PHP脚本,其.gif扩展为客户端提供了动态gif映像.服务器只是配置为将.gif文件作为PHP脚本执行(或者,更有可能,只是那个特定的.gif文件).
这很常见.您可以在具有动态图像的网站中找到它.
作为SysAdmin,当我发现带有图像扩展名的PHP脚本(.gif,.jpg,.png)时,通常意味着有人闯入PHP应用程序并将恶意代码隐藏在该文件中.
他们的代码可以通过调用PHP CLI或仅通过包含任何其他PHP脚本的文件来执行.请记住,include和require并不关心文件的名称.后者是我见过的最常见的情况.
您需要检查代码本身并查看它的作用.不要运行它,先读它.
| 归档时间: |
|
| 查看次数: |
5970 次 |
| 最近记录: |