原创作品,未经Julian 本人授权不得转载,侵权必究。
开篇先附上一首应景的诗--《金缕衣》 杜秋娘
劝君莫惜金缕衣,劝君惜取少年时。
花开堪折直须折,莫待无花空折枝。
大家肯定猜到了。是的,哥最近乘着清明踏青的好时节,约上妹子去野外摘花了。面对那各色各样的花朵,我突然想到,自己要励志做一个斜杠青年(Slash,大家百度一下就知道什么意思了。),就如同眼前这五颜六色的花朵般,要经常能“跨界”,比如说写得来文章、聊得来分享、讲得来培训,做得来项目、玩得转系统。我要成为妹子崇拜的学术“爱豆”。于是郊游的那晚,我没有浪费时间,让哄妹子睡下后,想到“春宵一刻值千金”,我马上掏出随身带的《网站安全攻防秘籍》,挑灯夜读,并做笔记。待到东方发白时,虽然吃看了不到三分之一,但我自觉有那么一丢丢的长进了,真是一个美妙的夜晚啊。
小长假回来后,我忙于投身于繁忙的日常工作中,仅能将阅读的比较简单整理如下,就算是在这里Mark一下,等日后再结合自己的实践和经验扩充分享给大家吧。当然如果有大拿愿意先走一步,来个精讲什么的。我在此提前奉上我的膝盖哦。
一。网站驻防
1.1 对输入的网站请求就行实时分析(包括各个特征字段,post-process分析等)
1.2 对输出的HTML数据添加额外的哈希值,以避免篡改。
1.3 安装OWASP的ModSecurity并配置核心规则集(CRS),进行通用攻击检测,包括静态和动态加权方式。
1.4 ET Snort(其规则为公共的通用软件中已知漏洞开发,识别针对已知漏洞的攻击)
1.5 贝叶斯分析方法检测攻击(自我学习调整阈值)
1.6 打开全量HTTP审计日志并写到不同的文件中
1.7 只记录有意义的请求
1.8 忽略静态资源的请求(一般静态资源,如图片文件的请求没有参数,被攻击的危险性降低)
1.9 在日志中屏蔽如登录密码、信用卡等敏感数据
1.10 使用Syslog把警告发送到中央日志服务器
1.11 搭建日志集中后的审计控制台(ModSecurityAuditconsole)
二。漏洞检测与修复
A. 网站外包开发合同存在着没有覆盖到安全漏洞的相关条款。功能性的缺陷修复会写入合同,而安全漏洞却没有。
B. 虚拟补丁:一个用于防护已知漏洞的虚拟安全策略实施层,不需修改程序代码,对请求进行分析和拦截。
2.1 被动识别漏洞(PVI),下载并导入一个OSVDB的漏洞数据库作为参照,检查字符集、HTTP头、Set-Cookie(服务端)、HttpOnly等。
2.2 主动识别漏洞 Arachni
2.3 手动修复漏洞(黑名单、白名单:在输入中查找特定字符--有漏洞的URL,注入点参数,用于攻击的元字符来建立虚拟补丁规则集
2.4 扫描结果自动转换(用Perl脚本把XML类型报告数据转换为虚拟补丁,以修复漏洞)
三。给黑客的陷阱
3.1 添加蜜罐端口(通过Apache的listen指令来添加处理HTTP请求流量的网络端口。因为这些端口没有实际作用,所以如果收到流量则为可疑)
3.2 针对网络爬虫,添加虚假的robot.txt的Disallow条目,以诱惑访问disallow的目录,并记录以便分析。制作假的认证机制和页面。
3.3 添加假的HTML注释
3.4 添加假的表单隐藏字段
3.5 添加假的cookie,并设置当该数据被修改时进行报警。
四。信用度与第三方信息关联
4.1 分析访问者的物理位置信息。通过将GeoIP的数据库GeoLiteCity集成到ModSecurity来实时分析。
4.2 识别出使用了跨境代理的可疑客户端。
4.3~4 借用现成的或是构建自己的黑名单(RBL)来识别恶意IP地址。
4.5 检测在用户填写信息内容里包含恶意的链接(挂马)并提交到网站上。恶意链接与跨站脚本攻击不同:其链接本身不会尝试直接攻击浏览器,而是指向了别的位置,在那里执行攻击者的利用代码。Google有提供类似的安全浏览(GSB)API从而帮忙判断网页里的链接。
话说春游回来后,由于工作忙碌,疏于和妹纸联系。昨日下班路上突然想起她,就微信之,她腼腆的没对上次出游作何comments,只是鼓励我多读书,末了,顺手推荐我一个某网红的“男人必看”视频。今天忙,我还没去看,哥主观臆测是类似马云的那些“不吃‘读书’,你要青春干嘛?”的鸡汤吧。