php – 逃避XSS漏洞维护Markdown语法?

我打算在我的网页上使用Markdown syntax.我会在数据库中保留用户输入(原始,没有转义或其他),然后像往常一样打印出来并使用htmlspecialchars()即时逃脱.

这是它的外观:

echo markdown(htmlspecialchars($content));

通过这样做,我可以防止XSS漏洞和Markdown工作.或者,至少,有点工作.

问题是,让我们说,>语法(我认为还有其他情况).

简而言之,引用你做这样的事情:

&GT这是我的报价.

转义并解析为Markdown之后我得到了这个:

&安培; GT;这是我的报价.

当然,Markdown解析器无法识别& gt;作为“引用的符号”,它不起作用!

上一篇:php – 我该如何解决这个错误?不推荐使用:mysql_escape_string():不推荐使用此函数;使用mysql_real_escape_string()代替


下一篇:是否可以在PHP中“转义”方法名称,以便能够使用与保留关键字冲突的方法名称?