问题标签 [register-globals]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - session fixation, still an issue with register_globals off?
I've been reading into some articles about PHP security, and I came across this article:
http://shiflett.org/articles/session-fixation
This article describes that one can easily fixate a session by passing the PHPSESSID variable in a url request (for example ?PHPSESSID=1234
). However, it is my understanding (and please correct me if I am wrong) that PHP treats $_GET
, $_SESSION
and $GLOBALS
as different types of variables when register_globals
is set to off
in php.ini, and therefor using ?PHPSESSID=1234
in a url request should not produce this problem.
I have tested the following script:
But I can't seem to reproduce the fixation of sessions on my server, and I assumed it is because I have register_globals
set to off
in my php.ini.
Am I wrong about this?
It seems important to know for sure.
x-cart - $REQUEST_METHOD 在 xcart 中不起作用
我在 xCart 网站上工作。我被要求解决忘记密码表单的问题。提交表单后,有一个逻辑来检查表单是否使用 POST 方法提交。
但是这个条件并不总是满足,所以使用的人无法获得新的密码。
当我显示 $REQUEST_METHOD 时,它给出了 GET。我想,这是默认的。但是当我检查表单时,有一个方法 POST。
我是否需要通过 php.ini 启用/禁用全局注册?
或者需要在 xCart 配置中进行任何操作以使其正常工作?
请帮助我,您的帮助将不胜感激!
问候,蒂鲁!
php - 警告:未知:您的脚本可能依赖于在 PHP 4.2.3 之前存在的会话副作用
我在此站点的快捷链接中遇到问题:http: //smileshort.com/short-anonymous-links-api.html
使用api:http ://smileshort.com/api.php?key=534287562&url=google.com
告诉我这个问题
当我使用这个功能
php - 如何在 PHP 5.4 或更新版本中模拟 register_globals?
我正在研究一个使用register_globals
. 我的本地 php 版本是 5.4。
我知道register_globals
自 PHP 5.3.0 以来已弃用并在 PHP 5.4 中删除,但我必须使此代码在 PHP 5.4 上工作。
有什么方法可以模拟较新版本的 PHP 的功能?
get - PHP $_GET['X'] 默认为 $X
我一直在自己学习 PHP,并且我使用了一个 Web 主机帐户来测试我的脚本,默认情况下它们在其中启用了 register_globals。我知道这不安全,但在测试示例代码时我没有打扰。
现在,我正在为我所属的一个非营利组织开发一个小型实时站点,他们使用的主机默认情况下关闭了 register_globals,这是应该的。
所以,现在我的问题。我已经习惯了这种工作方式(使用 register_globals ):
假设我们正在加载 index.php?pID=1。index.php 的代码将包含这一行:
请注意,我使用了 $pID 而不是 $_GET['pID'] 并且我没有在代码中的任何地方将 $_GET['pID'] 分配给 $pID。无论如何,这工作得很好。所以(当然)我想知道当我在我的 orgs 主机上使用相同的代码时,这是否是因为 register_globals 关闭而突然不起作用?
如果是这样,是否有一种解决方法可以再次使超全局变量变得神奇,或者我是否必须手动将所有 $_GET 变量分配给我自己的全局变量?
php - php已升级,所有链接都显示索引页面,但链接标题显示正确格式
我正在尝试调试一个较旧的 php 站点(大约 4-5 年前),并且最近在服务器上升级了 php。
我以前见过这个问题,但我不记得我是如何解决的。
基本上主页显示得非常好,但没有一个页面链接正常工作或指向正确的页面。例如:
.../index.php?page=latestadditions
.../index.php?page=usercat&catid=32
所有链接都保留主页内容,但浏览器 URL 路径显示正确的链接名称。
正如您可能知道的那样,有一些 MySQL 查询正在解析 URL 以指示应显示哪个页面。
我已经检查了页面请求的服务器错误日志,并且没有输出错误。我还有一个功能:
但是没有输出到 dberrors.txt..
我知道数据库连接正在工作,因为记录数被拉到我的类别中,并且没有抛出 MySQL 错误。我也在检查
出于某种原因,我认为这与文件夹权限问题有关,但我可能会离题。
感谢您可以通过这种方式提出的任何提示。
干杯
php - register_globals 仍然有效,为什么?
在我的php.ini
我有register_globals=Off
但如果我访问
然后abc=19
使用 显示 的值echo $_REQUEST['abc']
。
问题是为什么我仍然可以访问abc
变量的值?
Note: I am using XAMPP.
php - 自 php 5.4 起链接不起作用
这可能是 register_globals = on issue 或 url rewriting 问题。我通过使用基本的 php 链接语法消除了 url 重写的可能性。我尝试了几个补丁来模拟 register_globals 开启但无济于事。直到上周更新 php.ini 文件时,该站点一直正常运行。它是一个带有 php 5.4.23 的 Apache 服务器。基本上我有一个目录页面,它显示从 mysql 数据库调用的作品列表。当用户单击链接时,它会将用户带到相应的项目页面。目录列表显示正确,但链接不再起作用,也没有显示错误。它总是链接到 mysql 请求的第一项,而不是请求的链接,即使显示的 url 是正确的。下面是连接数据库的代码:
这是catalog.php文件的一部分,除了链接之外,它可以正常工作
我一直看不出有什么问题。这段代码已经运行了几年,在阅读了 php 5.3 和 5.4 之间的差异之后,我没有看到任何已弃用的代码,但我知道 register_globals 已启用。
php - register_globals 利用会话数组
我有一个 PHP 脚本,它执行一些命令来验证用户是否已登录。
如果在 my 中将 register_globals 设置为 1 php.ini
,并且想要在 URL 中注入一些内容以每次都进行身份验证,那么无论密码是什么,我该怎么办?
我已经尝试过:
site.com/page.php?password=pass&logged=1
site.com/page.php?password=pass&_SESSION["logged"]=array("1")
site.com/page.php?password=pass&hidden_password=pass
==> 返回“你没有登录”,但问题是我不想覆盖 Hidden_Password(我需要它!)- 我也尝试使用 cookie 和其他 http 标头,但没有结果
有什么提示吗?
php - PHP $_SESSION 覆盖的变量未传递到下一页
问题:在下面的代码中,当我从页面从 sandbox1 移动到 sandbox2 时,$_SESSION[page_name] 的新值没有被传递并恢复为 index 的初始值。如果进入页面后我重新加载页面,新值似乎神奇地出现了。代码有问题吗?你能解释一下为什么 $_SESSION 的新值没有传播吗?
页面索引.php
页面 sandbox1.php
页面 sandbox2.php
在加载 index.php 时,它输出:
本页:索引
正如预期的那样。
从 index.php 到 Sandbox1 输出的超链接
从页面:索引
本页:沙盒1
(新值$_SESSION['page']
)如预期的那样。
从 Sandbox1 到 Sandbox2 输出的超链接:
从页面:索引
($_SESSION
恢复为价值指数)预计会看到
从页面:sandbox1
本页:沙盒2
(新值)符合预期。
附加信息 PHP 5.3 版。寄存器全局设置为“OFF”