在php100 防恶意注册这个需要怎么填,记录一次解决Drupal站点用户恶意注册的过程...

背景:

在一个电子商务网站上发现有很多@sina.com的垃圾注册用户。虽然已经开启了honeypot模块,但是没有屏蔽住此类注册。

分析:

攻击者可能比较熟悉honeypot的工作机制,可以自己编写相应的脚本实现恶意注册。

在Drupal系统中,默认情况下,用户注册都会有日志记录,保存在watchdog表中。通过分析watchdog表中的关于用户的日志的情况,可以统计出相应的信息供参考。

然后通过user block模块或其他相应模块屏蔽该恶意IP的注册。

解决步骤:

在任意mysql客户端,或者phpmysql里面执行如下sql语句:

select count(hostname) as count, hostname from watchdog where type="user" group by hostname order by count desc;

可以得到类似如下的统计结果

| count | hostname        |

+-------+-----------------+

|    53 | 173.208.222.90  |

|    31 | 173.208.222.42  |

|    20 | 173.208.222.146 |

|     4 | 216.244.84.43   |

|     2 | 61.219.177.117  |

|     2 | 173.208.253.83  |

|     2 | 217.168.16.33   |

|     2 | 109.73.170.223  |

|     2 | 5.101.140.233   |

|     1 | 180.180.77.131  |

|     1 | 183.207.224.51  |

|     1 | 222.44.86.167   |

可以看到在173.208.222.0/24这个IP段有大量的访问,在www.ip138.com查询,得知该ip位于美国;由于网站主要面向中国用户,基本可以判断这就是恶意注册的ip来源。

Drupal默认的ip屏蔽策略不支持针对IP段的屏蔽。可以使用ip ranges模块实现基于ip段的屏蔽。

额外的思考:

使用Drupal模块的方式进行屏蔽,可以仅通过鼠标点击的方式解决问题,比较轻松。同时可以开放权限给相关人员,减轻开发者负担。

最好的方式,是在服务器层进行屏蔽,nginx与apache都有相应的配置可以实现针对指定IP与IP段的屏蔽访问;这种方式对系统资源消耗较小。缺陷是配置比较麻烦,需要登录服务器进行操作。

如下是nginx与apache的屏蔽ip访问的官方文档。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值