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

2025年渗透测试面试题总结-21(题目+回答)

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

目录

一、文件上传绕过方式(Top 5)

二、文件包含高危函数(PHP为例)

三、金融行业逻辑漏洞(关键3类)

四、MySQL提权方式(2种核心)

五、Java Web框架(主流5种)

六、PHP命令执行函数(高危7个)

七、Linux日志清除关键点

八、域环境Windows加固方案

九、AES/DES工作步骤对比

十、RSA算法流程

一百六十一、常见的上传绕过方式一百六十二、导致文件包含的函数一百六十三、金融行业常见逻辑漏洞一百六十四、mysql 两种提权方式一百六十五、常用 WEB 开发 JAVA 框架一百六十六、php 中命令执行涉及到的函数一百六十七、入侵 Linux 服务器后需要清除哪些日志?一百六十八、如何加固一个域环境下的 Windows 桌面工作环境?请给出你的思路。一百六十九、AES/DES 的具体工作步骤一百七十、RSA 算法

一、文件上传绕过方式(Top 5)

  1. 扩展名欺骗
    • 双扩展名(.php.jpg )、空字节截断(shell.php%00.jpg )、大小写变异(.PhP
    • 防御对策:白名单校验 + 内容类型检测(magic number
  2. 内容类型篡改
    • 修改HTTP头 Content-Type: image/jpeg(实际为恶意脚本)
    • 防御对策:服务端MIME检测 + 文件头校验
  3. 解析漏洞利用
    • Apache解析漏洞(test.php.xxx 解析为PHP)、IIS目录路径解析(/upload/shell.jpg/xxx.php
    • 防御对策:更新中间件 + 禁用非常规解析规则
  4. 文件内容注入
    • 图片马(将脚本注入图片EXIF)、SVG的XXE攻击
    • 防御对策:文件内容扫描 + 禁用危险标签(如SVG中的<script>
  5. 竞争条件攻击
    • 在临时文件被删除前执行(常见于异步检测场景)
    • 防御对策:同步处理 + 文件锁定机制

二、文件包含高危函数(PHP为例)

markdown1. **基础包含函数** - `include()` / `include_once()`:包含失败仅警告 - `require()` / `require_once()`:包含失败致命错误 2. **封装器利用** - `php://input`(执行POST数据)、`data://`(Base64代码注入) - `zip://`(压缩包内文件包含) 3. **过滤绕过技巧** - 路径遍历:`....//` 归一化为 `../` - 空字节截断(PHP<5.3):`/etc/passwd%00`

三、金融行业逻辑漏洞(关键3类)

漏洞类型典型案例防御方案
支付逻辑缺陷金额篡改(前端验证绕过)服务端签名校验 + 金额锁
薅羊毛漏洞无限优惠券(未校验唯一性)分布式事务锁 + 库存原子性
账户安全缺陷短信轰炸(无频率限制)滑动窗口限流 + 行为分析

四、MySQL提权方式(2种核心)

  1. UDF提权(User-Defined Function)
    mermaidgraph LR A[上传恶意so/dll] --> B[创建函数 sys_exec()] B --> C[调用函数执行系统命令]
    • 条件:secure_file_priv为空 + FILE权限
  2. 启动项提权(Windows)
    • 写入VBS脚本到启动目录:
      sqlSELECT '恶意代码' INTO OUTFILE 'C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\shell.vbs' 
    • 重启后获得SYSTEM权限

五、Java Web框架(主流5种)

  1. Spring Boot
    • 优势:自动配置 + Actuator监控
    • 安全风险:未授权访问/actuator/env
  2. Apache Struts2
    • 历史漏洞:OGNL表达式注入(S2-045等)
    • 防御:禁用动态方法调用(struts.enable.DynamicMethodInvocation=false
  3. Jakarta EE
    • 核心组件:JSF + CDI + JPA
    • 安全配置:web.xml 中禁用目录遍历
  4. Play Framework
    • 异步架构 + RESTful原生支持
    • 风险:CSRF保护需手动启用
  5. Micronaut
    • 编译时依赖注入(零反射)
    • 适用于Serverless安全场景

六、PHP命令执行函数(高危7个)

markdown1. **直接执行类** `system()`, `exec()`, `passthru()`, `shell_exec()` 2. **代码注入类** `eval()`(非命令但同等危险)、`assert()` 3. **反引号执行** `` `ls -al` `` (等价于shell_exec) 4. **特殊场景利用** `popen()` / `proc_open()`(管道交互)

七、Linux日志清除关键点

markdown1. **主要日志路径** - `/var/log/auth.log` (登录记录) - `/var/log/syslog`(系统事件) - `/var/log/apache2/access.log` (Web访问) 2. **清除技巧** - 清空文件:`echo "" > auth.log` - 删除自身记录:`sed -i '/192.168.1.100/d' access.log` - 内存日志清除:`echo > /dev/kmsg`(需root) 3. **高级隐匿** - 禁用systemd-journald:`systemctl stop systemd-journald` - 删除二进制日志:`journalctl --vacuum-size=0`

八、域环境Windows加固方案

mermaidgraph TB A[账户安全] --> A1[启用LAPS(本地管理员密码轮转)] A --> A2[限制域管理员登录工作站] B[组策略] --> B1[软件限制策略(白名单)] B --> B2[禁用NTLMv1 + 强制SMB签名] C[系统防护] --> C1[启用BitLocker磁盘加密] C --> C2[配置Defender ASR规则] D[网络隔离] --> D1[防火墙阻断135-139/445端口] D --> D2[工作站间禁止SMB通信]

九、AES/DES工作步骤对比

步骤AES(AES-256为例)DES(已淘汰)
1. 分块128-bit数据块64-bit数据块
2. 密钥扩展256-bit密钥→15轮子密钥(Key Schedule)56-bit密钥→16轮48-bit子密钥
3. 初始轮AddRoundKey(密钥加)初始置换(IP)
4. 核心轮重复10-14轮:
- SubBytes(S盒)
- ShiftRows(行移位)
- MixColumns(列混淆)
- AddRoundKey
重复16轮:
- 扩展置换(32→48bit)
- S盒替换(48→32bit)
- P盒置换
5. 最终轮省略MixColumns逆初始置换(IP⁻¹)

十、RSA算法流程

markdown1. **密钥生成** - 选大素数 `p=61`, `q=53` - 计算模数 `n=p*q=3233` - 计算欧拉函数 `φ(n)=(p-1)(q-1)=3120` - 选公钥 `e=17`(需满足 `1<e<φ(n)` 且互质) - 计算私钥 `d`:`d ≡ e⁻¹ mod φ(n)` → `d=2753` 2. **加密过程** 明文 `M=65` → 密文 `C ≡ Mᵉ mod n = 65¹⁷ mod 3233 = 2790` 3. **解密过程** 密文 `C=2790` → 明文 `M ≡ Cᵈ mod n = 2790²⁷⁵³ mod 3233 = 65` 4. **2025安全实践** - 密钥长度 ≥ 3072-bit - 必须使用OAEP填充模式 - 弃用PKCS#1 v1.5
http://www.dtcms.com/a/339592.html

相关文章:

  • 水闸安全监测的主要核心内容
  • Java NIO 核心精讲(上):Channel、Buffer、Selector 详解与 ByteBuffer 完全指南
  • 数字政务安全实战:等保2.0下OA系统的身份认证与数据防护
  • 微软AD国产化替换倒计时——不是选择题,而是生存题
  • 三次握手四次挥手
  • 决策树算法详解
  • Orange的运维学习日记--47.Ansible进阶之异步处理
  • ESP32应用——HTTP client(ESP-IDF框架)
  • STM32之MCU和GPIO
  • AT_abc397_f [ABC397F] Variety Split Hard
  • 高速传输的关键:8B/10B编码学习记录
  • 应用控制技术与内容审计技术
  • 系统架构设计师-操作系统-避免死锁最小资源数原理模拟题
  • 寻找旋转排序数组中的最小值
  • 黄金本周想法
  • 给类或实例打上标识即类的元数据标签方便程序在运行时对其进行分类、识别、筛选
  • 32K上下文开源语音理解、40分钟深度交互——Voxtral-Small-24B-2507本地部署教程
  • GCC编译输出中text,data,bss和dec的含义
  • 构建自主企业:AgenticOps 的技术蓝图
  • 基于 STM32 单片机的远程老人监测系统设计
  • 科大讯飞语音服务之:BNF文件
  • 基于用户画像的个性化匹配模型
  • 【Proteus仿真】【51单片机】基于51单片机自动售货机12864屏幕
  • 这是关于Oracle碎片的文章
  • 空间智能赋能低空经济建设
  • 录音转文字:怎么快速精转提取重点?
  • 【弦乐教程】四 / 五部和声铺底写作指南 —— 从声部配置到禁忌规避
  • 8.19笔记
  • 训练数据转 LMDB 格式:必要性解析与核心优势全指南
  • 假设检验的原理