有个人自己做了个面试网站论坛,能注册登录发帖回复点赞,然后被网友们集体使用智慧手段给”测试”了.他做了个视频来公布,还是蛮搞笑的.
1.首先是他发现了一个注入,数据量达到6M无法加载下一页,听到这里我以为是什么注入script或者评论的数据太大导致无法加载,后来他看了看才发现,是有个人把自己的昵称改为了 toolongtoolongtoolongtoolongtoolongtoolongtoolongtoolongtoolongtoolongtoolong***
就这个昵称达到3.4M的长度,然后他又回复了自己,就出现了大于6M的数据,然后就加载失败了.
分析:这么看,其实是他偷懒没设置昵称长度限制,后台没校验,或者说数据库里面也没设置字段长度限制.这个一般不大会出现,作者也承认自己偷懒了.
2.然后是他这个回复什么的如果是自己的回复是可以删除的,但是他发现有个回复自己删不掉,查了一下才发现是那个人把自己的昵称和头像弄得和管理员一模一样,导致他误认为是自己的回复了.
分析: 这个问题可以采取使用昵称检查限制来避免,或者借鉴微博的那种加认证V来避免,因为管理员肯定要显示一个不一样的图标出来,进行区分.
3.有人给他截图一个ddos攻击,然后他一看,嘿,攻击地址写错了,攻击歪了!哈哈哈
他应该还有蛮多这种系列的东西,挺搞笑的,也挺好玩,玩中带学,不错不错!
针对网站的安全防范,我这里简单的总结几点,欢迎补充
1.网站权限控制住,不该有的权限一律降低至最小权限,禁止777权限的出现.
2.登录密码之类的一定要加密加盐,避免随机猜中.
3.有风险的地方采用验证码,降低攻击频次.
4.绝对要求验证的地方可以不使用图形验证码,而采用B站的那种考题形式,题目千变万化,采用中华文化思维的阅读理解,避免机器人工智能识别打破.
5.需要安全的地方避免直接写入文件,即使写入,也要避免该文件被下载,即使下载,也要避免该文件是明文.(可采用网站自己定义的加密解密手段来读取该文件)
6.对提交信息进行长度限制,字符限制,关键字限制,图片限制,script限制,SQL注入关键字限制,当发现这种特殊字符,一律不允许提交.
7.对活跃异常的提交进行IP限制,对无法控制总数的地方进行最高频次限制,比如一天限制顶多留言1000次(避免自己库被打挂了)
8.严格区分有权限人员和无权限人员的显示控制,避免出现混乱.
9.严格校验参数传参,不符合格式的一律拒绝,发现拒绝频次太高,可以参考手机那种解锁限制,让他歇个三五分钟,再搞错就歇个五六小时,严重警告后不听劝阻,封个十年八年.
10.后端接口自己拿数据的时候也要再校验一遍,不符合规律的不拿,危险的不拿.
11.网站能静态化就静态化,避免动态脚本出现.
12.前台用户使用的数据库连接帐号搞个最低权限,尽量只读.需要插入数据的地方用接口校验,层层把关去除攻击风险.
13.后台帐号登录等使用固定IP限制或者内网限制,避免有人从外面登录进去了,或者搞个短信验证码或者邮件验证码才能进的那种,每用5分钟让你输入一次正确密码和校验口令.
14.采用只有管理员知道的问题信息来考验当前操作用户是否是真正的管理员,证明你是你,而不是别人或者克隆人.
好了就写到这里吧,后面越搞越变态了,哈哈哈!
原文链接:https://www.cnblogs.com/lizhaoyao/p/15851931.html
原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/18260