定义:xss(cross-site-scripting),跨站脚本攻击。通过存在安全漏洞的web网站注册用户的浏览器内运行非法的非本站点HTML标签或JavaScript进行的一种攻击。
影响:
利用虚假输入表单骗取用户个人信息。
利用脚本窃取用户的cookie值,用户在不知情的情况下,发送恶意请求
现实伪造的文章或者图片
分类
反射型:通过url注入
存储型:存入到了数据库
防御:
csp:内容安全策略,是一种附加的安全层,本质上是建立白名单:// 只允许加载本站资源
content-security-policy:default-src self
// 只允许加载HTTPS协议图片
content-security-policy:img-src https://*
// 不允许加载任何来源框架
content-security-policy:child-src none
转义字符黑名单定义:CSRF跨站点请求伪造(Cross—Site Request Forgery),跟XSS攻击一样,存在巨大的危害性,你可以这样来理解:
攻击者盗用了你的身份,以你的名义发送恶意请求,对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。
攻击的原理
Web A为存在CSRF漏洞的网站,Web B为攻击者构建的恶意网站,User C为Web A网站的合法用户。
CSRF攻击攻击原理及过程如下:
1. 用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A;
2.在用户信息通过验证后,网站A产生Cookie信息并返回给浏览器,此时用户登录网站A成功,可以正常发送请求到网站A;
3. 用户未退出网站A之前,在同一浏览器中,打开一个TAB页访问网站B;
4. 网站B接收到用户请求后,返回一些攻击性代码,并发出一个请求要求访问第三方站点A;
5. 浏览器在接收到这些攻击性代码后,根据网站B的请求,在用户不知情的情况下携带Cookie信息,向网站A发出请求。网站A并不知道该请求其实是由B发起的,所以会根据用户C的Cookie信息以C的权限处理该请求,导致来自网站B的恶意代码被执行。
危害:
利用用户登录台用户不知情完成业务请求盗取用户资金(转账、消费)冒充用户发帖背锅损害网站声誉
防御:
referer Check-https不发送referer验证码cookie值进行hash:攻击者在访问信任网站A时,虽然浏览器可以在其你去中带上cookie,通过cookie来判断用户身份,同时通过用户发送过来的内容的伪随机数来判断请求真正是用户发送的。攻击者在请求A的时候,不能在提交的内容中产生伪随机数。
定义:SQL命令行的注入
防御:
严格限制web应用的数据库的操作权限**,给此用户提供仅仅能够满足其工作的最低权限从而最大限度的减少注入攻击者对数据库的危害
后端代码检查输入的数据是否符合预期,严格限制变量的类型,例如使用正则表达式进行的匹配。
对进入数据库的特殊字符进行转义处理,或编码转换。
定义:把某些命令执行到shell中
防御:
最好不进行在应用程序中输入根据允许值的白名单进行验证验证输入是否为数字验证输入仅包含字母数字字符,不包含其他语法或空格。DNS劫持:DNS服务器被篡改,修改了域名解析的结果,使得访问到的不会预期。
HTTP劫持:运营商劫持,需要升级为HTTPS
定义:DDOS(distributed denial of service),短时间内发起大量请求,耗尽服务的资源,无法响应正常的访问,造成网站实质下线。
防御:
备份网站
HTTP请求的拦截:IP地址和Iser Agent字段,哪个恶意请求ip发出的就给它请求拦截掉。
带宽扩容:买更多的服务器或者CDN上放内容的缓存。
参考:
CSRF攻击与防御(写得非常好)
https://blog.csdn.net/stpeace/article/details/53512283
OS命令注入
https://zhuanlan.zhihu.com/p/161165318
DDOS 攻击的防范教程
https://www.ruanyifeng.com/blog/2018/06/ddos.html
免责声明:本站所有内容及图片均采集来源于网络,并无商业使用,如若侵权请联系删除。
上一篇:你的网站安全吗?