Web 安全前置知识
知识学习
论坛
······
漏洞库
······
漏洞 poc 和 exp
[!tip]
poc 漏洞检测脚本,exp 漏洞利用脚本
- Google 直接搜漏洞 poc 学习
······
如何挖漏洞
[!warning]
挖漏洞必须要全局代理,且有授权!!!
挖漏洞必须注册账号、实名制、按照规范挖掘!!!
SRC 应急响应中心
SRC 规范
Web 基础
前端
- 浏览器端运行的编程语言,用户可以直接看到。
- 常见的前端:javascript、CSS、HTML、javascript 框架(jquery、bootstrap、vue、next.js、typescript、React、Angular)、ui 框架
后端
- 服务器端运行的编程语言。
- 常见的后端:java(spring mvc、spring boot、struts2)、python(django、flask、fastapi)、GO(GIN)、php(thinkphp、codeigniter、laravel)、javascript(node.js)、asp.net
Web 历史与发展
前后端融合阶段
- 前后端代码没有分离:如一个文件中有 HTML、CSS、JS、php
MVC 阶段
[!note]
已淘汰,但仍有部分网站使用。
- 控制器(Controller,C):是网站的功能,一般一个功能对应一个控制器,用于接收用户请求,协调模型与视图。
- 模型(Model,M):处理核心数据逻辑,与数据库交互(增删改查)。
- 视图(View,V):整合模型数据与前端界面模板,生成最终返回前端的响应。
前后端分离 1.0——CSR 阶段
后端专注于逻辑开发:API 接口,一个功能对应一个 API
- 查询用户信息:
/api/user/getUserinfo
接口 - 注册用户:
/api/user/registerUser
接口 - 删除用户:
/api/admin/gdeleteUser
接口 - 修改用户密码:
/api/user/changePasswd
接口 - 发送短信验证码:
/api/sendSMS
接口
- 查询用户信息:
前端专注于界面开发
- 设计好看的 UI,符合交互逻辑的按钮、输出框等
- 如前端开发了一个注册用户的页面,需要后端的介入,前端开发人员会使用 JS 代码(xhr、ajax、axios)调用后端开发人员已经写好的 API 接口(如 /api/user/registerUser)
[!note]
后端开发人员需要为前端开发人员提供 API 使用文档,以供前端开发人员查阅
- 缺陷:所有的请求、计算都交由前端的 JS 来做,所以用户的浏览器的压力太大
前后端分离 2.0——SSR 阶段
- 将 API 接口的请求交由后端的 node.js 来做,前端只负责接收和显示 node.js 返回的页面即可,减轻浏览器压力。