题前:这篇文本来是想发到科来论坛下的(带有目的性),结果科来论坛已经完全沉寂、管理员失踪,我发的帖子审了两个月也没审完,极度失望,感觉白写了。不过好歹也花了一番心血,原文贴到51CTO博客,懒得修改了。
背景:运维的某网站,本地已配备360旗下网神公司的WAF设备。因最近网络安保形势严峻,为加强网络安全防护能力,开始试用某云WAF系统(将域名解析地址指向云WAF系统地址,由云WAF系统负责摆渡),期间发现少量用户无法登陆,原因不明。切回本地后故障依旧,但据网站管理员反映,清除浏览器缓存或更换浏览器后即可正常访问。
接到反馈后,因故障无法重现且暂未发现可供搜集信息的用户电脑,现场工程师未能提供更多有价值的信息,难以确定具体故障原因。因网站访问量小且故障不明显,因此留待故障重现后解决(一部分不可曰的原因是懒)。几日后接到本地用户反馈,开始做工。
排测过程:
经用户电脑测试,使用常用的360浏览器访问完全无响应,找出IE浏览器后访问正常(为什么要找?这要问360安全卫士)。
初步判断为访问被WAF系统拦截。
先PING域名,发现网站域名指向本地系统,由此排除云WAF直接拦截可能。
登陆本地WAF设备,发现用户设备访问被拦截记录,拦截原因为跨站脚本***。故障原因找出。
题外话:朋友们这时肯定会非常疑惑,那为什么之前没有出现这个故障呢?难道经云WAF切换后会出现这种灵异事件?这时候管网络的工程师解释说,本地WAF上线时,防护的其他网站某些正常访问会被此WAF跨站脚本***规则集下的某几条规则拦截,当时为保障系统正常运行直接剔除了这几条规则,现因网络安保原因,试用云WAF系统前一周已经重新启用这几条规则,可能因网站访问量小之前并未发现异常。顺带说下,这个管网络的就是本人,故障原因找出前完全忘了这回事。自责三秒钟,然后开始抱怨,做工太杂太杂太杂真的会死人啊,记忆力严重衰退,日后必定会老年痴呆。
好了,说回正题。故障原因找到了,怎么解决呢?再次剔除这几条规则实在是不符合本人职业素养,那就只能继续深挖故障原因了。
用户无法访问是因为被WAF拦截,那,为什么会被拦截呢?
查看WAF拦截日志,除拦截规则外无任何其他异常信息。只能去现场抓包了。这时候隆重推荐下所用的网络抓包软件:科来网络分析系统 10 技术交流版。没钱买专业版的,幸好技术交流版也已经够用了(如此大力推荐,只望科来官方人员见到此贴后能让我以巨优惠价购买正式版过过瘾)。
打开科来网络分析系统 10 技术交流版,进入实时分析界面,点击开启按钮进入抓包分析界面后,先开360浏览器,直接访问域名,页面无法打开,访问域名下的/INDEX.DO页面,仍然无法打开;然后开IE,两个页面均访问正常,点击停止按钮结束抓包。
在分析界面中点击TCP会话栏,在过滤输入框中输入网站域名进行过滤,然后按发包时间进行排序,结果截图如下:
点开查看访问失败的记录,发现TCP连接正常建立后,访问请求无法送到服务器端,一直在不停重传,截图如下:
而访问正常的记录截图如下:
由此可见,访问网站的第一个请求就已经被WAF拦截。接下来对比两个请求包的参数差异。
以下是访问被拦截的交易请求参数截图:
以下是访问正常的交易请求参数截图:
经对比,两个交易只有携带的COOKIES参数有显著差异:
被拦截的COOKIES参数:
Cookie: UM_distinctid=15e78eb321b81-05b400905-4349052c-1fa400-15e78eb321e305; _gscu_264088535=05267233ghc0ek25; __guid=188558254.4450887942645648000.1505720364652.8474; CNZZDATA1254021662=1759409609-1505716920-http%253A%252F%252Fwww.XXXX.gov.cn%252F%7C1505716920
访问正常的的COOKIES参数:
Cookie: JSESSIONID=F91BD6BBF20E7FEF70066DD1CBB86819; CNZZDATA1254021662=2125437701-1505264969-%7C1505976274; _gscbrs_264088535=1; UM_distinctid=15ea368883f9b-07964ba146a25f4-19704f6e-1fa400-15ea36888401c6; _gscu_264088535=05980090ml7lf511; _gscs_264088535=05980090gjxj3h21|pv:5
由此可以看出:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。