3. 常见漏洞原理与利用:SQL注入、XSS、SSRF、命令执行

本章聚焦渗透测试平台工程师面试中最高频的四大漏洞:SQL注入、XSS、SSRF、命令执行。面试官不仅考察你是否背过“原理”,更关注你能否在业务场景中定位触发条件、构造payload、评估危害、输出修复方案。下面用“四步法”框架帮你建立结构化回答习惯。

漏洞面试回答四步法框架 ①漏洞原理 ②触发场景 ③攻击载荷 ④修复方案 数据类型/语法上下文 用户输入点/反射点 payload构造/绕过 转义/白名单/过滤 加分点:结合具体业务场景(如参数来源、WAF绕过、业务逻辑) 面试官期待看到你对同一漏洞在不同场景下的差异化分析

面试问答卡片

🧩 面试问题1:请详细解释SQL注入的原理,并给出一个带防御的简短示例。

面试官考察点①是否理解“把用户输入拼接到SQL语句”的本质;②能否说出字符型/数字型/报错/盲注等分类;③能否顺手写出预处理语句代码。
回答框架原理(拼接+执行)→ 分类(CHAR/INT/布尔盲注)→ 攻击载荷(' OR 1=1 -- )→ 防御(参数化查询/ORM)。
简短示例回答SQL注入产生于未转义的用户输入直接拼入SQL。例如登录处输入 admin' OR '1'='1,绕过认证。防御使用预编译:PreparedStatement.setString() 或 ORM的绑定参数。
可能追问①MySQL和Oracle报错注入的区别?②二次注入如何利用?③order by注入如何绕过?
避坑提醒不要只背概念,面试官会刁难“字符串转义是否足够安全”——要主动说出预编译才是王道。

🧩 面试问题2:XSS有哪几种类型?如何区分?列举一条防御措施。

面试官考察点①是否清晰区分反射型/存储型/DOM型;②是否知道CSP和httpOnly cookie;③能否给出实际场景下的输出编码方案。
回答框架分类(三种)→ 存储型危害最大 → 攻击载荷()→ 防御(输出编码 + CSP)。
简短示例回答反射型:URL参数直接返回页面,如 ?q=;存储型:评论框写入后持久化;DOM型:前端动态拼接innerHTML。防御:对所有输出做HTML实体编码,配置Content-Security-Policy。
可能追问①如何绕过CSP?②富文本场景怎么处理?③XSS与CSRF配合攻击路径?
避坑提醒容易忘说httpOnly:虽然不能防御XSS注入,但能减少cookie盗取的危害,请主动提及。

🧩 面试问题3:SSRF漏洞的原理是什么?在渗透测试平台中如何利用?

面试官考察点①是否理解“服务端发起请求”的特点;②能否举例内网/云元数据攻击;③是否了解SSRF常用协议(file/gopher/dict)。
回答框架原理(服务器代替攻击者请求)→ 常见场景(URL转发/图片处理)→ 攻击载荷(http://169.254.169.254/latest/meta-data/)→ 防御(URL白名单+协议限制)。
简短示例回答SSRF指攻击者控制服务器发起内网请求。例:图片上传功能接受URL参数,将http://internal:8080/admin改为file:///etc/passwd可读敏感文件。防御:白名单域名+禁止重定向+限制协议为http/https。
可能追问①SSRF搭配Redis未授权如何getshell?②如何判断SSRF请求是否出网?③cloud环境下元数据接口如何防护?
避坑提醒不要只提“禁止内网IP”——IP段黑名单很容易被16进制/八进制绕过,需要配合DNS解析校验。

项目案例模板:企业级Web安全漏洞扫描平台

项目名称:一站式渗透测试自动验证平台(漏洞引擎方向)

业务背景:安全团队需定期对30+业务线进行漏洞扫描,手工测试效率低,需要自动化平台覆盖SQL注入、XSS、SSRF、命令执行等常见漏洞。

规模指标:日扫描任务2000+,单次扫描覆盖5000+请求,漏洞误报率≤5%,召回率≥90%。

技术栈:Python + FastAPI + Celery + PostgreSQL + Redis + Selenium(DOM渲染)+ 自研Payload生成引擎。

核心难点:①SSRF场景下内网探测延迟高易超时;②存储型XSS需要模拟真实浏览器渲染;③SQL注入盲注场景下大量请求导致数据库压力。

面试高频追问:①如何降低误报率?(双引擎验证+上下文语义分析)②盲注场景如何优化?(采用二分法+并发控制)③SSRF如何绕过目标IP黑名单?(利用DNS绑定+A记录伪造)

可迁移回答话术:“在做SQL注入检测时,我们不仅依靠语法解析,还引入了语义级别的SQL树分析,将用户输入与AST节点关联,准确区分了误报和真漏洞。这套思路同样适用于其他包含结构化语法的漏洞检测。”

⚠️ 提示:项目案例不要只罗列功能,要突出自己解决的具体问题(如“如何把误报率从15%降到5%”),并带上指标和可迁移方法论。