网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
2025年渗透测试面试题总结-拷打题库10
1. CSRF成因及防御措施 | 非Token防御
2. XSS Worm原理
3. Cookie的P3P性质
4. CSRF危害
5. SQL注入类型
6. 参数化查询防注入原理
7. Redis未授权访问漏洞利用
8. SSRF漏洞 | Java与PHP差异
9. 宽字节注入原理与修复
10. JSONP劫持与CSRF Token设计
11. CORS原理与安全风险
12. CRLF注入原理
13. URL白名单绕过
14. XSS持久化实现
15. Fastjson/Log4j漏洞与修复
16. 业务逻辑漏洞类型
17. 账户状态风险
18. 明文传输风险
19. 水平越权触发点
20. 水平越权检测方式
21. 数字遍历 vs 账号互测优劣
22. 绕过灰色按钮限制
23. 流程绕过抽象归类
24. TLS1.2协议攻击方法
25. HTTP请求走私原理
26. DNSSEC应用场景
27. 域名解析至1.1.1.1影响
2025年渗透测试面试题总结-拷打题库10
CSRF成因及防御措施;如果不用token如何做防御? Xssworm原理 Cookie的P3P性质 CSRF有何危害? sql注入的几种类型? 为什么参数化查询可以防止sql注入? Redis未授权访问漏洞如何入侵利用? SSRF漏洞原理、利用方式及修复方案?Java和PHP的SSRF区别? 宽字节注入漏洞原理、利用方式及修复方案? 简述JSONP的业务意义,JSONP劫持利用方式及修复方案?如何设计落地一个CSRFToken? CORS原理、利用及修复? CRLF注入原理? URL白名单如何绕过? XSS持久化如何实现? Fastjson、Log4j常见漏洞原理?如何彻底解决该漏洞? 业务逻辑漏洞 业务逻辑漏洞有哪些具体类型? 哪些账户状态会导致预期外的风险? 身份标识明文传输会导致什么风险? 水平越权触发点会存在哪些位置? 水平越权有哪几种检测方式? 通过数字加减遍历或通过两个账号互测的方式进行水平越权测试有何优劣势? 某个APP的某个功能按钮是灰色不可用状态,如何绕过其限制? 流程绕过漏洞如何抽象理解归类? 常用协议漏洞 TLS1.2协议交互过程以及攻击方法? HTTP请求走私(HTTPRequestSmuggling)原理 DNSSEC能解决什么场景问题? DNS中(DS、PTR、TXT选其一)记录类型的常用作什么场景? 将暂时不用的域名解析到1.1.1.1有什么好处和坏处?
1. CSRF成因及防御措施 | 非Token防御
成因:
- 浏览器自动携带用户Cookie,攻击者伪造请求(如恶意链接、图片)诱导用户触发敏感操作。
防御措施:
- Token校验:请求中嵌入随机Token并验证。
- SameSite Cookie:设置
SameSite=Strict/Lax
限制跨域携带。- Referer检查:验证请求来源域名是否合法。
- 二次验证:敏感操作需密码/短信验证。
2. XSS Worm原理
机制:
- 利用存储型XSS漏洞,注入自传播脚本(如自动发送好友请求、消息),通过用户交互链式扩散(如Samy蠕虫)。
3. Cookie的P3P性质
作用:
- 跨域隐私控制:通过P3P策略声明隐私规则,允许第三方Cookie(如跨域单点登录)。
现状:Chrome等现代浏览器已废弃支持,依赖SameSite和CORS替代。
4. CSRF危害
- 账户劫持:修改密码、绑定攻击者邮箱。
- 资金操作:伪造转账、支付请求。
- 数据篡改:删除/修改用户数据(如邮件、文件)。
5. SQL注入类型
- 联合查询注入:
UNION SELECT
拼接数据。- 报错注入:触发数据库错误回显信息。
- 布尔盲注:通过页面真/假状态差异推断数据。
- 时间盲注:
SLEEP()
函数结合条件判断。- 堆叠注入:执行多条SQL语句(如
; DROP TABLE users
)。
6. 参数化查询防注入原理
- 预编译机制:将输入作为数据而非代码处理,SQL引擎提前解析语句结构(如
WHERE id = ?
),输入值无法改变语法逻辑。
7. Redis未授权访问漏洞利用
步骤:
- 连接目标Redis:
redis-cli -h 目标IP
。- 写入SSH公钥:
bash
config set dir /root/.ssh config set dbfilename authorized_keys set x "\n\nssh-rsa AAAAB3NzaC1yc2E..." save
- 通过SSH密钥登录服务器。
8. SSRF漏洞 | Java与PHP差异
原理:服务端发起未校验的外部请求(如URL参数读取内部服务)。
利用方式:
- 探测内网:
http://127.0.0.1:8080
。- 攻击Redis:Gopher协议发送命令。
修复:限制协议(禁用file://
、gopher://
),启用白名单。
差异:- PHP:
file_get_contents
默认支持更多协议。- Java:
URLConnection
需特定Handler启用Gopher。
9. 宽字节注入原理与修复
原理:GBK等宽字符集将
'
转义为\'
(%5C%27
),但%bf%5C
被解析为合法字符(如縗
),导致单引号逃逸。
Payload:id=%bf%27 UNION SELECT 1,2,3 --
修复:统一使用UTF-8编码,设置character_set_client=binary
。
10. JSONP劫持与CSRF Token设计
JSONP业务意义:跨域获取数据(如用户信息)。
劫持利用:构造恶意页面调用JSONP接口,窃取回调函数返回数据。
修复:
- Referer校验:仅允许信任域名调用。
- 随机Token:接口需携带Token验证来源。
CSRF Token设计:- 服务端生成随机Token,绑定用户会话。
- 前端表单/请求头携带Token,服务端校验匹配性。
11. CORS原理与安全风险
原理:通过
Access-Control-Allow-Origin
头授权跨域访问。
攻击场景:
Access-Control-Allow-Origin: *
允许任意域读取敏感数据。Access-Control-Allow-Credentials: true
导致携带Cookie跨域。
修复:严格限制授权域名,禁用通配符和Credentials。
12. CRLF注入原理
成因:未过滤
\r\n
,攻击者注入HTTP头或修改日志内容。
示例:
- 伪造响应头:
/path%0d%0aSet-Cookie: hacker=1
。- 日志污染:
/login%0d%0aLogin success user=admin
。
13. URL白名单绕过
方法:
- 域名变异:
evil.com?.trust.com
(利用解析特性)。- 进制编码:
http://127.0.0.1
→http://2130706433
。- 协议混淆:
http://trust.com@evil.com
。
14. XSS持久化实现
场景:
- 存储型XSS:恶意脚本保存至数据库(如评论、消息)。
- DOM型持久化:利用本地存储(localStorage)长期保留攻击载荷。
15. Fastjson/Log4j漏洞与修复
组件 漏洞原理 修复方案 Fastjson 反序列化自动调用 @type
类方法升级至2.x,禁用 autoType
Log4j2 JNDI注入( ${jndi:ldap://}
)升级至2.17.1+,移除JndiLookup类
16. 业务逻辑漏洞类型
- 验证绕过:短信验证码可暴力破解。
- 支付逻辑:篡改订单金额为负数。
- 密码重置:未校验用户身份直接修改密码。
- 竞争条件:并发请求重复领取优惠券。
17. 账户状态风险
- 未锁定机制:允许无限次密码尝试。
- 弱密码策略:默认密码或简单密码未强制修改。
- 会话残留:退出登录后Token未失效。
18. 明文传输风险
- 中间人攻击:窃取身份凭证(如密码、Token)。
- 日志泄露:敏感信息写入日志文件未脱敏。
19. 水平越权触发点
- ID参数:
/user?id=123
→ 修改为其他用户ID。- 订单号:替换订单号查看他人数据。
- 文件名:路径遍历访问他人文件(
/file?name=../user2.txt
)。
20. 水平越权检测方式
- 参数篡改:修改ID、订单号等标识符。
- Cookie替换:切换账户Cookie测试数据访问权限。
- 批量遍历:递增数字枚举资源(如
/api/user/[1-1000]
)。
21. 数字遍历 vs 账号互测优劣
方法 优势 劣势 数字加减遍历 覆盖全面,发现隐藏资源 效率低,易触发风控 账号互测 快速验证权限差异 需多账号,可能遗漏部分漏洞
22. 绕过灰色按钮限制
方法:
- 前端绕过:修改HTML属性(
disabled
→enabled
)。- 抓包重放:拦截请求,修改参数后重放。
- HOOK技术:通过Frida等工具篡改函数返回值。
23. 流程绕过抽象归类
- 步骤跳跃:直接访问后续流程接口(如跳过支付跳至订单完成)。
- 参数篡改:修改状态参数(如
status=success
)。- 条件竞争:并发请求绕过库存校验。
24. TLS1.2协议攻击方法
交互流程:
- ClientHello → ServerHello → Certificate → ... → Finished。
攻击场景:
- POODLE攻击:强制降级至SSL3.0利用CBC填充缺陷。
- BEAST:利用CBC模式预测初始化向量(IV)。
25. HTTP请求走私原理
成因:前后端服务器解析不一致(如
Content-Length
与Transfer-Encoding
冲突)。
利用:构造歧义请求走私恶意请求(如缓存投毒、权限绕过)。
26. DNSSEC应用场景
解决痛点:防止DNS缓存投毒(如伪造解析结果)。
DS记录用途:存储DNSKEY哈希值,用于验证域名的DNS记录完整性。
27. 域名解析至1.1.1.1影响
优点:
- 隐私保护:隐藏真实服务器IP。
- 快速下线:临时屏蔽访问入口。
缺点:- 信誉风险:可能被标记为恶意域名。
- 服务不可用:用户无法访问真实服务。