当前位置:  开发笔记 > 编程语言 > 正文

安全传递密码(堆栈跟踪问题)

如何解决《安全传递密码(堆栈跟踪问题)》经验,为你挑选了0个好方法。

我注意到我的dev服务器的php_errors.log文件在我之前的bug修复狂欢之后又重新出现了,但这次我注意到了一些令人不安的事情......

[06-Jan-2016 01:29:29 UTC] PHP致命错误:未捕获PDOException:SQLSTATE [HY000] [2002] /home/niet/public_html/classes/DB.class.php:14
堆栈中没有此类文件或目录trace:
#0 /home/niet/public_html/classes/DB.class.php(14):PDO - > __ construct('mysql:host = loca ...','niet',' MY ACTUAL PASSWORD! ',Array )
#1 /home/niet/public_html/classes/DB.class.php(47):DB :: connect()
#2 ...

不用说,这是一个问题.所以基本上,我的问题很简单:

如何将字符串传递给函数,如果出现错误,它是否会显示在堆栈跟踪中?

为了变得聪明,我尝试了这个:

new PDO(
    "mysql:host=localhost.....",
    "niet",
    new class { public function __toString() { return "correct horse battery staple"; }}
);

当它成功连接到数据库时,抛出的异常(例如错误的密码)仍然显示字符串值,而不是匿名类.如果我使用"普通"类来尝试从跟踪中"隐藏"变量,则会出现类似的问题.

推荐阅读
有风吹过best
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有