相关疑难解决方法(0)

可利用的PHP功能

我正在尝试构建一个可用于任意代码执行的函数列表.目的不是列出应列入黑名单或以其他方式禁止的功能.相反,我希望在搜索受感染的后台服务器时,有一个grep可用的红旗关键字列表.

这个想法是,如果你想构建一个多用途的恶意PHP脚本 - 比如像c99或r57这样的"web shell"脚本 - 你将不得不使用一组或多组相对较小的函数文件中的某个位置,以便允许用户执行任意代码.搜索这些功能可以帮助您更快地将数万个PHP文件的大海捞变到相对较小的脚本集中,这些脚本需要仔细检查.

显然,例如,以下任何一种都会被视为恶意(或可怕的编码):

<? eval($_GET['cmd']); ?>

<? system($_GET['cmd']); ?>

<? preg_replace('/.*/e',$_POST['code']); ?>
Run Code Online (Sandbox Code Playgroud)

等等.

前几天通过一个被入侵的网站进行搜索,我没有注意到一段恶意代码,因为我没有意识到preg_replace使用该/e标志可能会造成危险(严重的是,为什么即使那样?).还有其他我错过的吗?

到目前为止,这是我的清单:

Shell执行

  • system
  • exec
  • popen
  • backtick operator
  • pcntl_exec

PHP执行

  • eval
  • preg_replace(带/e修饰符)
  • create_function
  • include[ _once]/require[ _once](有关漏洞利用详情,请参阅mario的回答)

拥有一个能够修改文件的函数列表可能也很有用,但我想99%的时间漏洞利用代码至少包含一个上述函数.但是如果你有一个能够编辑或输出文件的所有功能的列表,请发布它,我会在这里包含它.(而且我不算数mysql_execute,因为那是另一类漏洞利用的一部分.)

php security grep

277
推荐指数
15
解决办法
12万
查看次数

如何在php中解压缩zip文件

我的图库脚本为我提供了通过zip文件上传一堆图像的选项.当我尝试这样做时,我收到错误行:致命错误:调用未定义的函数:zip_open()in ..

下面是phpinfo的摘录:

ZLib支持:已启用编译版本:1.1.4链接版本:1.1.4

zlib.output_compression:关闭zlib.output_compression_level:-1 zlib.output_handler:没有值

Zlib已启用..那么为什么我会收到该错误消息?感谢你们对我的帮助.

php

15
推荐指数
2
解决办法
3万
查看次数

如何使用PHP代码解压缩zip文件夹

我想解压导演.

这意味着我有一个压缩的目录名xxx.zip.在手册册我对上压缩目录中点击并做解压的文件夹,然后我买了名的解压缩dirtectory xxx并在此目录中有一个相同的目录xxx.在子文件夹将包含的文件.

这意味着,xxx-> xxx->文件这是解压缩文件夹的heirarchi.

因此,在我的网站中,我想使用PHP代码解压缩目录.

我怎样才能做到这一点?我只需要xxx->files不是xxx->xxx->files结构.

我怎样才能做到这一点?

php zip unzip

8
推荐指数
3
解决办法
3万
查看次数

我们可以使用C#在FTP服务器中解压缩文件吗?

我可以在FTP中提取ZIP文件,并使用C#将此提取的文件放在同一位置吗?

.net c# ftp zip

8
推荐指数
1
解决办法
1958
查看次数

如何使用 PHP 提取多部分 zip 文件?

我使用了这段代码{来自:用 php 解压文件}

$zip = new ZipArchive;
$res = $zip->open('file.zip');
if ($res === TRUE) {
  $zip->extractTo('/myzips/extract_path/');
  $zip->close();
  echo 'woot!';
} else {
  echo 'doh!';
}
Run Code Online (Sandbox Code Playgroud)

但它不适用于多部分 zip 文件。我的文件的名称是

file.zip
file.z01
file.z02 
This's for example :)
Run Code Online (Sandbox Code Playgroud)

*注意:我无法运行 shell 命令,因为我使用共享托管 {替代 PHP exec() 函数}

php unzip

5
推荐指数
1
解决办法
905
查看次数

PHP 解压非常大的文件

我在服务器上有一个 zip 文件。它是由数千个小文件组成的 1.1GB。我没有对服务器的 shell 或 root 访问权限,只能使用 ftp 和创建 php 文件.. 到目前为止,我已经尝试过 exec 和 shell exec 但都没有工作。服务器正在运行免费的 bsd。如何将文件解压缩到它所在的目录中?

php linux zip freebsd unzip

4
推荐指数
2
解决办法
4408
查看次数

Ziparchive 无法仅在 PHP 中打开 zip 文件

我正在尝试使用 PHP ZipArchive类解压缩文件,但是当我尝试时:

$file = '/path/to/zip/file.zip';
$zip = new ZipArchive();
$res = $zip->open($file, ZipArchive::CHECKCONS);
Run Code Online (Sandbox Code Playgroud)

结果是ZipArchive::ER_INCONS(Zip存档不一致)

现在,我已经能够在桌面 (Windows 7) 上打开 zip 文件,并在运行 PHP 应用程序的同一机器 (Ubuntu 12.04) 上使用bash命令行工具。unzip我什至可以使用 PHP 解压缩文件exec('unzip', $file);

我已经检查了缓存文件夹和 zip 文件的权限,并且网络服务器具有读取和写入权限。我可以使用 PHP 的 ZipArchive 类打开同一目录中的其他 zip 文件。

我不确定它是否相关,但我尝试打开的 zip 文件包含两个 zip 文件。

关于为什么会发生这种情况有什么想法吗?

php bash ziparchive

4
推荐指数
1
解决办法
2498
查看次数

标签 统计

php ×6

unzip ×3

zip ×3

.net ×1

bash ×1

c# ×1

freebsd ×1

ftp ×1

grep ×1

linux ×1

security ×1

ziparchive ×1