【问题标题】:PHP Post_method hackingPHP Post_method 黑客攻击
【发布时间】:2016-12-04 04:47:29
【问题描述】:

我在网上遇到了sn-p https://www.quora.com/Why-is-PHP-hated-by-so-many-developers 当我对 PHP 进行一些研究时,我根本不知道代码是如何工作的。

谁能解释一下sn-p中发生了什么以及如何在不知道密码的情况下登录?或者只是给我一些相关的文章来阅读。提前致谢。

【问题讨论】:

  • 为什么您的屏幕截图(→为什么?)省略了上述文章中的(尽管很薄)解释部分?为什么你的问题标题这么浅?
  • 另外,请注意,这不是如何检查密码的一个很好的例子。接下来是什么,以明文格式将密码保存在数据库中?看看密码散列@php.net/password - 如果你第一次就学对了,以后就不用担心了:)
  • 我从来没有见过strcmp在任何实际项目中被这样使用
  • @mario 很抱歉,因为我对这个话题知之甚少,也不知道如何提问。我将链接添加到文章中,但没有太多解释。

标签: php curl post


【解决方案1】:

manual

如果它们 [strings] 相等,则返回 ...0

因此,根据 sn-p 逻辑,您应该最后将 00 进行比较。但是当你发送password[]=wrong时,实际上是发送了一个数组,迫使strcmp抛出一个warning,完全绕过函数调用,将条件感知为true

您应该始终使用严格的比较,以防万一。所以在上面的 sn-p 中,严格按类型和值进行比较就足够了(使用===):

if(strcmp($POST['password'], "sekret") === 0)

在这种情况下,password[]=wrong 将不再起作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多