Security Interview

0x61 成都数默科技(科来) APT研究

来源:vvmdx/Sec-Interview-4-2023,已转换为博客静态页面。

0x61 成都数默科技(科来) APT研究

来源:https://github.com/vvmdx/Sec-Interview-4-2023
说明:本文件按原面经问题整理答题要点,答案为面试复习口径。

一面

1. 自我介绍

参考完整回答(自我介绍):

可以按“背景、方向、项目、工具、优势、求职动机”来讲。示例:我主要学习网络安全方向,熟悉 Web 漏洞、渗透测试、Linux 安全、日志分析和代码审计;项目中做过资产收集、漏洞验证、权限控制或应急处置,常用 Burp、Nmap、sqlmap、Wireshark、Linux 等工具。最后强调自己能从漏洞原理、利用条件和修复方案三个层面分析问题。

2. 面试之前了解过数默科技吗

参考完整回答(面试之前了解过数默科技吗):

这题我会这样完整回答:针对“面试之前了解过数默科技吗”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

3. 大学里面学过哪些课程,你比较喜欢哪个课程,为什么

参考完整回答(大学里面学过哪些课程你比较喜欢哪个课程为什么):

这题我会这样完整回答:针对“大学里面学过哪些课程,你比较喜欢哪个课程,为什么”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

4. CTF比赛的时候一般都做哪方面

参考完整回答(CTF复盘):

CTF 题复盘要讲清题型、关键突破点、踩坑和沉淀。比如 Web 题可以按信息泄露、源码审计、参数污染、反序列化、SSTI、SQL 注入等链路讲;Pwn 题讲保护机制、溢出点、泄露地址、ROP 或堆利用;Crypto 题讲算法弱点和数学条件。

关键是不要只说“做出来了”,而要说明自己如何定位问题、如何验证假设、失败过哪些思路、最后沉淀了什么工具或知识点。

5. 有没有印象比较深刻的漏洞挖掘的经历

参考完整回答(项目/实习经历):

项目经历我会用 STAR 讲完整,而不是只列技术名词。先说项目背景:这是一个什么系统、业务价值是什么、我负责哪块安全工作;再说任务:比如接口鉴权、代码审计、漏洞验证、应急处置或安全工具开发;然后讲行动:我如何定位入口、使用了哪些工具、验证了哪些风险、如何推动修复;最后讲结果:修复了什么漏洞、减少了什么暴露面、沉淀了什么规则或文档。

如果面试官深挖,我会准备一个具体案例。例如“我在某系统审计中发现订单详情接口只校验登录态,没有校验订单 owner,导致水平越权。我用两个普通账号互换订单 ID 复现,确认能读取他人数据。修复方案是在服务端统一鉴权中间件里加入用户、租户和资源归属校验,并补充异常访问日志。复测时原越权请求返回 403,正常用户访问不受影响。”

6. SQL注入如何GETSHELL

参考完整回答(SQL注入绕过):

SQL 注入绕过通常是因为防护用了黑名单,比如只过滤空格、逗号、select、union 这类关键字。攻击者可以用大小写混淆、注释符、URL 编码、宽字节、换行、括号、函数等价替代、布尔盲注、时间盲注、二次注入等方式绕过。例如过滤空格时可能用 /**/、换行或括号替代;过滤逗号时,MySQL 某些场景可以用 join、from for 或子查询改写。

但我在面试中会强调:绕过技巧说明黑名单不可靠,修复不能继续堆规则。正确做法还是参数化查询、白名单映射、最小权限和统一 ORM/DAO 层封装。安全设备如 WAF 可以作为辅助,但不能代替代码层修复。

7. 说一下AWD攻防竞赛平台的架构,用到的技术

参考完整回答(说一下awd攻防竞赛平台的架构用到的技术):

这题我会这样完整回答:针对“说一下AWD攻防竞赛平台的架构,用到的技术”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

8. 说一下扫描器的流程

参考完整回答(安全工具开发):

安全工具开发我会先明确工具目标:是资产发现、漏洞扫描、代码审计、日志分析还是告警处置。以漏洞扫描器为例,核心模块包括任务调度、资产输入、指纹识别、PoC 模板、请求限速、结果去重、误报复核、报告输出和权限控制。PoC 设计上要尽量无害验证,避免写文件、删数据或执行破坏性命令。

工程上还要考虑稳定性和可维护性:超时重试、并发控制、代理支持、失败日志、模板版本管理、资产标签和历史结果对比。安全工具本身也要做鉴权和审计,避免变成新的攻击入口。

9. 说一下asp文件上传绕过

参考完整回答(SQL注入绕过):

SQL 注入绕过通常是因为防护用了黑名单,比如只过滤空格、逗号、select、union 这类关键字。攻击者可以用大小写混淆、注释符、URL 编码、宽字节、换行、括号、函数等价替代、布尔盲注、时间盲注、二次注入等方式绕过。例如过滤空格时可能用 /**/、换行或括号替代;过滤逗号时,MySQL 某些场景可以用 join、from for 或子查询改写。

但我在面试中会强调:绕过技巧说明黑名单不可靠,修复不能继续堆规则。正确做法还是参数化查询、白名单映射、最小权限和统一 ORM/DAO 层封装。安全设备如 WAF 可以作为辅助,但不能代替代码层修复。

10. 说一下解析漏洞

参考完整回答(说一下解析漏洞):

这题我会这样完整回答:针对“说一下解析漏洞”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

11. 说一下反序列化漏洞

参考完整回答(说一下反序列化漏洞):

这题我会这样完整回答:针对“说一下反序列化漏洞”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

12. 平时用过哪些安全工具

参考完整回答(平时用过哪些安全工具):

这题我会这样完整回答:针对“平时用过哪些安全工具”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

13. 流量分析做过吗

参考完整回答(流量分析/研判):

流量分析我会先看五元组、协议、时间分布、包大小、连接状态和请求内容,再和业务基线比较。扫描通常表现为同一源短时间访问大量端口或路径;爆破表现为登录失败暴增;Web 攻击会在参数里出现 union、sleep、../、<script>、jndi 等特征;C2 可能有固定间隔心跳、小包长连接或异常域名;数据外传则体现为内网主机向陌生外部地址持续上传。

工具上可以用 Wireshark 做人工分析,用 tcpdump 抓关键流量,用 Zeek/Suricata 结构化日志和告警。最终要结合主机日志和应用日志确认,不能只靠单包下结论。

14. 毕业设计题目是什么

参考完整回答(毕业设计题目是什么):

这题我会这样完整回答:针对“毕业设计题目是什么”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

15. python代码里面会有哪些漏洞

参考完整回答(Python安全库):

Python 在安全里常用于自动化验证、扫描、协议交互和应急分析。HTTP 测试常用 requests/httpx,底层网络用 socket,构造和解析数据包用 scapy,SSH 运维用 paramiko,Windows/域协议相关常见 impacket,加密和证书处理用 cryptography、hashlib、hmac、ssl,DNS 分析用 dnspython,HTML 解析用 BeautifulSoup/lxml,恶意样本规则可用 yara-python。

如果被问“有没有用 Python 写过工具”,我会举一个具体例子:比如写过一个批量资产存活探测和标题指纹识别脚本,输入域名/IP 列表,异步请求 HTTP/HTTPS,提取状态码、标题、Server、证书信息和指纹,做去重和导出。重点强调限速、超时、异常处理和授权范围。

16. 介绍部门和做的事情

参考完整回答(介绍部门和做的事情):

这题我会这样完整回答:针对“介绍部门和做的事情”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

17. 你来了之后会做的事情

参考完整回答(你来了之后会做的事情):

这题我会这样完整回答:针对“你来了之后会做的事情”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

18. 你的期望薪资是多少

参考完整回答(HR问题):

这类 HR 问题要回答得稳定、真诚、不过度暴露弱点。期望薪资可以说“我会结合岗位职责、城市和公司薪酬体系,希望在贵司对应校招/实习生范围内匹配,我更看重团队方向和成长空间”;工作地点可以说明优先级和可接受范围;多久到岗要给明确时间;职业规划可以说短期打牢安全基础并在业务中独立承担任务,中长期希望在漏洞研究/安全工程/攻防方向形成专长。

遇到个人生活类问题,保持简洁,不展开隐私,把回答拉回工作稳定性和投入度即可。

19. 了解过APT吗

参考完整回答(了解过apt吗):

这题我会这样完整回答:针对“了解过APT吗”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

20. 反问

参考完整回答(反问):

反问可以围绕岗位职责、团队方向、技术栈、培养机制、实习生预期、日常工作比例和后续流程。不要只问薪资和作息,可以问“这个岗位更偏漏洞研究、工程建设还是应急响应?”来体现目标感。

21. 部门的规模

参考完整回答(部门的规模):

这题我会这样完整回答:针对“部门的规模”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

22. 后续的面试流程

参考完整回答(后续的面试流程):

这题我会这样完整回答:针对“后续的面试流程”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

23. ...

参考完整回答(其他):

这题我会这样完整回答:针对“...”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

二面 HR面

24. 谈薪资

参考完整回答(HR问题):

这类 HR 问题要回答得稳定、真诚、不过度暴露弱点。期望薪资可以说“我会结合岗位职责、城市和公司薪酬体系,希望在贵司对应校招/实习生范围内匹配,我更看重团队方向和成长空间”;工作地点可以说明优先级和可接受范围;多久到岗要给明确时间;职业规划可以说短期打牢安全基础并在业务中独立承担任务,中长期希望在漏洞研究/安全工程/攻防方向形成专长。

遇到个人生活类问题,保持简洁,不展开隐私,把回答拉回工作稳定性和投入度即可。

25. 介绍部门

参考完整回答(介绍部门):

这题我会这样完整回答:针对“介绍部门”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

返回安全面经目录