网络安全基础 | 学习笔记

网络安全基础

Data leak 一大堆,谷歌一下,上亿个条目。 Steam也有过免费充值漏洞。

想要创造一个安全的网站,先要了解常见的黑客攻击手段。

攻击手段

XSS 脚本注入

直接把用户输入的字符串注入DOM进行渲染

举例:输入用户名,然后显示用户名使用

element.innerHTML = username

就会造成脚本注入。

本质上是开发者盲目信任用户提交的内容。

XSS可以难以让用户感知

XSS可以窃取用户的cookie和token等信息,进而黑客可以伪装用户登录

XSS也可以弹窗诱导用户(填写身份证号,银行卡密码这样子的)

举个容易被攻击的前端代码例子:

VulnerableBackend.png

这里直接把content传给后端了,没有过滤,然后dom树直接渲染了

XSS攻击分类:

Stored XSS

恶意脚本存到了数据库中

直接攻击网站全部用户

如:有人在b站上传视频,内嵌XSS攻击,直接泄露你的账号

Reflected XSS

URL中Query : /?param = command

command为攻击者注入的命令

DOM-based

手段和Reflected差不多

XSS_types.png

CSRF攻击

CSRF也叫跨站脚本攻击

跨站伪造请求:登录木马网站却请求其他网站的API

CSRF.png 构造GET请求

GET.png

构造POST请求

POST.png

SQL注入

一张图解释什么叫sql注入

SQL_injection.png 前端: 一个呆子写的,没有安全性的代码 SQL_demo_frontend.png

黑客端:

SQR_injection_hacker.png

删库跑路

XSS-Defense.png

DDoS

TCP握手拒绝

大家都知道TCP三次握手(SYN, ACK是TCP报文首部的参数)

Client->Server: SYN=1

Server->client: SYN=1 ACK=1

Client->Server: ACK=1

这三次握手之后才确立链接。

DoS 就是Denial of Service, 就是客户端第一次握手之后拒绝第三次握手,然后服务端就一直发第二次握手但是求而不得,浪费服务器资源。 DDoS.png

防御网络攻击

XSS-防御

一张图告诉你如何防御XSS

XSS-Defense.png

前端主流框架默认防御XSS

服务端工具:DOM-purify

如果用户输入字符串必须生成DOM?

只能特殊情况特殊处理。注意几点XSS手段:

如果用户上传svg文件?是可以插入script

用户自定义跳转链接?其实可以注入javascript代码

用户自定义样式?偷偷执行攻击代码

同源策略-sameURLpolicy

执行脚本,不跨域名,不跨协议,防御CSRF攻击。

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值