首页 随笔 乐走天涯 程序资料 评论中心 Tag 论坛 其他资源 搜索 消息中心 联系我 关于 RSS

防止论坛群发广告(论坛群发器/广告机器人)的几点方法


日期: 2008-07-23 21:35 | 联系我 | 关注我: SteemIT, Twitter, Google+

  最近几年, 维护个人网站、博客、论坛的站长, 都饱受论坛群发器/广告机器人的苦恼。一些没有职业道德的程序员,开发了论坛群发软件;而无良的 SPAMER 们, 利用这种广告自动程序, 执续不断地发送着各种垃圾广告,厉害的程序,一天可以强奸几万个论坛。

  如果论坛是公开注册,对反 SPAM 措施没有配备的话,管理员一两天不上线维护,版面就会变得惨不忍睹,垃圾满屏。如何防止论坛群发广告,是许多站长头疼的问题。关于 Anti-spam 的办法,目前有许多种,但每种方法都各有优缺点。

  以我的经验来看,最关键的一环,就是抓住源头,即控制住用户注册这块。我将自己所了解的控制住用户注册的几点措施,总结如下:

  https://www.xiaohui.com/dev/server/20080723-discuz-forum-anti-spam.htm

  1. 防止论坛群发: 不开放公共注册, 实行会员推荐/邀请制度.
  2. 这是最狠的一条措施。使用此制度, 可以完全杜绝广告机器人。不过,这个措施不具备普遍推广性. 只有一些准入门槛比较高论坛或某些专有论坛,才能实施这条措施。

  3. 防止论坛群发: 注册时需要通过校验码.
  4. 这个方法是比较经典的反 SPAM 措施. 但现在的广告机器人程序,有些能够识别出校验码。在这种情况下,针对校验码,可以做一些干扰变化。例如:

    • 图片给出六位校验码。但你要求用户只输入前五位
    • 给图片加入噪点,让识别程序无法识别
    • 让用户反着输入,例如给出的是“ABCD",让用户输入”BDCA"……

    诸如此类,不一而足,在乎你的想象和折腾。:)

  5. 防止论坛群发: 使用自然语言描述的注册问答, 让注册者回答一个简单的自定义题目.
  6. 题目用自然语言描述,人一看就懂,但群发广告的程序却无法识别。例如:

    • 小王在桥上做了三个俯卧撑,小李做桥上做了四个俯卧撑,请问他们一共做了多少个俯卧撑?
    • 自从吃了盖中盖,嘿,一口气上六楼, 还不喘气儿. 请问: 六楼的上面一楼,是第几楼?
    • 杨丽娟是个女的,刘德华是个男的。请问:谁没有小JJ?

    类似这样的问题,多设计几组,机器人基本是答不出来的。需要注意的是: 这种问题, 需要规定好答案的格式, 例如: "请用中文数字不带单位回答", 或"请用英文小写字母回答"之类。另外,设计这类题目时,最好发挥你的想象和幽默,让题目有趣味一些,这样不会让真正的注册者感到麻烦。

    我的个人网站( https://www.xiaohui.com )的用户评论模块,采用的是让用户做一个简单算术题( 一个 10 以内的数字 与一个 10~20 以内的数字相加)。这个措施比较简单,但由于我网站 https://www.xiaohui.com 的内容管理系统,是自己开发的,算是非主流,至今没有被群发软件盯上。

  7. 防止论坛群发: 更改注册表单的字段名属性。
  8. 例如,将 注册脚本中的 name 字段,改为 xing_ming, 将 username 改为 my_user,与标准的论坛程序的属性名,不一定即可。

  9. 防止论坛群发: 更改注册链接的 URL 和 名字.
  10. 将论坛注册的页面文件名改了, 例如将 register.php 改成 rt.php, 将 "注册" 的字样, 改成 "申请新用户/建个帐号/"等(发挥你对小学语文同义词的理解), 这样基本能防住不少机器人. 笑汇程序员论坛( http://www.xiaohui.net ) 就是采用了这个. 我个人觉得这个方法最简单,也最不占用系统资源。这招是我几年前的时候想出来。最新的 discuz 论坛程序, 已经在后台管理中整合了这个功能。

  配置上面这些措施,有些需要站长有一定的脚本编程知识,有些可以在论坛的后台管理界面中打开。对于博客来说,大部分博客允许匿名留言,无需注册,这样的话,有些针对论坛注册的措施,就用不上,但基本于“校验码验证”、“自然语言问答“等措施,仍是可以执行的。

  然而,有些论坛广告,并不是程序机器人自动发的,而是人工发贴。碰上这种人,就不好控制了。我目前是写了一个简单的脚本,列出最近的注册用户,以及他发表的贴子标题。一页显示100个或更多个用户。每隔几天上去看一次,如果是 SPAMER 的话,只要扫一眼就可以知道,直接将其帐号及所有贴子删除。

 

相关文章

  • 千万级记录的Discuz论坛导致MySQL CPU 100%的优化笔记
  • 解决一个 MySQL 服务器进程 CPU 占用 100%的技术笔记

  •  文章评论

    第 1 楼  发表于 2008-07-24 16:57 | yifang 的所有评论
    被我坐到了沙发,可惜感觉不是很懂你所写的内容,见笑了!呵呵

    第 2 楼  发表于 2008-07-25 09:57 | Kingwood 的所有评论
    不错.
    Q:小王在桥上做了三个俯卧撑,小李做桥上做了四个俯卧撑,请问他们一共做了多少个俯卧撑?
    A:多个俯卧撑
    Q:杨丽娟是个女的,刘德华是个男的。请问:谁没有小JJ?
    A:都没有小JJ

    第 3 楼  发表于 2008-07-25 14:52 | flashui 的所有评论
    小辉老兄好,一直关注你和老虎,但很长时间没看到老虎的任何信息了,他现在忙啥呢,关心一下。
    回复于 2008-07-25 16:44:
    先说,你是男的,还是女的? :)

    第 4 楼  发表于 2008-07-25 23:57 | loveasy 的所有评论
    看了这篇文章,受益匪浅!~

    玩程序玩到这份上,真就跟撒尿一样了。 想来,就来,无拘无束...

    第 5 楼  发表于 2008-07-26 08:47 | flashui 的所有评论
    女的谁来这啊,肯定大老爷们,哈哈
    回复于 2008-07-26 08:53:
    那先请我喝酒再说吧。:)

    第 6 楼  发表于 2008-07-29 19:11 | shirley 的所有评论
    引用: 女的谁来这啊,肯定大老爷们,哈哈
    我是lady 来了,怎么不能来啊

    第 7 楼  发表于 2008-07-30 09:49 | 友友 的所有评论
    这个网站不错。看起来比 wordpress 建站的网站要清新许多。可否把你的网站管理系统公开?
    回复于 2008-07-31 13:09:
    多谢。这是写给我自己用的,没打算公开。否则维护麻烦,永无宁日。
    若付 $9999.95,则另说。:) :)

    第 8 楼  发表于 2008-07-30 16:50 | xjb 的所有评论
    嘿嘿,楼上,如果你出钱,估计xiaohui会奉献出来

    第 9 楼  发表于 2008-08-04 11:12 | m_wuhen 的所有评论
    溜溜

    第 10 楼  发表于 2008-08-16 20:17 | err 的所有评论
    好久没来了

    第 11 楼  发表于 2008-08-28 14:04 | 销毁小辉 的所有评论
    我是spammmmmmmmmmmmmmmmmmmmmmmmmmm

    第 12 楼  发表于 2008-09-02 09:54 | 小财神 的所有评论
    非常受用,能把您写的那个程序发到我邮箱吗?非常感谢!

    共有评论 12 条, 显示 12 条。

    发表你的评论
    如果你想针对此文发表评论, 请填写下列表单:
    姓名: * 必填 (Twitter 用户可输入以 @ 开头的用户名, Steemit 用户可输入 @@ 开头的用户名)
    E-mail: 可选 (不会被公开。如果我回复了你的评论,你将会收到邮件通知)
    网站 / Blog: 可选
    反垃圾广告: 为了防止广告机器人自动发贴, 请计算下列表达式的值:
    5 x 1 + 5 = * 必填
    评论内容:
    * 必填
    你可以使用下列标签修饰文字:
    [b] 文字 [/b]: 加粗文字
    [quote] 文字 [/quote]: 引用文字

     
    首页 随笔 乐走天涯 猎户星 Google Earth 程序资料 程序生活 评论 Tag 论坛 资源 搜索 联系 关于 隐私声明 版权声明 订阅邮件

    程序员小辉 建站于 1997 ◇ 做一名最好的开发者是我不变的理想。
    Copyright © XiaoHui.com; 保留所有权利。