【问题标题】:Security Html and PhP安全 HTML 和 PhP
【发布时间】:2019-07-21 14:47:53
【问题描述】:

有人能告诉我以下代码的作用以及安全方面的问题吗?

 < ?php require_once '../include/' . $_GET['file']?>

我认为这个 _Get['file'] 有一个参数并包含在我猜的库中?我不确定,也不确定这段代码中的问题。

【问题讨论】:

  • 您在未经验证的情况下采用直接用户输入。
  • 为什么这对网络服务器的安全性不利? Ty 的答案
  • 它允许他们执行../include/ 目录中的任何文件。永远不要相信用户提供的数据。
  • 如果他们传入一些私有文件名或路径怎么办?
  • 非常喜欢。我明白了。

标签: php html security


【解决方案1】:

这允许客户端让网络服务器执行服务器上几乎所有的 PHP 脚本。他们甚至可以通过在参数中包含他们自己的../ 序列来执行../include 目录之外的文件,例如

yourscript.php?file=../../../somescript.php

这将执行

require_once("../include/../../../somescript.php");

相当于

require_once("../../somescript.php");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-21
    • 2011-11-02
    • 2014-03-05
    • 2013-09-03
    • 2010-10-09
    • 1970-01-01
    • 2012-02-02
    • 2011-03-22
    相关资源
    最近更新 更多