当前位置: 首页 > news >正文

2025年渗透测试面试题总结-2025年HW(护网面试) 03(题目+回答)

安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。

目录

 2025年HW(护网面试) 03

1. 同源策略(Same-Origin Policy)

2. XSS攻击用途

3. XSS类型与防御

4. 存储型XSS原理

5. XSS攻击本质

6. 快速定位XSS漏洞点

7. DOM型XSS原理/防御

8. DOM型 vs 反射型XSS

9. 前端Referer置空方法

10. Cookie关键参数

11. 未定位XSS的应急响应

12. XSS、CSRF、CRLF对比

13. CSRF不带Referer访问

14. CSRF防御方案

15. XSS蠕虫原理

16. Cookie的P3P性质

17. CSRF危害

 2025年HW(护网面试) 03

1、什么是同源策略
2、XSS 能用来做什么
3、XSS的三种类型,防御方法
4、存储型xss原理
5、你怎么理解xss攻击
6、如何快速发现xss位置
7、Dom xss 原理/防范
8、DOM型XSS与反射型XSS区别
9、如何使得前端 referer 为空
10、cookie参数,security干什么的
11、如果 SRC 上报了一个 XSS 漏洞,payload 已经写入页面,但未给出具体位置,如何快速介入
12、XSS, CSRF, CRLF比较容易弄混,说说三者的原理,防御方法
13、csrf 如何不带referer访问
14、CSRF 成因及防御措施;如果不用 token 如何做防御
15、Xss worm原理
16、Cookie的P3P性质
17、CSRF有何危害

1. 同源策略(Same-Origin Policy)

浏览器核心安全机制,限制不同源(协议+域名+端口)的脚本交互。例如:

  • ✅ 允许 https://a.com 访问同源资源
  • ❌ 禁止 https://b.com 通过脚本读取 a.com 的Cookie或DOM

2. XSS攻击用途

  • 窃取用户Cookie、会话Token
  • 钓鱼攻击(伪造登录框)
  • 网页篡改(如植入恶意广告)
  • 传播XSS蠕虫(如新浪微博蠕虫事件)
  • 键盘记录、内网探测

3. XSS类型与防御

类型原理防御措施
反射型XSS恶意脚本通过URL参数注入,服务端返回含攻击代码的页面输入过滤 + 输出编码 + CSP
存储型XSS攻击脚本存储到数据库(如评论区),所有访问者触发同反射型 + 富文本白名单(如DOMPurify)
DOM型XSS前端JS动态操作DOM时执行恶意代码(不经过服务端)避免 innerHTML,用 textContent;对 location.hash 等做校验

通用防御

  • 设置Cookie为 HttpOnly(防JS读取)
  • 启用CSP(Content Security Policy)限制脚本来源
  • 框架自动编码(如React的JSX、Vue的 {{ }}

4. 存储型XSS原理

攻击流程

mermaidgraph LR A[攻击者提交恶意脚本] --> B[脚本存入数据库] B --> C[用户访问含恶意内容的页面] C --> D[浏览器执行脚本→数据泄露]

案例:用户评论中插入 <script>stealCookie()</script>,所有查看评论者受害。


5. XSS攻击本质

利用Web应用对用户输入的信任,将恶意脚本注入合法页面,绕过同源策略执行未授权操作。


6. 快速定位XSS漏洞点

  • 输入点扫描:表单、URL参数、Cookie、Headers
  • 输出点检测
    • 使用 alert(1)<img src=x onerror=alert(1)> 等Payload测试
    • 观察是否弹窗或HTML解析异常
  • 工具辅助
    • 浏览器插件(如XSS Hunter、Retire.js )
    • DAST工具(如OWASP ZAP、Burp Suite自动扫描)

7. DOM型XSS原理/防御

原理

javascript// 漏洞代码 document.getElementById('output').innerHTML = location.hash.slice(1); // 攻击:http://site.com#<script>alert(1)</script> 

防御

  • 避免直接操作 innerHTML/outerHTML
  • 使用 encodeURIComponent() 处理动态内容
  • location/document.referrer 等来源做校验

8. DOM型 vs 反射型XSS

特征DOM型反射型
执行位置纯前端,不经过服务端服务端返回恶意脚本
可见性URL中#后的内容不发送到服务端完整URL参数发送到服务端
检测方式需前端代码审计可通过流量监控发现

9. 前端Referer置空方法

  • HTML标签
    html<meta name="referrer" content="no-referrer">
  • JS跳转
    javascriptwindow.location.replace('https://target.com'); // 部分浏览器生效 
  • Fetch API
    javascriptfetch(url, { referrerPolicy: "no-referrer" });

10. Cookie关键参数

  • Secure:仅通过HTTPS传输
  • HttpOnly:禁止JS访问(防XSS窃取)
  • SameSite
    • Strict:完全禁止跨站携带
    • Lax:允许GET导航跳转携带(默认)
    • None:允许跨站携带(需配合Secure)

11. 未定位XSS的应急响应

  1. 隔离攻击入口
    • 禁用用户内容发布功能
    • 回滚至未污染的数据版本
  2. 追踪Payload
    • 数据库搜索关键词(如 <script>javascript:
    • 审查所有用户输入渲染点(评论/私信/文件名等)
  3. 前端监控
    • 部署DOM断点调试可疑输出点
    • 启用CSP报告机制收集触发点

12. XSS、CSRF、CRLF对比

类型原理防御措施
XSS注入恶意脚本执行输入过滤+输出编码+CSP+HttpOnly
CSRF诱骗用户发起非意愿请求(如转账)Anti-CSRF Token+SameSite Cookie
CRLF注入回车换行符篡改HTTP头/响应体过滤 \r\n + 编码HTTP头字段

13. CSRF不带Referer访问

  • HTML页面
    html<iframe src="https://attacker.com" referrerpolicy="no-referrer"></iframe>
  • JS发起请求
    javascriptfetch('http://vuln.com/transfer', { method: 'POST', referrerPolicy: 'no-referrer' });

注意:部分浏览器仍会发送 Origin 头,需配合其他绕过手段。


14. CSRF防御方案

成因:浏览器自动携带Cookie发起请求,用户身份被冒用。
防御

  • 主流方案:Anti-CSRF Token(服务端生成并校验)
  • 无Token方案
    • SameSite Cookie:设为 StrictLax
    • 验证Origin/Referer头
      pythonif request.headers.get('Origin') not in ALLOWED_ORIGINS: abort(403)
    • 二次验证:敏感操作需密码/短信确认

15. XSS蠕虫原理

传播流程

mermaidgraph TB A[用户A访问含蠕虫页面] --> B[脚本自动发布含恶意代码的新内容] B --> C[用户B看到A的内容被感染] C --> D[用户B成为新传播节点]

案例:Samy蠕虫(MySpace,2005)通过AJAX自动添加好友并传播。


16. Cookie的P3P性质

作用:允许跨域iframe读写Cookie(已废弃)
风险

html<!-- 攻击者页面 --> <iframe src="https://bank.com"></iframe> <script> // 若bank.com 设置P3P头,攻击者可读写其Cookie </script>

现代浏览器已禁用P3P,替代方案为 SameSite 和 CORS。


17. CSRF危害

  • 资金损失:伪造转账、购物请求
  • 数据泄露:诱导修改邮箱/密码窃取账户
  • 系统破坏:删除数据、篡改配置(如路由器DNS设置)
  • 自动化攻击:利用用户权限发起批量操作
http://www.lryc.cn/news/573141.html

相关文章:

  • 智慧医院核心引擎:IBMS 系统守护医疗环境高效与安全​
  • 内容搜索软件AnyTXT.Searcher忘记文件名也能搜,全文检索 1 秒定位文件
  • Python中字符串常用的操作方法
  • mysql导入大sql(比如10GB的sql文件)
  • 开源AI智能名片链动2+1模式S2B2C商城小程序:破解微商代理模式困局的数字化创新路径
  • MySQL存储引擎与架构
  • 在AI普及的大环境下神经网络在新能源汽车热管理系统中的应用简介
  • CLion开发Qt桌面程序_git的简单使用_小团体
  • opencv try-catch
  • day38-Django(4)
  • AI大模型学习之基础数学:高斯分布-AI大模型概率统计的基石
  • 自定义Django rest_framework中response的示例
  • 一个小BUG引发的对Mybatis-Plus的模糊查询的思考
  • 基于机器学习的侧信道分析(MLSCA)Python实现(带测试)
  • 从代码学习深度学习 - 预训练BERT PyTorch版
  • flutter环境变量记录
  • 为WIN10微软输入法的全角切换Bug禁用Shift+Space组合键
  • 软件工程概述知识点总结
  • (LeetCode ) 169. 多数元素(哈希表 || 二分查找)
  • python学智能算法(十五)|机器学习朴素贝叶斯方法进阶-CountVectorizer多文本处理
  • C++链表的虚拟头节点
  • Wire--编译时依赖注入工具
  • Java面试题025:一文深入了解数据库Redis(1)
  • 4.1 FFmpeg编译选项配置
  • 缓存与加速技术实践-Kafka消息队列
  • ARCGIS国土超级工具集1.6更新说明
  • 【RAG优化】深度解析开源项目MinerU:从PDF解析到多模态理解的工业级解决方案
  • Linux - 安装 git(sudo apt-get)
  • PostgreSQL/Hologres 外部服务器系统表 pg_foreign_server 详解
  • 基于 Flutter+Sqllite 实现大学个人课表助手 APP(期末作业)