Daily Study
更新: 11/2/2025 字数: 0 字 时长: 0 分钟
Daily Plan
#todo
- [ ]
二分查找/搜索
二分的思想在于,每次淘汰一半(所有二分题目的关键)
Web安全回顾
#security
前端
主要是跨域方面的策略:
- 同源策略:Same-origin policy
- 内容安全策略:CSP
- HTTP访问控制:CORS
CORS和CSP的区别和联系:
- CORS和CSP的区别,实质都是跨域,CORS是浏览器允许获取的网站凭证或数据,而CSP是通过浏览器保护你所访问的内容的安全。
- 这些跨域请求与浏览器发出的其他跨域请求并无二致。如果服务器未返回正确的响应首部,则请求方不会收到任何数据。
具体的漏洞发现、漏洞利用、Bypass 参照:web-sec/vul/VUL-CrossDomain.md at master · ReAbout/web-sec
后端
后端逻辑与安全,主要通过黑盒的测试来检测漏洞,通过获取的信息来判断后端的架构
分层(纵向)
业务服务主要在计算机网络的传输层(TCP、UDP),http应用服务是web安全的重要组成部分,但不是全部,各类的应用服务(数据库、远程桌面等)不能忽略。 
常见的应用服务
- 网站服务 (http[80],https[443]...)
- 远程控制 (ssh[22],telnet[23],rdp[3389]...)
- 数据库服务(mysql[3306],mssql[1433]...)
- 内存数据库服务 (redis[6379],memcache[11211]...)
- 文件管理服务(ftp[21],smb[193,445]...)
- 邮件服务(imap[143],pop3[110]...)
- 进程/设备间通信服务(RPC,MQTT(1883)...)
web应用分层
---用户侧---
- 前端(html,JavaScript等)
- Web应用(CMS,OA,ERP等)
- MVC框架&组件(Thinkphp,FCKeditor等)
- 运行语言(PHP,.NET,Java Web等)
- Web中间件(Apache,Nginx,Tomcat等)
- 数据库系统(Mysql,Mssql等)
- 容器(Docker等)操作系统(Linux,Windows等)
- 虚拟层(qemu,VM等)
---硬件侧---
架构(横向)
- 单机架构:对于攻击者而言,web服务和数据库系统都处于一台服务器中,结构简单
- 站库分离:网站应用服务和数据库不在同一个服务器上。其实这是对于攻击者来说,一个架构阶段,作为开发者可能这是部署的方式而已。因为作为web入门漏洞SQL注入来说,是否是站库分离就很关键了。
- CDN:CDN主要用于网站动、静态资源的访问加速,也用于DDoS的安全防护。 对于攻击者来说,就需要在众多CDN节点中找到真实的后端逻辑服务IP,进行攻击测试。
- 负载均衡和应用网关:随着应用逻辑的复杂度提成,需要统一入口管理,使得应用网关普遍使用。其承载了负载均衡,反向代理,API映射等诸多功能。 对于攻击者来说,这就增加了新的攻击面和防护策略,可以攻击网关应用服务以及利用网关架构造成的前后端不一致的问题(请求走私),但同时网关各类防护策略也需要攻击进行绕过。
- 云平台:对于攻击者而言,系统复杂了,攻击面也细化成不同方向。
OWASP Top 10 2017->2021->2025
2025的11月会发
常见的分类 注入类的漏洞,都是因为信任了输入参数,进而利用各类表达式语言进行利用。
| 前/后端 | 类别 | 漏洞 | 目标 |
|---|---|---|---|
| 前端 | 跨域 | XSS | 浏览器 |
| 跨域 | CSRF | Request | |
| 后端 | 注入 | SSTI | MVC |
| 注入 | SQL注入 | 数据库 | |
| 注入 | 命令注入 | 操作系统 | |
| 不安全配置 | XXE | XML | |
| 不安全设计 | 文件操作 | 文件系统 | |
| 认证缺陷 | 请求走私 | Request | |
| 反序列化 | 反序列化 | 序列化对象 | |
| SSRF | SSRF | Request |
利用效果
- 信息泄露
- 业务功能(越权) 未授权、提升权限或横向越权来操作已有的功能
- 业务干扰 影响已有的业务功能,eg:零元购
- 文件操作(R/W)
- 代码执行(Code)
- 命令执行 (系统)
