2025年渗透测试面试题总结-字某跳动-安全研究实习生(三面)(题目+回答)

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

目录

字某跳动-安全研究实习生(三面)

一、攻防演练经典案例分析

二、CSRF漏洞修复方案

三、Java代码审计流程

四、SQL注入防御体系

五、域名访问技术解析

六、登录页安全风险

七、安全工具开发实践


字某跳动-安全研究实习生(三面)

复制代码
聊聊攻防演练中比较得意,印象深刻的一次经历

CSRF漏洞修复

Java系统代码,审计流程

Java系统中的sql注入怎么做一个防御和修复

在浏览器中输入一个域名去访问时,浏览器做了什么

一个系统的登录页,通常可能出现什么漏洞

安全工具开发,waf/扫描器

一、攻防演练经典案例分析

某金融系统红队渗透实例

  1. 攻击路径:钓鱼邮件→员工终端沦陷→内网横向移动→Oracle数据库提权→核心交易系统控制
  2. 技术亮点
    • 使用Cobalt Strike的Office宏攻击载荷绕过邮件网关检测
    • 通过内存注入实现无文件驻留,规避EDR查杀
    • 利用TNS协议漏洞(CVE-2022-21501)完成数据库提权
  3. 防御绕过
    • 修改User-Agent头模仿爬虫流量
    • 使用域前置技术隐藏C2通信
    • 通过DNS隧道进行数据渗出

二、CSRF漏洞修复方案

Java系统多维度防护体系

  1. 同步令牌机制:java

    // Spring Security配置 http.csrf().csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse());

  2. SameSite Cookie策略:xml

    <session-config> <cookie-config> <same-site>strict</same-site> </cookie-config> </session-config>

  3. 验证Referer白名单(需配合HTTPS使用)

  4. 敏感操作二次认证(如交易密码验证)

三、Java代码审计流程

  1. 环境构建

    • 使用Jenkins+SonarQube搭建自动化扫描平台
    • 配置FindSecBugs、SpotBugs等静态分析工具
  2. 重点审计项

    • 反射调用点(Class.forName() )
    • 反序列化入口(readObject())
    • JNDI注入风险(InitialContext.lookup() )
    • 表达式注入(OGNL/SpEL)
  3. 典型漏洞模式 :java

    复制代码
    // 危险代码示例 String query = "SELECT * FROM users WHERE id = " + request.getParameter("id"); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(query); 

四、SQL注入防御体系

分层防护策略

层级 防护措施 示例
代码层 PreparedStatement String sql = "SELECT * FROM users WHERE id = ?";
框架层 MyBatis参数映射 <select id="getUser" parameterType="String" resultType="User">
数据层 存储过程调用 {call getUserInfo(?)}
运维层 数据库防火墙 设置SQL语法白名单规则

五、域名访问技术解析

浏览器处理流程

  1. 缓存查询

    • 浏览器缓存 → 系统hosts文件 → DNS缓存
  2. 递归查询 :mermaid

    复制代码
    graph LR 本地DNS-->根DNS 根DNS-->顶级DNS 顶级DNS-->权威DNS
  3. 连接建立

    • TCP三次握手(SYN→SYN-ACK→ACK)
    • TLS1.3握手(ClientHello→ServerHello→Finished)
  4. 资源处理

    • 预解析DNS(dns-prefetch)
    • 渲染引擎工作流(Parse→Style→Layout→Paint)

六、登录页安全风险

十大常见漏洞

  1. 用户名枚举(差异响应时间)
  2. JWT实现缺陷(缺失签名验证)
  3. OAuth2配置错误(redirect_uri未校验)
  4. 密码哈希存储缺陷(使用MD5未加盐)
  5. 会话固定攻击(登录后未更新SessionID)

加固建议

  • 实施FIDO2无密码认证
  • 部署基于行为的认证(鼠标轨迹分析)
  • 添加人机验证(Geetest等动态验证码)

七、安全工具开发实践

WAF开发核心模块

  1. 协议解析层
    • HTTP/2 Frame解析
    • Multipart/form-data解码
  2. 检测引擎
    • 正则规则库(OWASP CRS)
    • 机器学习模型(请求异常检测)
  3. 防护机制
    • 虚拟补丁(针对特定漏洞)
    • 请求限速(令牌桶算法)

扫描器技术难点

  • 分布式爬虫调度(使用Scrapy-Redis)
  • PoC验证沙箱(Docker动态环境)
  • 漏洞误报消除(多因子验证机制)

建议结合ATT&CK框架构建检测规则,采用MITRE CWE标准进行漏洞分类。对于Java系统防护,推荐部署RASP方案进行运行时保护。

相关推荐
椰子今天很可爱8 分钟前
静态库和动态库
linux
檀越剑指大厂25 分钟前
【Linux系列】如何在 Linux 服务器上快速获取公网
linux·服务器·php
共享家952727 分钟前
linux-高级IO(上)
java·linux·服务器
顾林海35 分钟前
Android MMKV 深度解析:原理、实践与源码剖析
android·面试·源码阅读
Java技术小馆36 分钟前
重构 Controller 的 7 个黄金法则
java·后端·面试
楼田莉子2 小时前
C++算法题目分享:二叉搜索树相关的习题
数据结构·c++·学习·算法·leetcode·面试
HWL56792 小时前
“preinstall“: “npx only-allow pnpm“
运维·服务器·前端·javascript·vue.js
David WangYang3 小时前
基于 IOT 的安全系统,带有使用 ESP8266 的语音消息
物联网·安全·语音识别
最初的↘那颗心3 小时前
Java HashMap深度解析:原理、实现与最佳实践
java·开发语言·面试·hashmap·八股文
热爱2333 小时前
前端面试必备:原型链 & this 指向总结
前端·javascript·面试