公司做网站费用和人员配备,宜兴网站建设哪家好,免费营销型网站模版,开办网站需要什么资质https://blog.csdn.net/ChenRui_yz/article/details/86489067 随着互联网的普及#xff0c;网络安全变得越来越重要#xff0c;程序员需要掌握最基本的web安全防范#xff0c;下面列举一些常见的安全漏洞和对应的防御措施。01 常见的Web安全问题1.前端安全XSS 漏洞CSRF 漏洞…https://blog.csdn.net/ChenRui_yz/article/details/86489067 随着互联网的普及网络安全变得越来越重要程序员需要掌握最基本的web安全防范下面列举一些常见的安全漏洞和对应的防御措施。01 常见的Web安全问题1.前端安全XSS 漏洞CSRF 漏洞2.后端安全SQL 注入漏洞程序员学架构mikechen优知02 XSS漏洞1.XSS简介跨站脚本cross site script简称为XSS是一种经常出现在web应用中的计算机安全漏洞也是web中最主流的攻击方式。XSS是指恶意攻击者利用网站没有对用户提交数据进行转义处理或者过滤不足的缺点进而添加一些代码嵌入到web页面中去使别的用户访问都会执行相应的嵌入代码。2.XSS攻击的危害 盗取用户资料比如登录帐号、网银帐号等 利用用户身份读取、篡改、添加、删除数据等 盗窃重要的具有商业价值的资料 非法转账 强制发送电子邮件 网站挂马 控制受害者机器向其它网站发起攻击。3.防止XSS解决方案XSS的根源主要是没完全过滤客户端提交的数据 所以重点是要过滤用户提交的信息。 将重要的cookie标记为http only, 这样的话js 中的document.cookie语句就不能获取到cookie了. 只允许用户输入我们期望的数据。 例如age用户年龄只允许用户输入数字而数字之外的字符都过滤掉。 对数据进行Html Encode 处理 用户将数据提交上来的时候进行HTML编码将相应的符号转换为实体名称再进行下一步的处理。 过滤或移除特殊的Html标签 例如:过滤js事件的标签。例如 “οnclick”, “onfocus” 等等。03 CSRF攻击跨站点请求伪造1.CSRF简介CSRFCross-site request forgery跨站请求伪造也被称为“One Click Attack”或者Session Riding通常缩写为CSRF或者XSRF是一种对网站的恶意利用。XSS主要是利用站点内的信任用户而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站。与XSS攻击相比CSRF更具危险性。2.CSRF攻击的危害主要的危害来自于攻击者盗用用户身份发送恶意请求。比如模拟用户发送邮件发消息以及支付、转账等。3.防止CSRF的解决方案重要数据交互采用POST进行接收当然是用POST也不是万能的伪造一个form表单即可破解。使用验证码只要是涉及到数据交互就先进行验证码验证这个方法可以完全解决CSRF。但是出于用户体验考虑网站不能给所有的操作都加上验证码。因此验证码只能作为一种辅助手段不能作为主要解决方案。验证HTTP Referer字段该字段记录了此次HTTP请求的来源地址最常见的应用是图片防盗链。为每个表单添加令牌token并验证。04 SQL注入漏洞1.简介程序员学架构mikechen优知SQL注入是比较常见的网络攻击方式之一主要是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串实现无帐号登录甚至篡改数据库。2.SQL注入的危害数据库信息泄漏数据库中存放的用户的隐私信息的泄露;网页篡改通过操作数据库对特定网页进行篡改;数据库被恶意操作数据库服务器被攻击数据库的系统管理员帐户被窜改;服务器被远程控制被安装后门;删除和修改数据库表信息.3.SQL注入的方式通常情况下SQL注入的位置包括表单提交主要是POST请求也包括GET请求URL参数提交主要为GET请求参数Cookie参数提交HTTP请求头部的一些可修改的值比如Referer、User_Agent等4.简单举例举一个简单的例子,select * from user where id100 ,表示查询id为100的用户信息如果id100变为 id100 or 22,sql将变为select * from user where id100 or 22将把所有user表的信息查询出来这就是典型的sql注入。5.防止SQL注入的解决方案对用户的输入进行校验使用正则表达式过滤传入的参数使用参数化语句不要拼接sql也可以使用安全的存储过程不要使用管理员权限的数据库连接为每个应用使用权限有限的数据库连接检查数据存储类型重要的信息一定要加密。总之就是既要做好过滤与编码并使用参数化语句也要把重要的信息进行加密处理这样SQL注入漏洞才能更好的解决。觉得有用请点赞支持下欢迎转载但须原文显示、明显注明出处mikechen优知的往期技术分享码了几年代码的程序员有一定的开发经验应该如何提升自己高并发架构系列Kafka、RocketMQ、RabbitMQ的优劣势比较高并发架构系列如何从0到1设计一个MQ消息队列欢迎留言或进我的Q裙179961551交流本群专用于学习交流技术、分享面试机会拒绝广告我也会在群内不定期答题、探讨。 --------------------- 作者mikechen优知 来源CSDN 原文https://blog.csdn.net/ChenRui_yz/article/details/86489067 版权声明本文为博主原创文章转载请附上博文链接转载于:https://www.cnblogs.com/fengff/p/10917372.html