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

2025年渗透测试面试题总结-拷打题库25(题目+回答)

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

目录

2025年渗透测试面试题总结-拷打题库25

1. 后门实现方式

2. Webshell检测方法思路

3. Linux服务器中木马应急思路

4. Struts2 0day应急响应

5. 新业务上线前安全评估方向

6. 现有系统安全风险审计

7. XSS与SQL注入原理与分类

8. XSS防御(分前后端)

9. App通信漏洞问题

10. 防御中间人攻击

11. HTTPS建立过程

12. TCP三次握手状态转换

13. App破解流程与结构

14. 对称与非对称加密

15. SYN洪流原理与防御

16. 滴滴客户端逻辑漏洞

17. CSP绕过方法

18. 黄金票据与白金票据区别

19. MySQL root提权方式

20. 断网环境利用os-shell

21. 鱼叉与水坑攻击案例

22. 同源策略与跨域

23. SQL盲注优化

24. 内网PC渗透步骤

25. SQL注入检测与利用

26. SQLMap os-shell原理

27. 同源策略无法防御CSRF

28. CORS与JSONP比较

29. B站获取A站用户信息

2025年渗透测试面试题总结-拷打题库25

有哪几种后门实现方式?
webshell检测有什么方法思路?
Linux服务器中了木马后,请简述应急思路?
遇到新0day(比如Struts2)后,应该如何进行应急响应?
新业务上线前可以从哪些方向进行安全评估?
现有系统可以从哪些方向进行审计发现其中的安全风险?
xss与sql注入的基本原理与分类
xss如何防御?(分前端与后端,后端需要在入口和出口都过滤)
app客户端与服务器通信可能出现哪些漏洞问题
如何防御中间人攻击?
https的建立过程
TCP三次握手的过程以及对应的状态转换
app客户端破解的大致流程,app解包后文件夹的基本结构
对称加密与非对称加密的不同,分别用在哪些方面
DDOS的攻击,说道syn洪流的原理
ddos的防御
滴滴客户端可能存在哪些逻辑漏洞
csp是什么?如何绕过csp?
黄金票据和白金票据的区别
mysql root 权限有哪些提权方式
正常注入点sa权限,可以os-shell但是全部是基于断网机,你怎么办?
鱼叉,水坑攻击的案例
同源策略和跨域
sql盲注时候有什么办法优化
拿到一台内网的PC机,应该做什么?
SQL注入,id=1如何检测?orderby怎么利用?limit语句怎么利用?盲注有什么?
sqlmap os shell原理
为什么同源策略无法防御csrf?
cors和jsonp比较?
B站与A站不同源的情况下如何通过B站获取到A站用户信息

1. 后门实现方式

扩展分析:后门是攻击者维持权限的核心手段,需从系统层、应用层、协议层多维度分析。

  • 系统账户后门:创建隐藏用户、修改系统服务(如SSHD添加密钥登录)、计划任务(cron或schtasks植入持久化脚本)。
  • Rootkit技术:通过内核模块(如Linux的LKM)或文件隐藏(如劫持ls命令)实现进程/文件隐藏。
  • Web应用后门:上传webshell(如.jsp/.php脚本)、数据库存储过程植入恶意代码(如MySQL通过INTO OUTFILE写文件)。
  • 协议隧道后门:利用DNS/ICMP协议封装数据(如dnscat2),绕过防火墙监控。
  • 供应链污染:在软件更新包中捆绑恶意模块(如SolarWinds事件)。

2. Webshell检测方法思路

扩展分析:需结合静态特征、动态行为、AI模型综合检测。

  • 静态检测:基于文件哈希/特征码(如eval($_POST)语句)、文件熵值(加密webshell的高随机性)。
  • 动态沙箱:监控文件操作行为(如创建敏感文件/etc/passwd)、网络连接(异常外联IP)。
  • 日志关联:分析HTTP请求中异常参数(如长Base64字符串)、访问频率(高频访问.php?cmd=whoami)。
  • 机器学习:训练模型识别PHP函数调用序列(如system()+curl组合)或异常文件权限变更。

3. Linux服务器中木马应急思路

扩展分析:应急需快速止损、定位入侵路径、修复漏洞。

  • 隔离网络:通过iptables阻断出站流量或物理断网,防止横向渗透。
  • 进程分析ps auxf查看父子进程树,检查异常进程CPU占用(如挖矿程序);使用ls -al /proc/PID/exe定位二进制路径。
  • 文件排查:查找近期修改的SUID文件(find / -perm -4000 -mtime -3),检查/tmp/dev/shm中的可疑文件。
  • 日志溯源:分析/var/log/auth.log 中的SSH登录记录(如爆破日志)、last命令查看用户登录历史。
  • Rootkit检测:使用rkhunterchkrootkit扫描,对比lsls -al结果差异。

4. Struts2 0day应急响应

扩展分析:需快速止血、评估影响范围、修复与溯源并重。

  • 临时缓解:在WAF中添加规则拦截Content-Type: application/x-www-form-urlencoded中的OGNL表达式特征(如%{#)。
  • 漏洞验证:通过流量抓包分析是否存在ParametersInterceptor的异常参数解析。
  • 系统恢复:从备份还原受影响服务器,并部署虚拟补丁(如Apache Shiro拦截恶意请求)。
  • 入侵排查:检查Web日志中POST请求长度异常(如超长参数)、查找/struts/webconsole.html 等调试页面访问记录。

5. 新业务上线前安全评估方向

扩展分析:需覆盖SDLC全生命周期,结合威胁建模。

  • 架构审计:检查是否遵循最小权限原则(如数据库只允许内网访问)、是否存在单点故障。
  • 代码审计:使用SAST工具扫描硬编码凭证(如API密钥)、未验证的重定向(如redirectUrl=xxx)。
  • 配置核查:确保Nginx禁用TRACE方法、Redis配置密码且绑定127.0.0.1。
  • 渗透测试:模拟攻击者尝试水平越权(修改Cookie中的userid=100→101)、业务逻辑漏洞(重复提交订单)。

6. 现有系统安全风险审计

扩展分析:从攻击面管理(ASM)视角全面排查。

  • 组件漏洞:使用SCA工具识别Log4j、Fastjson等历史漏洞组件版本。
  • API安全:检查未鉴权的Swagger接口、GraphQL introspection信息泄露。
  • 数据安全:审计敏感数据存储是否加密(如MySQL的TDE)、日志中是否记录明文密码。
  • 横向移动风险:检查内网服务(如SMB、RDP)是否暴露,是否存在弱口令。

7. XSS与SQL注入原理与分类

XSS扩展

  • 存储型:恶意脚本存入数据库(如论坛评论),每次访问触发。
  • 反射型:通过URL参数注入(如https://site.com/search?q=<script>alert(1)</script> )。
  • DOM型:前端JavaScript直接操作DOM导致执行(如document.write(location.hash) )。

SQL注入扩展

  • 联合查询注入:通过UNION SELECT提取数据。
  • 报错注入:利用updatexml()extractvalue()触发错误回显。
  • 时间盲注:通过sleep()函数延时判断条件真假。

8. XSS防御(分前后端)

后端防御

  • 输入过滤:对<script>onerror等关键词进行HTML实体转义(如<&lt;)。
  • 输出编码:根据上下文选择编码方式(HTML/JS/CSS)。
  • CSP策略:设置Content-Security-Policy: default-src 'self'限制外部脚本加载。

前端防御

  • DOM净化:使用DOMPurify库过滤危险标签。
  • 框架防护:Vue/React默认转义插值表达式({{ data }})。
  • HttpOnly Cookie:防止JavaScript读取敏感Cookie。

9. App通信漏洞问题

扩展分析

  • 证书校验缺失:未校验服务器证书域名,导致中间人攻击。
  • 敏感数据明文传输:如密码、身份令牌未加密(HTTP明文)。
  • API接口未鉴权:未使用OAuth2.0令牌,通过修改user_id参数越权访问。
  • 重放攻击:请求无时间戳或随机数,可重复提交(如多次充值)。

10. 防御中间人攻击

扩展方案

  • 证书锁定(Pinning):在客户端预置服务器证书指纹,拒绝不匹配连接。
  • 双向认证(mTLS):要求客户端提供证书,防止假冒用户。
  • HSTS头:强制浏览器使用HTTPS(Strict-Transport-Security: max-age=31536000)。
  • 网络层防护:部署ARP防火墙防止ARP欺骗,使用VPN加密通道。

11. HTTPS建立过程

详细流程

  1. TCP三次握手:客户端→SYN→服务器→SYN-ACK→客户端→ACK。
  2. ClientHello:发送支持的TLS版本、密码套件、随机数(Client Random)。
  3. ServerHello:选择密码套件(如TLS_AES_256_GCM_SHA384)、发送证书和Server Random。
  4. 证书验证:客户端验证证书链是否受信、域名是否匹配、是否过期。
  5. 密钥交换:客户端生成Pre-Master Secret,用服务器公钥加密传输。
  6. 会话密钥生成:双方通过Client Random、Server Random、Pre-Master Secret计算对称密钥。
  7. 加密通信:使用对称密钥加密后续HTTP数据。

12. TCP三次握手状态转换

状态机分析

  1. 客户端发送SYN:状态从CLOSEDSYN_SENT
  2. 服务器接收SYN:状态LISTENSYN_RECEIVED,回复SYN-ACK。
  3. 客户端接收SYN-ACK:发送ACK,状态SYN_SENTESTABLISHED
  4. 服务器接收ACK:状态SYN_RECEIVEDESTABLISHED

异常场景

  • SYN Flood攻击:伪造大量SYN包耗尽服务器半连接队列。
  • RST复位:任一方向发送RST包立即终止连接。

13. App破解流程与结构

破解流程

  1. 逆向工具:使用Apktool反编译APK,Jadx查看Smali代码。
  2. 脱壳:针对加固应用(如梆梆),使用Frida Hook DEX加载过程。
  3. 代码修改:篡改校验逻辑(如绕过许可证检查),注入恶意代码。
  4. 重打包签名:使用zipalign对齐,apksigner重新签名。

APK结构

  • assets/:存放资源文件(如配置文件、证书)。
  • lib/:原生库(.so文件)。
  • res/:图片、布局XML。
  • META-INF/:签名文件(MANIFEST.MF)。
  • classes.dex :Dalvik字节码。

14. 对称与非对称加密

对称加密(AES)

  • 场景:加密大量数据(如HTTP Body)、数据库字段加密。
  • 密钥管理:需安全分发(如通过KMS服务)。

非对称加密(RSA)

  • 场景:密钥交换(TLS握手)、数字签名(代码签名证书)。
  • 性能问题:加解密速度慢,通常与对称加密结合使用(如RSA加密AES密钥)。

15. SYN洪流原理与防御

攻击原理

  • 伪造大量源IP发送SYN包,服务器分配资源等待ACK(半开连接耗尽内存)。
  • 利用TCP协议设计缺陷,不完成三次握手。

防御方案

  • SYN Cookie:不保存连接状态,通过哈希计算验证ACK合法性。
  • 流量清洗:识别异常SYN速率(阈值触发黑洞路由)。
  • TCP半连接超时:缩短SYN-RECEIVED状态等待时间(默认60s→15s)。

16. 滴滴客户端逻辑漏洞

潜在漏洞

  • 订单金额篡改:前端校验价格,后端未验证导致0元支付。
  • 越权查看行程:修改order_id参数访问他人订单详情。
  • 重复优惠券领取:未限制领取次数或未校验用户身份唯一性。
  • 地理位置欺骗:伪造GPS坐标绕过区域限制(如虚假司机接单)。

17. CSP绕过方法

CSP策略:通过Content-Security-Policy头限制脚本加载源。

  • JSONP绕过:利用允许的域(如script-src 'self' example.com )中的JSONP接口执行代码。
  • AngularJS沙箱逃逸:在允许unsafe-eval时通过{{constructor.constructor(...)}} 执行代码。
  • CSP配置错误:若允许data:协议,可通过<script src="data:;base64,...">注入。

18. 黄金票据与白金票据区别

黄金票据(Golden Ticket)

  • 生成条件:需域控的krbtgt账户NTLM哈希。
  • 功能:伪造任意用户的TGT(票据授权票据),可访问域内任何服务。
  • 检测难度:票据未在KDC中记录,日志无异常。

白金票据(Silver Ticket)

  • 生成条件:需特定服务的NTLM哈希(如SQL Server)。
  • 功能:直接伪造TGS(服务票据),仅针对特定服务。
  • 有效期:可设置超长有效期(如10年),绕过常规票据生命周期。

19. MySQL root提权方式

提权路径

  • UDF提权:编译恶意共享库(lib_mysqludf_sys.so ),通过CREATE FUNCTION sys_exec RETURNS STRING SONAME 'udf.so' 执行命令。
  • 启动项写入:利用INTO OUTFILE写VBS脚本到C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
  • CVE漏洞利用:如CVE-2016-6663通过mysqld_safe覆盖配置文件获取root权限。

20. 断网环境利用os-shell

渗透技巧

  • 反向代理:上传reGeorg等工具,通过数据库外联建立Socks隧道。
  • DNS隧道:使用dnschef将数据封装在DNS查询中渗出。
  • ICMP隧道:通过ping -p携带Payload(需目标机有ICMP出站权限)。
  • 存储暂存:将数据写入数据库表,待网络恢复后导出。

21. 鱼叉与水坑攻击案例

鱼叉攻击案例

  • 伪装HR邮件:发送带恶意附件(如"薪资调整表.docm")的钓鱼邮件,触发宏下载Cobalt Strike。
  • 供应链攻击:针对开发者邮箱投递恶意npm包(如eslint-config-xxx),窃取SSH密钥。

水坑攻击案例

  • 入侵行业论坛:在下载页面植入恶意脚本,劫持访问者浏览器挖矿。
  • 劫持合法广告:通过广告网络分发恶意JS,重定向至漏洞利用包。

22. 同源策略与跨域

同源策略(SOP)

  • 限制范围:协议、域名、端口均相同(如https://a.com:443http://a.com:80 不同源)。
  • 豁免场景<script><img>标签可跨域加载,但无法读取内容(除非CORS允许)。

跨域方案对比

  • JSONP:仅支持GET,通过<script>加载回调函数,易导致XSS。
  • CORS:需服务器设置Access-Control-Allow-Origin,支持所有HTTP方法。
  • 代理服务器:将跨域请求转发至同源后端(如Nginx配置proxy_pass)。

23. SQL盲注优化

加速技巧

  • 二分法猜解:减少字符判断次数(如ASCII值范围0-127)。
  • 条件响应:通过CASE WHEN ... THEN 1 ELSE 0 END触发不同页面内容。
  • 并行请求:使用Burp Intruder并发发送Payload,缩短总耗时。
  • 时间函数复用:如MySQL的IF(SUBSTR(...)=X, BENCHMARK(1000000,MD5(1)), 0)

24. 内网PC渗透步骤

攻击路径

  1. 信息收集:抓取密码哈希(Mimikatz)、ARP表(arp -a)、共享文件夹(net view)。
  2. 横向移动:利用PsExec/WMI执行远程命令,Pass-the-Hash攻击。
  3. 权限提升:查找内核漏洞(如CVE-2021-34527)、服务配置错误(如DACL覆盖)。
  4. 数据窃取:搜索敏感文件(.docx.xlsx)、导出浏览器Cookie。
  5. 持久化:注册表添加启动项、计划任务部署后门。

25. SQL注入检测与利用

检测方法

  • 报错检测id=1'触发数据库语法错误。
  • 布尔盲注id=1 and 1=2观察页面差异。
  • 时间盲注id=1; WAITFOR DELAY '0:0:5'--测试延时。

Order By利用

  • 确定列数order by 5逐步测试直至报错。
  • 基于错误的注入order by (select 1 from dual where 1=2)触发条件错误。

Limit注入

  • 子查询利用LIMIT 1,1 PROCEDURE ANALYSE(extractvalue(1,concat(0x7e,user())),1)

26. SQLMap os-shell原理

技术细节

  1. 写入Webshell:通过INTO OUTFILE上传脚本(如<?php system($_GET['cmd']);?>)。
  2. 执行命令:访问webshell路径传入参数(/shell.php?cmd=whoami )。
  3. 交互式隧道:结合sqlmap --os-shell自动处理编码和路径问题。

依赖条件

  • 数据库有文件写权限(secure_file_priv为空)。
  • Web目录可写且可执行脚本。

27. 同源策略无法防御CSRF

根本原因

  • 自动携带Cookie:浏览器在跨域请求中自动发送Session Cookie(即使跨域)。
  • 请求伪造:攻击页面可构造<form action="http://bank.com/transfer" method=POST>诱导用户提交。
  • 防御手段:使用CSRF Token(服务器生成并校验)、SameSite Cookie属性(限制第三方Cookie)。

28. CORS与JSONP比较

CORS优势

  • 安全性:服务器显式设置Access-Control-Allow-Origin,防止任意域访问。
  • 方法支持:支持POST/PUT/DELETE等所有HTTP方法。
  • 错误处理:通过预检请求(OPTIONS)提前验证权限。

JSONP局限

  • 仅限GET:无法发送POST请求或携带大量数据。
  • XSS风险:回调函数未过滤导致攻击(如callback=<script>alert(1)</script>)。
  • 兼容性:适用于旧浏览器(IE9以下)。

29. B站获取A站用户信息

攻击路径

  1. JSONP劫持:A站存在JSONP接口(如api.a.com/userinfo?callback=xxx ),B站构造恶意页面诱导用户访问,通过回调函数窃取数据。
  2. CORS配置错误:A站设置Access-Control-Allow-Origin: *且允许携带Cookie,B站通过AJAX读取数据。
  3. XSS组合利用:A站存在存储型XSS,B站诱导用户点击链接触发XSS,通过XMLHttpRequest将数据回传至B站。
http://www.xdnf.cn/news/3064.html

相关文章:

  • 30天通过软考高项-第一天
  • 刀客doc:小红书商业技术负责人苍响离职
  • 信息系统项目管理师——第10章 项目进度管理 笔记
  • 解决Ollama run qwen3:32b: Error: unable to load model问题
  • 阵列麦克风降噪原理
  • 记录一个单独读取evt.bdf的方法
  • 头歌java课程实验(文件操作)
  • 【CF】Day46——Codeforces Round 967 (Div. 2) B
  • 2025年高级Java后端面试题:最新技术体系深度解析
  • java发送邮件
  • 运行不会存储上一次的命令;运行命令不保存历史记录
  • 算法备案类型解析:如何判断你的算法属于哪种类型?
  • conda添加新python版本环境,如何激活和销毁
  • 深入理解 Web Service:原理、组件与核心技术详解
  • c++ 内部类
  • linux使用亚马逊aws-sdk-cpp
  • 适合五一劳动节的SVG模版
  • C++/SDL 进阶游戏开发 —— 双人塔防(代号:村庄保卫战 15)
  • Windows多网卡设置路由冲突的解决
  • 程序员如何用AI工具实现“快速验证原型”
  • Rational Rose显示工具栏及添加工具栏中想要的工具(小人图标,用例图标)
  • 浏览器限制了cookie数量怎么办
  • Educational Codeforces Round 178 (Rated for Div. 2)
  • 什么是单臂路由
  • 制作JDK17 arm64基础镜像,解决字体安装问题
  • 使用Python将大文件夹中的文件分成文件数量相等的小文件夹
  • AI编程工具“幻觉”风险与飞算JavaAl的破局之道
  • 【滑动窗口】最大连续1的个数|将x减到0的最小操作数
  • 消息处理机制 Handler、Looper 和 MessageQueue
  • DeepSeek 联手 Word,开启办公开挂模式