2025年渗透测试面试题总结-匿名[校招]安全研究员(SAST方向)(题目+回答)

article/2025/9/7 21:56:40

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

目录

 匿名[校招]安全研究员(SAST方向)

一面问题回答框架

1. 自我介绍

2. 简历深挖(漏洞挖掘)

3-4. SAST与IAST对比

5. 污点分析(Taint Analysis)

6-7. DevSecOps vs SDL

8. 学习方向规划

9-10. 技术栈与工具偏好

11. 白盒审计思路

12. 自动化工具开发

二面问题深度回答

1. Java反序列化漏洞

2. 白盒审计工具原理

3. 域控攻击方式

4. MS14-068(CVE-2014-6324)

5. 黄金票据 vs 白银票据

6-7. IAST与污点跟踪的结合

8. 语言栈(Java/Go)

 匿名[校招]安全研究员(SAST方向)

### 一面问题1. 自我介绍
2. 根据简历问(主要是挖洞方面)
3. 对SAST的理解
4. 对IAST的理解
5. 污点分析
6. 对DevSecOps的理解
7. 对SDL的理解
8. 后面的发展规划(学习方向)
9. 目前掌握的语言栈怎么样?愿意去学习新的语言吗?
10. 对SAST和IAST中哪个更感兴趣
11. 讲讲白盒审计的思路
12. 有写过相关的自动挖掘工具吗### 二面问题1. Java反序列化
2. 了解哪些白盒审计的工具,知道原理吗
3. 域控的攻击方式
4. MS14-068的原理
5. 黄金和白银票据的利用及其效果,原理层面
6. IAST
7. 污点跟踪
8. 候选人的语言栈:java和go

一面问题回答框架


1. 自我介绍
  • 核心逻辑:技术背景 + 安全领域深耕方向 + 成果亮点
    示例:
    “我是XX,主攻应用安全方向,有X年漏洞挖掘和代码审计经验,主导过XX系统SDL落地,发现过XX高危漏洞(如Fastjson反序列化、Shiro权限绕过等)。擅长SAST/IAST工具集成,熟悉污点分析技术,曾用Python/Go开发自动化审计工具提升漏洞检出率30%。”

2. 简历深挖(漏洞挖掘)
  • 回答策略漏洞类型 + 技术链 + 影响 + 修复建议
    示例:
    • 漏洞案例:某系统未授权访问漏洞(技术细节:JWT令牌未校验签名,通过Burp篡改权限字段实现越权)。
    • 方法论:黑盒测试结合流量抓包,白盒审计定位到鉴权模块代码缺陷。
    • 延伸:总结同类漏洞模式(如接口路径/api/admin*未鉴权),推动开发规范整改。

3-4. SAST与IAST对比
维度SASTIAST
原理静态代码扫描,基于规则匹配运行时插桩,动态追踪数据流
优点早期介入,覆盖全代码低误报,精准定位漏洞触发点
缺点误报率高,无法检测环境依赖问题依赖测试覆盖率,需部署代理/Agent
工具举例Fortify, CheckmarxContrast, 洞态IAST

5. 污点分析(Taint Analysis)
  • 流程四步法
    1. 污染源定义:用户输入(如HttpServletRequest.getParameter() )。
    2. 传播跟踪:函数调用链(如参数传递、字符串拼接)。
    3. 净化点识别:过滤函数(如ESAPI.encoder().encodeForSQL() )。
    4. 漏洞判定:未净化的污染数据到达敏感函数(如executeQuery())。
  • 进阶难点:上下文敏感分析(如循环、条件分支)、误报优化。

6-7. DevSecOps vs SDL
维度DevSecOpsSDL
核心思想安全左移,自动化流水线集成全生命周期阶段性安全管控
实施重点CI/CD中嵌入SAST/IAST/DAST工具链需求阶段威胁建模,设计阶段安全评审
文化差异开发/运维/安全团队协同安全团队主导,流程强管控

8. 学习方向规划
  • 短期:云原生安全(K8s RBAC、Service Mesh策略)、IAST工具原理深度研究。
  • 长期:AI辅助漏洞挖掘(如CodeQL结合图神经网络)、ATT&CK攻击模拟技术。

9-10. 技术栈与工具偏好
  • 语言栈:Java(代码审计/漏洞复现)、Python(PoC编写)、Go(工具开发)。
  • SAST/IAST倾向IAST(理由:更贴合DevSecOps实时检测需求,误报率低,适合云原生环境)。

11. 白盒审计思路
  • 五步法
    1. 架构分析:梳理组件交互(如Spring MVC控制器 -> Service层 -> DAO)。
    2. 入口定位:HTTP API、文件解析、RPC接口。
    3. 敏感函数回溯:如ObjectInputStream.readObject() (反序列化)、Runtime.exec() (命令执行)。
    4. 数据流验证:结合污点分析,确认用户输入是否直达漏洞点。
    5. 历史漏洞模式匹配:比对已知漏洞(如Log4j2 JNDI注入)。

12. 自动化工具开发
  • 示例项目:基于AST的Java反序列化Gadget扫描工具。
    • 技术点:ASM字节码解析、调用图(Call Graph)构建、Gadget链模式识别。
    • 效果:自动化识别InvokerTransformer等危险调用,辅助人工审计效率提升50%。

二面问题深度回答


1. Java反序列化漏洞
  • 原理:不可信数据触发readObject(),利用反射调用Gadget链(如TemplatesImpl.getOutputProperties() 加载恶意字节码)。
  • 关键点
    • Gadget构造:Apache Commons Collections的TransformedMap链。
    • 绕过防御:JRMP绕过CC链黑名单。
  • 防护:反序列化白名单(如Hessian的AllowClass)、JEP 290机制。

2. 白盒审计工具原理
  • Fortify:基于词法分析(Lexer)和语义规则(如“未加密的HTTP通信”)。
  • Checkmarx:生成抽象语法树(AST),数据流追踪。
  • Semgrep:模式匹配(如正则表达式\$.*?\{.*?\}检测模板注入)。

3. 域控攻击方式
  • 黄金票据:利用KRBTGT的NTLM Hash伪造TGT,访问任意服务。
  • 白银票据:利用服务账户Hash伪造ST,仅访问特定服务(如LDAP)。
  • DCSync:模拟域控制器,通过DRSUAPI协议拉取用户Hash。

4. MS14-068(CVE-2014-6324)
  • 漏洞点:Kerberos PAC校验逻辑缺陷,允许普通用户构造包含管理员权限的PAC。
  • 利用链kekeo工具生成高权限TGT -> 提权至域管理员。

5. 黄金票据 vs 白银票据
维度黄金票据白银票据
依赖信息KRBTGT的NTLM Hash服务账户的NTLM Hash
权限范围全域权限仅特定服务(如CIFS、LDAP)
检测难度高(需监控KRBTGT变更)低(服务日志可发现异常访问)

6-7. IAST与污点跟踪的结合
  • 插桩技术:Java Agent修改字节码,在关键函数(如String.concat() )插入探针。
  • 动态污点:标记用户输入为污染源,在数据库操作/命令执行时检查污染状态。
  • 挑战:性能优化(如采样降低开销)、多线程环境数据隔离。

8. 语言栈(Java/Go)
  • Java:代码审计(Spring/Struts2漏洞)、RASP工具开发(如基于Java Agent的防护)。
  • Go:云安全工具开发(如K8s准入控制器)、高并发扫描器(协程池优化)。

http://www.hkcw.cn/article/jPdRPqZPNa.shtml

相关文章

基于Java,SpringBoot,Vue,UniAPP医院预约挂号买药就诊病例微信小程序系统设计

摘要 随着医疗信息化的不断推进以及“互联网医疗”模式的广泛普及,传统医院挂号流程中存在的排队时间长、资源分配不均等问题日益凸显,急需通过数字化手段加以解决。本研究设计并实现了一套基于Java、SpringBoot、Vue与UniAPP技术栈的医院预约挂号微信小…

制作一款打飞机游戏62:添加音效

添加音乐 今天,我们要添加音乐。 首先,打开包含音轨的文件夹,然后使用文本编辑器打开cowshrub文件。接着,打开捐赠卡,复制其中的音乐和音效数据,粘贴到cowshrub文件中,替换原有的音效块&#…

WPF log4net用法

WPF log4net用法 一、在工程中管理NuGet程序包,找到log4net,点击安装,如下图已成功安装; 二、在工程中右键添加新建项,选择应用程序配置文件(后缀为.config),然后设置名称,这里设置…

视频监控管理平台EasyCVR安防监控小知识:视频监控AI智能分析的常见部署方式有哪些?

一、方案背景​ 随着视频监控技术迭代,AI智能分析成为提升系统价值的核心。通过实时处理视频流辅助决策,广泛应用于智慧社区、园区等场景。由于AI算法部署方式多样且各有适用场景,因此合理选择部署方式是项目成功的关键。 二、主流AI算法部署…

5G RedCap是什么-与标准5G的区别及支持路由器推荐

技术背景与重要性 从智能穿戴到工业传感器,物联网设备种类繁多,但并非所有设备都需要标准5G的全部功能。为满足这些中端应用的需求,3GPP在Release 17中引入了5G RedCap(Reduced Capability),也称为5G NR-L…

vmware虚拟机固定IP

vmware虚拟机固定IP vmware虚拟机端设置 vmware 设置nat模式 打开设置“网络和Internet”,点击“更改适配器选项”,点击适配器VMnet8,修改IP和DNS相关配置 虚拟机端设置 root用户登录虚拟机,输入命令: vi /et…

据传苹果将在WWDC上发布iOS 26 而不是iOS 19

苹果可能会对其操作系统的编号方式做出重大改变,基于年份的新版系统会将iOS 19重新命名为 iOS 26,同时 macOS 也会以同样的方式命名。 苹果的编号系统相当简单,版本号每年都会像钟表一样定期更新。然而,今年秋天情况可能有所不同&…

【深度剖析】义齿定制行业数字化转型模式创新研究(上篇2:痛点和难点分析)

数字化转型正在重塑义齿行业的生态格局,但也面临技术融合与模式变革的深层挑战。当前,义齿定制行业正处于从传统手工制造向全流程数字化制造转型的关键阶段。3D扫描、CAD/CAM(计算机辅助设计与制造)、3D打印等技术的广泛应用,显著提升了义齿制作的精度和效率。传统石膏模型…

英语学习5.29

主语 be动词 the first to do sth ✅ 例句解析: He was the first to arrive at the meeting. 他是第一个到会议现场的人。 Zhai Zhigang was the first Chinese astronaut to walk in space. 翟志刚是第一个进行太空行走的中国宇航员。 She is the first in h…

【从零开始学习QT】快捷键、帮助文档、Qt窗口坐标体系

目录 Qt Creator 中的快捷键 使用帮助文档 Qt 窗口坐标体系 QT专栏:QT_uyeonashi的博客-CSDN博客 Qt Creator 中的快捷键 • 注释:ctrl / • 运行:ctrl R • 编译:ctrl B • 字体缩放:ctrl 鼠标滑轮 • 查找&am…

docker网络相关内容详解

一、docker与k8s 一、Docker 核心解析 1. Docker 定义与架构 本质: 容器化平台(构建容器化应用)、进程管理软件(守护进程管理容器生命周期)。客户端(docker cli)与服务端(docker ser…

制造企业生产数据分析全解析:5大类数据定义、分析方法与落地指南

在制造业精细化管理需求日益迫切的背景下,生产数据分析成为破解效率低下、成本高企、质量波动等难题的关键。本文系统解析制造企业生产数据的核心类别、分析逻辑及落地路径,提供从数据采集到决策优化的全流程方法论。 文章首先阐明生产数据分析的核心价…

C# 类和继承(屏蔽基类的成员)

屏蔽基类的成员 虽然派生类不能删除它继承的任何成员,但可以用与基类成员名称相同的成员来屏蔽(mask) 基类成员。这是继承的主要功能之一,非常实用。 例如,我们要继承包含某个特殊方法的基类。该方法虽然适合声明它的…

C语言——数组

一、数组的概念 数组是一组相同类型元素的集合;从这个概念中我们就可以发现2个有价值的信息: (1)数组中存放的是1个或者多个数据,但是数组元素个数不能为0。 (2)数组中存放的多个数据&#xff…

Flink

文章目录 Flink1.Flink简介2.为什么选择Flink2.1 传统数据处理架构2.2 大数据Lambda架构2.3 流处理架构2.4 Flink是理想的流计算框架2.5 Flink的优势 3.Flink应用场景3.1 事件驱动型应用3.2 数据分析应用3.3 数据流水线应用 4.Flink技术栈5.Flink体系架构 Flink 1.Flink简介 …

使用C# 快速删除Excel表格中的重复行数据-详解

目录 简介 使用工具 C# 删除Excel工作表中的重复行 C# 删除指定Excel单元格区域中的重复行 C# 基于特定列删除重复行 RemoveDuplicates 方法快速比较 简介 重复行是指在Excel表格中完全相同的多行数据。这些冗余行的存在可能源于多种原因,例如: …

OpenCv高阶(十九)——dlib关键点定位

文章目录 一、什么是人脸关键点定位?二、关键点模型的下载及关键信息的理解三、dlib关键点定位的简单实现(1)导入必要的库(2)从指定路径读取图像文件(3)创建dlib的正面人脸检测器对象&#xff0…

【Java】线程池的实现原理是怎样的?CPU密集型任务与IO密集型任务的区别?

一、CPU密集型与IO密集型任务 1.CPU密集型任务(CPU-bound) 定义:需要大量CPU计算资源,大部分时间都在进行运算的任务。 这类任务的特点是计算量大,CPU占用率高。 特点: 主要消耗CPU资源执行速度取决于CPU的计算能力通常涉及复…

【QT】理解QT的“元对象系统”

目录 前置知识: (1)C运行时多态 (2)RTTI QT的元对象系统 1.元对象系统基本内容 2.元对象代码 3.元对象系统其它特性 前置知识: (1)C运行时多态 C的运行时多态是由虚函数和继…

Windows Server 2019--10 网络地址转换

本章要点 了解 NAT 技术的核心原理。掌握 NAT 技术的应用。掌握 NAT 网关的配置。 IP 地址分为两类,分别是私有IP地址(Private IP)与公用IP地址(Public IP)。 位于内部网络中的计算机使用的是私有IP地址,其不需要向IP地址发放机构提出申请。私有IP地址…