gpt4 book ai didi

PHP htmlentities() 输入与输出

转载 作者:可可西里 更新时间:2023-10-31 22:57:21 26 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
PHP htmlentities() on input before DB insert, instead of on output

对于只是试图保护自己免受 XSS 之类攻击的 PHP 应用程序,应该在什么阶段调用 htmlentities() 函数?应该在初始用户输入时调用,还是在输出数据的每个页面呈现时调用?

如果我对用户输入使用 htmlentities(),我最终会在数据库中存储更多的数据。但是,从长远来看,我节省了 CPU 周期,因为我只需要对输入执行转换,而不必再对数据的后续输出执行此操作。

我应该指出,我看不到任何可预见的情况下必须在我的应用程序中存储 HTML 输入数据,因此使用 htmlentities() 纯粹是为了 XSS 保护。万一我确实需要原始 HTML,我可以简单地调用 html_entity_decode() 来反转 htmlentities()。此外,它还避免了我忘记在页面呈现时调用 htmlentities() 以及不小心将 XSS 漏洞插入到我的应用程序中。

我曾经考虑过使用 Facebook 的 XHP 扩展的想法,但是 XML 解析会带来相当多的开销,超出了我对我的应用程序感到满意的程度。


总结:我应该在输入还是输出上使用htmlentities()?对于这种情况,普遍接受的方法是什么?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com