您当前的位置:首页 > 电脑百科 > 网络技术 > 网络安全

网络安全逐渐成为程序员的必备技能

时间:2020-09-04 10:49:48  来源:  作者:

大家好,我是Z哥。

不知道大家有没有发现。如今,曝光某些知名公司信息泄露的事件频率越来越高。与之对应的,网络安全问题也越来越受到重视。

从百度指数摘录了两张图给大家分享下。

网络安全逐渐成为程序员的必备技能

 

可以看到,对网络安全相关的信息和关注度在逐渐走高,特别是近几年的几次大型数据泄露等安全事件引起了不小的舆论轰动。

说实话,现在在企业做CTO风险还是蛮大的,万一所在的企业出现什么网络安全事件,CTO也得承担责任。

虽然说我们广大程序员们不用承担责任,但是一旦经你手发生的安全事件,你自然也会受到或多或少的牵连。

 

写这篇文章的时候正好想起一个段子,分享给大家图个乐:

有人问一位搞 WEB 安全的人为什么 php 是世界上最好的语言,他的回答是 PHP 网站漏洞多,有饭吃。

这可能也是目前PHP的声音越来越小的原因之一吧。

 

其实排除一些特定框架中的特定安全问题,具有普遍性的安全问题也不少。其中最常见的就属以下几种,我觉得我们每一位程序员应该都要知道如何尽量避免这些常见问题的发生。

  1. SQL注入
  2. 跨站脚本攻击(XSS)
  3. 跨站请求伪造(CSRF)
  4. 越权漏洞

 

/01 SQL注入/

SQL注入应该是最多人知道的一个安全问题。原因是由于SQL语句的编写是通过字符串拼接进行的,包括参数。那么一旦用户输入的参数改变了整个语句的含义,执行SQL语句的结果就变得不可预期了。比如,

SELECT * FROM user WHERE id = ‘1 or 1 = ‘1’ 。加粗部分就是用户输入的内容。

如果上面的这段SQL语句被执行,用户信息就全部泄露了。

SQL注入还有很多变种,比如故意让语句执行报错之类,从错误信息中获取重要信息。

如何防范呢?只要避免SQL拼接,使用参数化的方式执行SQL即可。比如上面这个例子,如果@id参数的数据类型是int,那么「or 1=‘1」自然无法转换成int类型。

 

/02 跨站脚本攻击(XSS)/

XSS最常出现在一些内容型站点上,因为他主要针对的是根据服务端数据动态渲染html的页面。

比如,当我在某个社区回复帖子的时候,故意输入了「楼主牛逼~</div><script>alert(250)</script>」。如果服务端没有做好相应的处理,直接把内容原封不动的存到了数据库,那么当帖子翻到我的回复所在的楼层,就会在显示“楼主牛逼”字样的同时出现一个提示“250”的弹窗。

当然,只是弹个窗没啥意思。如果脚本中获取用户本地的cookie信息上传到指定服务器,那么其他人就可以利用该用户的cookie登陆他的账号了,想想就有点后怕。

 

如何防范呢?要么就是过滤掉这种html标签,因为大多数场景纯文本就能满足。如果实在有富文本的需求,可以进行一次转义,作为字符来存储,避免将html标签直接保存下来。

另外,针对cookie可以设置一下httponly,这样的话js就无法获取cookie信息了。

 

/03 跨站请求伪造(CSRF)/

CSRF就是利用浏览器的缓存以及网站的登陆状态记忆功能,通过恶意脚本向你刚访问过的网站发起请求,让网站误认为是你本人在操作。

比如,你刚访问过某银行网站,甚至正在另一个标签页里打开着这个银行网站。然后此时不小心点又开了一个钓鱼网站,页面里面的脚本发起向该银行网站的转帐请求,你的银行账户就莫名其妙少了一笔钱。(当然现在的银行网站都考虑了这个问题)

 

如何防范呢?作为网站的开发者,最简单的方式就是对referer做判断,看发起该请求的来源是否可信。当然更好的方式是给每一个正常登陆的用户分配一个token,用户发起的每次请求都对这个token做一下有效性验证。

 

/04 越权漏洞/

「越权」顾名思义,就是超越应有的权限。比如,某个电商网站查看订单信息的url是http://www.dianshang.com/order/10001。这样的格式,如果我手动把url最后的数字修改成10002发起请求,如果服务端没有校验当前登陆人的信息,那么这个10002的订单信息就被越权获取了。

如何防范呢?主要有两点。

  1. 做好权限校验,不要偷懒。
  2. 编号或者id类的数据,避免顺序增加。还有一个额外的好处是,避免竞争对手猜到你们的真实订单数。

其实还有很多安全问题,比如支付漏洞(支付金额未校验)、上传攻击等等。但是处理起来的大体思路上和上面提到的这4个是类似的。

为了便于大家理解以及在编码时更具安全意识,我给大家提炼了一些思路。

  1. 只要是外部输入的数据,一定要做好全面的校验,确保处理并返回的数据是符合预期的。
  2. 代码的实现尽量减少多余的外部交互。
  3. 错误处理的时候,一定不要将技术层面的异常信息抛出到用户端,特别是堆栈信息。

如果这些还嫌多,记不住。那么脑子里记住一个词——「严进严出」。

好了,总结一下。

这篇呢,Z哥提醒广大程序员一定要在写代码的时候有安全意识。因为网络安全的重要性会随着互联网的进一步深入到我们的生活变得更加重要。

最常见的4种安全问题,你一定得知道如何应对。

  1. SQL注入
  2. 跨站脚本攻击(XSS)
  3. 跨站请求伪造(CSRF)
  4. 越权漏洞

对于其他的安全问题,只要时刻带着「严进严出」的思想去coding,相信也能杜绝掉大部分的隐患。

不知道你有经历过什么惊心动魄的网络安全事件吗?欢迎在评论区分享你的经验给大家哦。



Tags:网络安全   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
据ZDNet12月24日报道,CISA本周发布了自己的Log4J扫描器,同时发布的还有网络安全公司和研究人员发布的其他扫描器。开源的Log4j扫描器是由开源社区其他成员创建的扫描器派生而...【详细内容】
2021-12-24  Tags: 网络安全  点击:(7)  评论:(0)  加入收藏
(报告出品方:德勤)数字化转型网络安全及转型挑战在任何行业,保持竞争力都需要快速开发新产品和 服务并推向市场。创新型业务模式不仅仅是简单地将现有 流程数字化,其正在覆盖供应...【详细内容】
2021-12-22  Tags: 网络安全  点击:(19)  评论:(0)  加入收藏
网络安全板块是什么 1、网络安全网络安全是计算机行业中网络、计算、储存外的第四个基础设施。是计算机行业中增速最快的超千亿的板块。2、近几个月来大涨四个原因滴滴事件...【详细内容】
2021-12-08  Tags: 网络安全  点击:(18)  评论:(0)  加入收藏
即使在安全技术取得进步之后,网络犯罪仍在不断增加。据统计,网络犯罪每分钟给企业造成约 290 万美元的损失。主要是因为新技术不断涌现,难以维护安全。随着网络威胁的增加,网络...【详细内容】
2021-11-04  Tags: 网络安全  点击:(40)  评论:(0)  加入收藏
网友们,过去一年,您的网络安全段位提升了吗?需要更多的专属利器加持吗?今年我们又为您准备了丰富的网络安全知识大餐,助您驰骋网络,为网络安全护航!2021年10月11日至17日为“国家网...【详细内容】
2021-10-13  Tags: 网络安全  点击:(49)  评论:(0)  加入收藏
随着网络安全防御需求扩大,网安技术、产品和解决方案数量也随之激增。为了了解和驾驭全球网络安全市场,对比国内外网络安全企业的差异,今天我们来看看由国外网络安全垂直媒体eS...【详细内容】
2021-09-18  Tags: 网络安全  点击:(188)  评论:(0)  加入收藏
前言这又是一个关于域内基础概念与原理的系列Active Directory 的查询基础语法BaseDNBaseDN 即基础可分辨名称,其指定了这棵树的根。比如指定 BaseDN 为DC=whoamianony,DC=or...【详细内容】
2021-09-06  Tags: 网络安全  点击:(46)  评论:(0)  加入收藏
前言上次带大家了解了什么是黑客,黑客是干嘛的,今天就来看看黑客的收入和方向怎么样。一个黑客年薪是多少呢?外界普遍认为黑客是高收入群体,那么你想过黑客是怎么赚钱的吗?黑客...【详细内容】
2021-08-24  Tags: 网络安全  点击:(122)  评论:(0)  加入收藏
很多小伙伴都想入行网络安全,因为网络安全高薪,未来发展前景好,但是不知道网络安全学习路线是什么样的?网络安全学多久能找工作?我们就来梳理一下。 网络安全虽然好上手,入门难度...【详细内容】
2021-08-23  Tags: 网络安全  点击:(72)  评论:(0)  加入收藏
随着网络安全被列为国家安全战略的一部分,这个曾经细分的领域发展提速了不少,除了一些传统安全厂商以外,一些互联网大厂也都纷纷加码了在这一块的投入,随之而来的吸引了越来越...【详细内容】
2021-08-12  Tags: 网络安全  点击:(109)  评论:(0)  加入收藏
▌简易百科推荐
一、背景介绍永恒之蓝是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用Windows系统的SMB漏洞可以获...【详细内容】
2021-12-27  Kali与编程    Tags:勒索病毒   点击:(3)  评论:(0)  加入收藏
一、SQL注入漏洞SQL 注入攻击( SQL Injection ),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。在设计程序,忽略了对输入字符串...【详细内容】
2021-12-10  华清信安    Tags:Web漏洞   点击:(23)  评论:(0)  加入收藏
AD域是目前大型企业常用的内网管理方案,但随着近年来实网演习的常态化和不断深入,AD域安全越来越得到企业的重视。不论是在演练还是在真实的高级攻击场景中,在复盘中可以看出,大...【详细内容】
2021-10-27    中国信息安全  Tags:AD域   点击:(38)  评论:(0)  加入收藏
网友们,过去一年,您的网络安全段位提升了吗?需要更多的专属利器加持吗?今年我们又为您准备了丰富的网络安全知识大餐,助您驰骋网络,为网络安全护航!2021年10月11日至17日为“国家网...【详细内容】
2021-10-13    九派教育  Tags:网络安全   点击:(49)  评论:(0)  加入收藏
拓扑环境 Kali Linux(攻击机) Centos6.4(web服务器) win7(域成员主机无法上网) win2008R2(域控无法上网) 目的通过Kali Linux拿到域控权限2021最新整理网络安全\渗透测试/安全学习(全...【详细内容】
2021-09-17  KaliMa    Tags:内网渗透   点击:(84)  评论:(0)  加入收藏
前言这又是一个关于域内基础概念与原理的系列Active Directory 的查询基础语法BaseDNBaseDN 即基础可分辨名称,其指定了这棵树的根。比如指定 BaseDN 为DC=whoamianony,DC=or...【详细内容】
2021-09-06  KaliMa    Tags:内网渗透   点击:(46)  评论:(0)  加入收藏
堡垒机,听起来就是一个够酷的名字,有用户笑言,听着名儿就觉着安全,就像大块头施瓦辛格一出现在电影镜头里就像终结者一样。 那么,作为内网安全的"终结者",堡垒机究竟是个什么模样...【详细内容】
2021-08-26  IT技术管理那些事儿    Tags:堡垒机   点击:(76)  评论:(0)  加入收藏
1、VMware Workstation Pro 16: https://download3.vmware.com/software/wkst/file/VMware-workstation-full-16.1.0-17198959.exe VMware Workstation Pro 15【建议】 ht...【详细内容】
2021-08-25  Kali与编程    Tags:虚拟机软件   点击:(71)  评论:(0)  加入收藏
很多小伙伴都想入行网络安全,因为网络安全高薪,未来发展前景好,但是不知道网络安全学习路线是什么样的?网络安全学多久能找工作?我们就来梳理一下。 网络安全虽然好上手,入门难度...【详细内容】
2021-08-23  知了堂    Tags:网络安全   点击:(72)  评论:(0)  加入收藏
入侵一些网站,电脑,制作一些病毒,学会多项编程,这是一个普通黑客都会的技能,那么真正黑客能厉害到什么程度呢?除了勒索病毒,熊猫烧香等自动感染的病毒被大家熟知外,还有更厉害的骚操...【详细内容】
2021-08-19  IT技术管理那些事儿    Tags:漏洞   点击:(66)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条