最近发现论坛已经禁止所有用户组匿名发贴,禁止版块匿名发帖功能,但是论坛却一直有匿名发布的帖子?在论坛的后台也找不到发帖者用户名,而且帖子数据表中UID为空。只有一种原因那就是网站有漏洞,但是我们应该如何去修改呢?接下来为大家介绍一下DZ论坛如何禁止匿名发帖功能修改教程,有需要的小伙伴可以参考一下:
1、检查后台禁止匿名权限:
(1)、在后台找到“板块”下的“版块管理”,编辑所有板块,在“帖子选项”下找到“允许匿名发帖”选项选中“否”保存即可
(2)、切换到“用户”菜单,选中左侧“用户组”,点击对应用户组后面的编辑,在“论坛相关”下找到“帖子相关”然后在“允许匿名发帖”选项选中“否”保存即可
PS:如果更改全部用户组,我们可以使用批量编辑功能设置禁止匿名发帖
2、匿名发帖漏洞
(1)、如果站长没有将Discuz X升级到最新版本。攻击者可以利用匿名发帖漏洞绕过权限发布匿名发帖。
(2)、默认DiscuzX程序是这样判断的:如果没有这个会员,或者会员主动选择匿名,都显示为匿名。
3、漏洞修复:
我们需要在source/module/forum/forum_post.php文件的85行添加判断即:凡是没有uid的帖子,一律禁止发帖,添加以下代码然后,保存文件,在后台更新缓存即可
if(!$_G['uid']) { showmessage('没有权限,禁止匿名发帖!'); }