【发布时间】:2011-09-07 00:28:28
【问题描述】:
Bbcode 问题。这个:
$text = preg_replace("@\[img\](.*)\[\/img\]@si",
"<img src=\"$1\" border=\"0\" />", $text);
工作正常,但同时也是一个很大的安全问题,例如:
[img]http://www.domain.com/delete-account/[/img]
或
[img]http://www.domain.com/logout/[/img]
任何想法如何控制它,以便只有以 .jpg 结尾的图像链接被转换为 html?
[img]http://www.domain.com/image.jpg[/img]
谢谢。
【问题讨论】:
-
你需要添加CSRF保护。
-
@SalmanPK 不,他没有。
domain.com确实如此。详情见我的回答。 -
大声笑?那他为什么要关心?
-
@SalmanPK 没错,这是正确的答案:“当您允许用户指定
src元素的src属性的任意值时,您不需要关心CSRF”。请告诉我你在笑什么,我很想加入;)
标签: php security preg-replace csrf bbcode