【问题标题】:Send $_POST to masked site将 $_POST 发送到被屏蔽的站点
【发布时间】:2015-03-15 13:35:30
【问题描述】:

我在使用 PHP 发送表单时遇到问题。

我有一个带有脚本的页面 domain1.com 和第二个带有掩码到第一个域的 domain2.com。

第二个域 domain2.com 在浏览器中可见,但脚本在 domain1.com 下运行

我尝试将 $_POST 数据从 domain2.com 发送到自身,但 $_POST 无法传递。

表单头部如下所示:

<form method="post" action="http://<?php echo $_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"] ?>">

然后我尝试 var_dump $_POST,但它是 NULL。

我的问题是:如何从掩码域中捕获 $_POST 数据?可能有一些黑客行为吗?

任何想法都有帮助,谢谢大家。

示例 1:

<form method="post" action="http://domain2.com">
<input type="hidden" name="data" value="1" />
<input type="submit" value="send" />
</form>

示例2:

<form method="post" action="http://domain1.com">
<input type="hidden" name="data" value="1" />
<input type="submit" value="send" />
</form>

【问题讨论】:

  • 看起来你想破解一个网站...但它不会那样工作...
  • 不,我不想破解任何东西。但是我在一个脚本下有更多域,我想将数据发送到主域。
  • 您不是“屏蔽”域2。当表单被提交时,它会在浏览器的地址栏中可见,并且肯定会在包含表单的页面的 html 中可见。

标签: php post masking


【解决方案1】:

简单的底线。表单中的 action= 参数是 $_POST 将被解析/处理/无论如何的地方。

框架很便宜,更像是一文不值(做这件事的其他方法不是框架)。

AJAX 和 javascript 是你的朋友。

没有 JS,您可以将 domain1 上的表单提交到 domain2,其中 header() 重定向回 domain1。

黑客,是的。

它可能会起作用。

我可以在上面签上我的名字吗,不。

【讨论】:

  • 当然,这意味着两种方式:AJAX (JS) 和重定向回 domain1 - 发送数据。是吗?
  • 要么,要么,是的。我不确定您的“掩蔽”到底是什么,因为我已经看到它以严格的“框架”方式使用,老式风格(1990 年代后期)。更常见的是使用巨型 iframe。他们应该表现得相似。框架类型相似,但您可能需要减轻一些麻烦。阅读header(),可能会发生一些奇怪的事情(会话中断?)。我同意修复 DNS 并且不使用掩码。否则,ajax 是最好的恕我直言。
  • 第二个例子呢,这行不通?从其他域发送到主域。
  • 第二个例子应该可以工作,我测试了类似的脚本。
【解决方案2】:

简短的回答是你不能。

使用框架进行遮罩。它获取用于加载框架集的 URL 的路径段,并将其与不同的基本 URL 一起用作框架的 src。这只能触发 GET 请求。

如果您完全控制了生成框架集的服务器,那么您可以将数据输出到框架集的 HTML 中,用 JavaScript 将其读回,生成包含数据的表单,然后提交(仍然与 JS)。

这将是一个可怕的黑客攻击,如果您对服务器有这么多的控​​制权,那么您可能无论如何都会使用正确托管的域。

【讨论】:

  • 好主意,但我认为没有 JS 也有解决方案。使用 GET 发送不是一个好主意。也许重定向到主域,然后发送 POST 数据。你觉得呢?重定向与 GET(将使用 SSL)
  • 如果您想正确解决问题,请正确设置 DNS,不要使用掩码,并让服务器在您当前用作掩码的域上的 URL 处处理脚本.
  • @Quentin 这是否意味着访问者留在同一个域或重新定位?
  • 他们会留在同一个域中。
  • 嗯,这个项目是基于masking的,这是这个项目的主要功能。但我接受你的回答,因为有人可以有不针对掩蔽的项目。
【解决方案3】:

你不能那样做。这违反了跨域政策

【讨论】:

  • 可以缓解。我同意,不是很棒。
猜你喜欢
  • 1970-01-01
  • 2020-01-29
  • 2015-02-19
  • 2012-12-06
  • 1970-01-01
  • 2018-09-16
  • 1970-01-01
  • 2017-03-08
  • 1970-01-01
相关资源
最近更新 更多