2025年渗透测试面试题总结-小某鹏汽车-安全工程师(题目+回答)

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

目录

小鹏汽车-安全工程师

一、XXE漏洞与SSRF漏洞

[1. XXE(XML External Entity)漏洞](#1. XXE(XML External Entity)漏洞)

[2. SSRF(Server-Side Request Forgery)](#2. SSRF(Server-Side Request Forgery))

二、代码审计流程

[1. 环境搭建](#1. 环境搭建)

[2. 敏感入口分析](#2. 敏感入口分析)

[3. 漏洞模式匹配](#3. 漏洞模式匹配)

[4. 自动化辅助](#4. 自动化辅助)

三、数据库类型判断

[1. 语法差异法](#1. 语法差异法)

[2. 系统函数探测](#2. 系统函数探测)

[3. 错误信息法](#3. 错误信息法)

四、SQL注入分类与利用

[1. 注入类型](#1. 注入类型)

[2. 利用链扩展](#2. 利用链扩展)

五、SQL注入原理与防御

[1. 原理](#1. 原理)

[2. 防御方案](#2. 防御方案)

六、护网行动与安全产品理解

[1. 护网实战职责](#1. 护网实战职责)

[2. 安全产品能力矩阵](#2. 安全产品能力矩阵)

七、内网渗透思路

[1. 信息收集阶段](#1. 信息收集阶段)

[2. 横向移动技术](#2. 横向移动技术)

[3. 权限维持手段](#3. 权限维持手段)

[4. 跨域攻击](#4. 跨域攻击)


小某鹏汽车-安全工程师

复制代码
xxe漏洞是什么?ssrf是什么?
聊一聊代码审计得流程
怎么判断一个数据库是mysql还是oracle?
sql注入得种类,利用方式?
sql注入原理与防御思路
护网的时候主要做了什么,聊一聊对安全产品的理解
内网渗透了解吗?聊一聊内网渗透的思路

一、XXE漏洞与SSRF漏洞

1. XXE(XML External Entity)漏洞
  • 定义:攻击者通过篡改XML文件中的实体定义,利用外部实体引用读取服务器文件、发起网络请求或执行远程代码。

  • 触发场景 :XML解析器未禁用外部实体解析(如PHP的LIBXML_NOENT未启用)。

  • 利用方式 :xml

    复制代码
    <!-- 读取本地文件 --> <!DOCTYPE foo [ <!ENTITY xxe SYSTEM "file:///etc/passwd"> ]> <data>&xxe;</data> <!-- 发起SSRF请求 --> <!DOCTYPE foo [ <!ENTITY xxe SYSTEM "http://内网IP:端口"> ]> 
  • 危害:敏感文件泄露、内网探测、远程代码执行(需结合其他漏洞)。

2. SSRF(Server-Side Request Forgery)
  • 定义:服务端未校验用户输入,攻击者构造恶意请求使服务器发起非预期的内部或外部请求。
  • 常见触发点:URL参数(如图片下载、网页代理功能)。
  • 利用场景
    • 攻击内网服务(如Redis未授权访问)
    • 云服务器元数据泄露(如AWS的169.254.169.254
    • 绕过IP白名单(通过302跳转或DNS重绑定)
  • 防御 :禁用协议(如file://gopher://)、校验请求目标IP范围。

二、代码审计流程

1. 环境搭建
  • 使用IDE(如PhpStorm)全局搜索敏感函数(如exec()mysql_query())。
  • 配置调试环境(如Xdebug)动态跟踪数据流。
2. 敏感入口分析
  • 输入点追踪 :关注$_GET$_POST、文件上传等未过滤的输入。
  • 框架特性 :检查路由解析(如Spring MVC的@RequestMapping)、模板引擎(如Freemarker)是否启用沙箱。
3. 漏洞模式匹配
  • SQL注入 :查找拼接SQL语句的代码段(如"SELECT * FROM users WHERE id=" + userInput)。
  • 反序列化 :识别ObjectInputStream.readObject() 调用点。
  • 逻辑漏洞 :如订单支付金额未校验、权限校验缺失(如未验证isAdmin标志)。
4. 自动化辅助
  • 工具使用
    • 静态分析:Fortify(商业)、Semgrep(开源规则库)
    • 动态插桩:覆盖测试工具(如JaCoCo)定位未覆盖代码路径。

三、数据库类型判断

1. 语法差异法
  • 注释符
    • MySQL:#-- (需有空格)
    • Oracle:--
  • 字符串拼接
    • MySQL:CONCAT('a','b')
    • Oracle:'a' || 'b'
2. 系统函数探测
  • 版本函数
    • MySQL:SELECT version()
    • Oracle:SELECT banner FROM v$version
  • 时间函数
    • MySQL:SLEEP(5)
    • Oracle:DBMS_LOCK.SLEEP(5)
3. 错误信息法
  • 故意触发错误:
    • MySQL错误示例:You have an error in your SQL syntax
    • Oracle错误示例:ORA-00933: SQL command not properly ended

四、SQL注入分类与利用

1. 注入类型
类型 特征 利用工具示例
联合查询注入 页面回显数据 sqlmap -u "url" --union
布尔盲注 页面响应状态差异(True/False) 手工构造AND 1=1
时间盲注 基于时间延迟判断 IF(1=1,SLEEP(5),0)
报错注入 数据库错误信息回显 extractvalue(1,concat(0x7e,version()))
堆叠查询 支持多语句执行(如PHP+MySQLi) ; INSERT INTO logs VALUES ('hacked')
2. 利用链扩展
  • 文件读写 :MySQL的LOAD_FILE()INTO OUTFILE(需secure_file_priv为空)。
  • OS命令执行 :Oracle的DBMS_SCHEDULER创建作业执行系统命令。

五、SQL注入原理与防御

1. 原理
  • 根本原因 :用户输入被拼接为SQL语句的一部分,如:java

    复制代码
    String query = "SELECT * FROM users WHERE id='" + userInput + "'";
  • 攻击载荷 :闭合引号并插入恶意代码,如' UNION SELECT 1,password FROM users--

2. 防御方案
  • 参数化查询 (核心方案):python

    复制代码
    cursor.execute("SELECT * FROM users WHERE id = %s", (user_input,))
  • 纵深防御

    • WAF规则 :过滤UNIONSLEEP等关键字。
    • 权限控制 :数据库账户遵循最小权限原则(禁用FILE权限)。
    • 错误处理:生产环境关闭详细错误回显。

六、护网行动与安全产品理解

1. 护网实战职责
  • 前期准备:资产梳理(使用Nexpose扫描暴露面)、漏洞修复(优先处理CVSS 9.0+漏洞)。
  • 防守工作
    • 流量监控:分析全流量日志(如ELK堆栈)定位异常请求。
    • 蜜罐部署:使用HFish伪装脆弱服务诱捕攻击者。
  • 应急响应:隔离被攻陷主机、取证分析(使用Volatility提取内存数据)。
2. 安全产品能力矩阵
产品类型 优势场景 局限性
WAF 快速拦截已知攻击模式 无法防御0day/逻辑漏洞
EDR 端点行为监控(如勒索软件) 资源占用高
NDR 网络流量异常检测(如C2通信) 依赖规则库更新
态势感知 多源日志关联分析 误报率高需人工验证

七、内网渗透思路

1. 信息收集阶段
  • 主机发现 :ARP扫描(arp-scan)、NetBIOS查询。
  • 服务探测 :Nmap脚本(smb-os-discovery.nse )识别操作系统。
  • 凭据提取
    • Windows:Mimikatz抓取LSASS内存密码。
    • Linux:查找/etc/shadow备份文件。
2. 横向移动技术
  • 协议利用
    • SMB:利用永恒之蓝(MS17-010)攻击未打补丁主机。
    • RDP:密码喷洒攻击(使用Hydra批量测试弱口令)。
  • 票据传递:Kerberos黄金票据伪造(需域控KRBTGT账户哈希)。
3. 权限维持手段
  • 后门植入
    • Windows:计划任务添加持久化启动项。
    • Linux :修改.bashrc或安装SSH后门。
  • 隐蔽隧道
    • DNS隧道工具:DNScat2
    • ICMP隧道:icmpsh
4. 跨域攻击
  • 域信任漏洞:利用AD域间信任关系(如SID History滥用)。
  • 组策略利用:通过GPO推送恶意脚本到所有域机器。
相关推荐
_一条咸鱼_1 小时前
Python 数据类型之可变与不可变类型详解(十)
人工智能·python·面试
_一条咸鱼_1 小时前
Python 入门之基本运算符(六)
python·深度学习·面试
_一条咸鱼_1 小时前
Python 语法入门之基本数据类型(四)
人工智能·深度学习·面试
曼岛_1 小时前
[安全实战]逆向工程核心名词详解
安全·逆向工程
_一条咸鱼_1 小时前
Python 用户交互与格式化输出(五)
人工智能·深度学习·面试
_一条咸鱼_1 小时前
Python 流程控制之 for 循环(九)
人工智能·python·面试
_一条咸鱼_1 小时前
Python 语法入门之流程控制 if 判断(七)
人工智能·python·面试
_一条咸鱼_1 小时前
Python 流程控制之 while 循环(八)
人工智能·python·面试
_一条咸鱼_1 小时前
Python 垃圾回收机制 GC 深度解析(三)
人工智能·深度学习·面试
_一条咸鱼_1 小时前
Android Picasso 监听器模块深度剖析(八)
android·面试·android jetpack