文|宙斯盾流量安全分析团队
彦修
引子
提到Web指纹识别,大家并不陌生,相关的项目汗牛充栋,比如知名的Wappalyzer、WhatWeb等。而在运营上,各企业也都大同小异,利用提前构建好指纹库,通过对公司全域资产进行扫描实现对公司资产的摸底排查,当某些组件出现高危漏洞时,大家可以第一时间做到攻击面的迅速收敛。
但是本文所聊的Web应用组件,并不是单指指纹识别中的小组件,比如jQuery、Bootstrap等,更多是指这个站点较为独立的应用本身。
举个例子来说,一个站点是phpMyAdmin搭建的,虽然使用了jQuery,但是我们仍然将该Web应用组件归类为phpMyAdmin。
为何要进行这样的定义呢?这其实主要是为了解决高风险Web应用组件对外的问题,长期以来,我们运营中发现部分业务使用了诸如phpMyAdmin、Kibana、Eleastic Search等Web应用组件并直接对公网开放,而这些组件可能存在弱口令或者未授权,由此导致了安全事件,为了化被动为主动,所以我们联合应用安全团队一起维护了一份公司高风险Web应用组件黑名单,建议业务尽量避免使用此类组件,尤其是避免在公网开放。
众所周知,每一项措施的出现,其实都要伴随着不断的核查,否则其实是没有什么效力的。所以在运营上,我们通过公司自研扫描器洞犀的主动发现结合宙斯盾流量分析系统的被动发现实现对业务的高风险Web应用组件的运营,并获得了不错的效果。当然这部分非本文重点,不再赘述。
问渠那得清如许
在建设Web应用组件黑名单的时候,我们首先把历史上比较臭名昭著的高危组件囊括了进来。但是在后来实际运营中,我们发现一个比较棘手的问题,那就是黑名单的来源:
首先是通过一些外报安全事件中提取;
二是从一些安全通告中发现一些新Web应用组件;
三是AI识别管理后台策略的上线
(见《