JDSRC安全课笔记

JDSRC安全课笔记

💡 原文中文,约10200字,阅读约需25分钟。
📝

内容提要

该文为安全技术笔记,涵盖逻辑漏洞挖掘、BurpSuite插件开发、SRC信息收集及跨域安全。重点介绍认证缺失漏洞成因与检测流程,插件开发接口用法,被动/主动信息收集方法(如DNS、证书、搜索引擎),以及JSONP劫持和CORS误配置等跨域风险及防护建议。

🔎

延伸解读

逻辑漏洞的成因与检测思路

文章指出认证缺失和认证缺陷漏洞主要源于上线前未做好认证处理或权限控制不到位。检测时可通过域名信息收集、站点爬取、规则分析与提取、批量结果分析四个环节快速发现。这提示安全测试人员应重视功能级访问控制,并利用自动化工具提高检测效率。

BurpSuite插件开发的价值

通用工具难以满足特定业务需求,而基于业务抽象出的漏洞模型在自身站点往往具有通用性。通过开发BurpSuite插件,可批量扫描同类问题,更全面发现漏洞。文章以Python环境为例,介绍了关键接口如IBurpExtender、IExtensionHelpers、IHttpRequestResponse的使用,为安全人员提供了开发参考。

SRC信息收集的实用方法

被动信息收集包括DNS、证书、搜索引擎、备案信息等渠道,可有效梳理企业资产。例如通过whois反查关联注册者其他站点,利用证书透明度站点获取子域名,使用Google Hacking查找敏感文件。主动收集则关注三级、四级域名,这些防护往往薄弱,可结合工具进行爆破和存活探测。

跨域安全风险与防护要点

JSONP和CORS是常见的跨域实现方式,但存在安全风险。JSONP劫持可导致敏感信息泄露,需对返回数据脱敏并设置正确的Content-Type。CORS误配置如Access-Control-Allow-Origin设置不当,可能被利用获取数据。开发者应严格校验Origin,避免使用通配符,并注意预检请求的绕过风险。

Q&A

逻辑漏洞中的认证缺失和认证缺陷漏洞是什么?

认证缺失和认证缺陷漏洞主要指功能级访问控制缺失,导致任意增删改查用户信息。常见成因是上线前未做好认证处理或权限控制不到位。

如何快速发现认证缺失漏洞?

可以通过四个环节快速发现:域名信息收集、站点信息爬取、规则的分析与提取,以及批量处理结果分析与展示。

为什么需要独立开发BurpSuite插件?

因为通用化工具无法完全符合特定需求,且逻辑漏洞种类多,一个业务的逻辑漏洞模型难以在其他业务批量处理,但在自身站点往往具有通用性,因此需要根据业务需求开发插件批量扫描。

BurpSuite插件开发中如何配置Python环境?

在MacOS上使用brew install jython安装Jython,然后在BurpSuite的Extender -> options -> python Environment中导入下载好的jython jar包。

BurpSuite插件开发中IBurpExtender接口的作用是什么?

IBurpExtender是BurpSuite插件的入口,所有插件开发都必须实现它,并实现registerExtenderCallbacks方法,通过callbacks参数获取核心基础库,如日志、请求、返回值修改等。

SRC信息收集中被动信息收集包括哪些方面?

被动信息收集包括DNS信息收集、HTTPS证书信息、搜索引擎、网络空间安全搜索引擎、基于备案资料信息收集等。

如何利用HTTPS证书进行子域名信息收集?

可以通过证书透明度站点如certspotter.com和crt.sh查询,或使用脚本crtFetch -d example.com获取子域名信息,脚本可清洗出单域名SSL证书和通配符SSL证书。

JSONP劫持是什么?如何防护?

JSONP劫持是指通过JSONP方式传输敏感信息时,攻击者利用回调函数获取数据。防护措施包括对返回数据脱敏,尤其是姓名、身份证号、手机号等敏感信息只保留部分字符。

CORS误配置会导致哪些安全问题?

CORS误配置可能导致:1)Access-Control-Allow-Origin误配置获取敏感数据;2)允许跨域但正则可绕过;3)绕过预检请求的写操作CSRF。

如何绕过CORS预检请求进行CSRF攻击?

如果应用B未校验Content-Type,可通过XMLHttpRequest设置Content-Type为text/plain,从而绕过预检请求,携带cookie发送请求到B的服务端。

🏷️

标签

➡️

继续阅读