来源:https://github.com/graynjo/Heimdallr
介绍
Heimdallr是一款致力于被动嗅探浏览器流量,提示高危资产指纹和蜜罐特征,并进行拦截告警的谷歌插件,还可以用于对浏览器特征追踪(浏览器持久化、webRTC、Canvas画布等)的对抗。
项目由深蓝实验室天魁战队提供维护
-
GitHub release 下载插件最新编译版本 -
Chrome-扩展设置-开发者模式-加载已解压的扩展程序
使用
高危指纹识别规则103条,涉及框架或产品如下:
为了保证请求的最全面捕获,Heimdallr中不进行script请求和XMLHttpRequest请求这类的筛选,因此插件开启的情况下默认只进行蜜罐请求识别而不拦截,若开启蜜罐请求拦截会影响正常访问CSDN、Github等网站的正常访问,可以通过日常使用时暂停插件(控制-暂停/开启插件)或关闭蜜罐拦截功能(策略配置-蜜罐拦截配置)解决。
因部分框架或产品(如百度网站在线客服会调用5个json敏感域名、高德地图web嵌入会调用高德域名)的正常使用也会出现Jsonp敏感域名的访问,故同一站点的Jsonp请求超过10个时,基本可以确定为蜜罐站点,此时将会出现系统弹窗告警(弹窗需要操作系统开启浏览器弹窗权限,该权限默认开启)。低于10个的敏感域名请求,使用者可根据当前站点内容和告警域名的关联度进行判断,例如某个小企业官网可能调用百度商桥接口实现在线客服功能,但一般不会调用虎牙直播账号接口或联通一键登录热点溯源接口。
暂停插件后,会清空所有页面的嗅探结果集,关闭对请求和响应的监听,扩展功能中仅WebRTC防护功能不关闭,其他的功能都会随插件暂停而暂停。
扩展功能
启用响应体规则匹配
默认情况下,被动嗅探只对请求响应的URL、Request Header、Request Body、Response Header进行匹配,仅有较少部分高危指纹在Response Body中检测,开启该选项后会启用devtools调用chrome devtools protocol,检测Response Body中的指纹。但是启用该选项后会出现调试提示栏,如需关闭参考高级-4
关闭浏览器页面缓存(强制刷新)
部分包含特征规则的静态资源(如JS文件)会在一次调用后存储在磁盘中,减少重复加载耗费的流量和带宽。这会导致识别规则在重复刷新页面是不会重复触发。开启该选项后可以达到更完善的特征识别,这也可以防止部分情况下静态资源文件不能及时更新导致的访问异常
蜜罐拦截配置
符合蜜罐特征请求自动拦截
为保证能够识别、阻断部分新的Jsonp请求,插件按照请求域名进行拦截,这会导致开启该选项后访问部分日常网站(CSDN、GitHub等)会被阻断,影响日常访问。因此默认情况下插件不会拦截疑似蜜罐的Jsonp请求,需要手动开启拦截选项.日常网站被拦截也可以通过右上角的暂停插件按钮暂停,访问结束后重新启动插件。但是更建议的方式为日常使用浏览器和攻击使用浏览器分离开来,专事专用
特征对抗配置
WebRTC 防IP泄露严格策略
通过提高WebRTC策略严格度防止真实IP泄露,已知Chrome v104(截至2022.9.1)仍存在该漏洞,此选项可在并建议在日常使用时也开启 请勿将此策略与其他WebRTC防护插件(如WebRTC Control或WebRTC Leak Prevent)同时使用,各插件调节WebRTC策略会互相干涉,暂停其他插件的使用时的API调用也会影响Heimdallr的调节逻辑。
Canves噪点干扰脚本注入
建议场景设置:攻击期间开启,日常使用时关闭
通过对当前网页注入内容脚本增加Canvas画布噪点防止特征锁定,开启后所有网页访问时将会额外加载content.js用于画布类的函数hook操作
如有侵权,请联系删除
好文推荐