系统安全性Web攻击与防范

Posted Java全栈从0到1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统安全性Web攻击与防范相关的知识,希望对你有一定的参考价值。

二、Web攻击与防范

1、XSS攻击

跨站脚本攻击(Cross Site Scripting),因为简写CSS,与层叠样式表(Cascading Style Sheets)有歧义,所以取名XSS

原理:在网页中嵌入恶意脚本程序,在客户端浏览器执行(如用户输入数据转换成代码执行)

防范:输入数据html转义处理(主流框架默认支持)

2、注入攻击

原理:SQL伪装成HTTP请求参数

例如一个登录操作,输入帐号密码

假设后台的Sql是这样拼装的:Select * from user where username = \'输入的帐号\' and password=\'输入的密码\'

那么,我从客户端输入帐号:admin 输入密码:\' or \'1\'=\'1

传到后台后,拼装结果变成:Select * from user where username = \'admin\' and password=\'\' or \'1\'=\'1\'

结果是能查出数据,后台就以为帐号和密码正确

防范:使用预编译语句(PreparedStatement)、使用ORM框架、避免密码明文存放、异常处理(避免异常直接给到前台)

3、CSRF攻击

跨站请求伪造

原理:用户在浏览器登录了站点A,生成了A的cookie;然后访问恶意站点B,B要求访问A,就可以带着A的cookie去访问A站点了,从而使B站点没有认证和授权的情况下获取到了A站点的数据

防范:cookie设置成HttpOnly;添加自定义token;使用Referer(知道请求的源头)

主要不是由开发人员防范

4、文件上传漏洞

原理:上传可执行文件和脚本;不对上传文件进行校验;获取服务器权限

防范:根据文件MagicNumber判断文件类型(JPEG:FFD8FF);文件长度限制;使用第三方框架

5、DDos攻击

分布式拒绝服务攻击(Distributed Denial of Service)

Dos:使用合理的客户端请求占用过多的服务器资源,从而使合法用户无法使用服务

DDos:数量庞大的计算器联合攻击,这些计算器是分布式的

方式:SYN Flood 伪造SYN报文;DNS query Flood;HTTP Flood

6、其它攻击

DNS域名挟持、CDN回源共计、服务器权限提升、缓冲区溢出

以上是关于系统安全性Web攻击与防范的主要内容,如果未能解决你的问题,请参考以下文章

服务器系统安全防范之浅谈

goweb-安全与加密

HTML5技术分享 浅谈前端安全以及如何防范

HTTP攻击与防范--PHP安全配置

跨站请求伪造攻击的基本原理与防范

安全测试 web常规安全漏洞问题介绍和防范说明,如:SQL注入攻击XSS跨站点脚本攻击JS注入注释与异常信息泄露跨站点请求伪造路径遍历与强制浏览越权访问类常见网络安全问题是什么?