安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
2025年HW(护网面试) 09
1、先做一下自我介绍 2、讲一下你所了解的web漏洞 3、你在SRC挖掘中遇到最多的漏洞是什么 4、SQL注入分为几种 5、详细讲一下SQL注入 6、XSS有几种,详细讲一下 7、XSS除了获取cookie,还有别的用处吗 8、讲一下渗透测试的流程 9、讲一下信息收集都收集那些信息 10、看你简历有写内网渗透,简单讲一下 11、获取shell之后,你是怎么提权的 12、怎么通过数据库获取shell 13、数据库的提权有接触过吗 14、进入到内网之后,怎么去维持权限 15、讲一下黄金票据 16、讲一下APP渗透 17、如果抓不到包,是因为什么 18、讲一下HTTP双向认证 19、了解APT吗
1. 自我介绍
2. Web漏洞概述
Web漏洞主要包括以下类型:
- 注入类漏洞:SQL注入、命令注入、LDAP注入等。
- 跨站脚本(XSS):通过恶意脚本窃取用户数据或会话。
- 跨站请求伪造(CSRF):诱导用户执行非预期的操作。
- 文件处理漏洞:文件上传绕过、路径遍历、文件包含(LFI/RFI)。
- 认证与会话漏洞:弱密码、会话固定、Cookie未加密。
- 服务端配置错误:目录列表暴露、未修复的CVE漏洞、HTTP方法滥用(如PUT)。
- 逻辑漏洞:业务流绕过(如越权访问)、支付金额篡改。
3. SRC中最高频的漏洞
TOP 3漏洞类型:
- SQL注入:常见于未过滤参数的查询接口(如搜索框、订单查询)。
- XSS:用户输入未转义的前端页面(如评论区、个人资料页)。
- 越权访问:垂直越权(普通用户访问管理员功能)和水平越权(访问他人数据)。
4. SQL注入分类
5种主要类型:
- 联合查询注入(Union-Based):通过
UNION
合并恶意查询。- 报错注入(Error-Based):触发数据库报错泄露信息(如
updatexml()
)。- 布尔盲注(Boolean-Based):通过页面返回的真假状态推断数据。
- 时间盲注(Time-Based):通过延时函数(如
SLEEP()
)判断条件成立。- 堆叠注入(Stacked Queries):执行多条语句(需数据库支持,如SQL Server)。
5. SQL注入详解
原理:攻击者通过构造恶意输入,篡改原始SQL逻辑。
利用步骤:
- 探测注入点:输入单引号
'
触发数据库报错。- 判断数据库类型:通过报错信息或函数特征(如MySQL的
version()
)。- 提取数据:利用
UNION
查询获取表名、字段名、敏感数据。- 高级利用:读取文件(
LOAD_FILE
)、写入Webshell(INTO OUTFILE
)。防御方案:
- 使用预编译语句(Prepared Statements)。
- 白名单过滤输入,禁用危险函数(如
exec()
)。- 最小化数据库权限,禁用
FILE
权限。
6. XSS类型与细节
3种类型:
- 存储型XSS:恶意脚本存储于服务端(如论坛帖子),所有访问者触发。
- 反射型XSS:脚本通过URL参数传递,需诱导用户点击(如钓鱼链接)。
- DOM型XSS:前端JavaScript操作DOM时未过滤输入(如
document.write(location.hash)
)。利用场景:
- 窃取Cookie、Session Token。
- 构造伪造登录表单(钓鱼)。
- 发起内网扫描或CSRF攻击。
7. XSS的其他用途
- 键盘记录:通过
onkeypress
事件捕获用户输入。- 内网探测:利用受害者IP访问内网服务(如
<img src="http://192.168.1.1">
)。- 浏览器漏洞利用:结合0day漏洞获取系统权限(如CVE-2021-30551)。
- 篡改页面内容:插入虚假广告或恶意跳转链接。
8. 渗透测试流程
标准流程:
- 授权与范围确认:明确目标、时间、法律边界。
- 信息收集:子域名、IP、端口、员工信息(如LinkedIn)。
- 漏洞扫描:使用工具(Nessus、AWVS)结合手动验证。
- 漏洞利用:获取初始立足点(如Webshell)。
- 权限提升与横向移动:从低权限用户到域控的渗透路径。
- 后渗透阶段:数据窃取、权限维持、痕迹清理。
- 报告编写:漏洞详情、复现步骤、修复建议。
9. 信息收集内容
关键数据:
- 域名相关:子域名(工具:Sublist3r)、备案信息、DNS记录(AXFR请求)。
- 服务器信息:IP地址、CDN识别、端口服务(Nmap扫描)。
- 技术栈:CMS类型(如WordPress)、框架版本(如Spring Boot 2.3.0)。
- 敏感文件:
robots.txt
、.git
泄露、备份文件(如www.zip
)。- 人员信息:员工邮箱、社交媒体动态(如GitHub代码泄露)。
10. 内网渗透核心思路
核心步骤:
- 网络拓扑探测:利用ICMP、ARP扫描绘制内网结构。
- 横向移动:Pass the Hash、PTH攻击、利用SMB漏洞(如永恒之蓝)。
- 域渗透:攻击Kerberos协议(黄金票据)、获取域控权限(DCSync)。
- 数据定位:搜索数据库服务器、文件共享中的敏感文档。
- 隐蔽通信:使用DNS隧道、ICMP隧道绕过防火墙。
11. 提权方法
常见提权路径:
- 系统漏洞:利用未修复的本地提权漏洞(如CVE-2021-34527)。
- 服务配置错误:弱权限服务(如MySQL以SYSTEM权限运行)。
- 计划任务:劫持高权限任务执行的脚本或二进制文件。
- 令牌窃取:模仿管理员进程的Token(如Windows的Incognito工具)。
12. 通过数据库获取Webshell
MySQL示例:
- 确认写入权限:
SELECT @@secure_file_priv
。- 写入PHP Webshell:
sql
SELECT "<?php system($_GET['cmd']);?>" INTO OUTFILE '/var/www/html/shell.php';
条件:数据库用户需具备
FILE
权限,且Web目录可写。
13. 数据库提权经验
MySQL提权方法:
- UDF提权:编译恶意DLL文件,通过
CREATE FUNCTION
调用系统命令。- MOF提权:利用
nullevt.mof
文件执行命令(Windows系统)。- 启动项提权:写入VBS脚本到开机启动目录。
14. 内网权限维持
持久化手段:
- 后门账户:创建隐藏管理员账户或SSH密钥。
- 计划任务:定时反弹Shell或执行恶意脚本。
- 隧道技术:使用Frp或Ngrok建立持久通信通道。
- 黄金票据:伪造Kerberos TGT票据,长期访问域资源。
15. 黄金票据原理
核心概念:
- 利用Kerberos协议缺陷,伪造票据授权票(TGT)。
- 必要条件:获取域控的KRBTGT账户的NTLM Hash。
- 作用:生成任意用户的TGT,绕过密码验证,长期有效(默认10年)。
- 工具:Mimikatz的
golden_ticket
模块。
16. APP渗透重点
测试方向:
- 反编译分析:检查硬编码密钥、敏感逻辑(如Jadx反编译APK)。
- 通信安全:HTTPS证书校验绕过(如Xposed模块JustTrustMe)。
- 本地存储:SQLite数据库、SharedPreferences中的明文数据。
- 组件暴露:Android的Activity、Service导出权限滥用。
- 第三方SDK漏洞:如Facebook Token泄露、阿里云OSS配置错误。
17. 抓包失败原因
常见问题:
- 证书校验:APP启用SSL Pinning(如OkHttp的CertificatePinner)。
- 非HTTP协议:使用gRPC、WebSocket等非标准协议。
- 代理检测:APP检测系统代理设置并拒绝连接。
- VPN或隧道:流量通过加密隧道(如SSH、WireGuard)。
18. HTTP双向认证
工作原理:
- 客户端和服务端均需验证对方证书。
- 客户端:需预装客户端证书(.p12或.pem格式)。
- 服务端:配置CA根证书校验客户端身份。
- 渗透思路:提取客户端证书(如逆向APP),或通过中间人攻击伪造证书。
19. APT攻击理解
关键特征:
- 长期潜伏:攻击周期长达数月甚至数年。
- 定向攻击:针对政府、企业等高价值目标。
- 多阶段渗透:从鱼叉钓鱼到供应链攻击的组合利用。
- 隐蔽性:使用0day漏洞、内存驻留技术(无文件攻击)。
- 目标明确:窃取政治、商业、军事敏感数据。