安全漏洞XSS、CSRF、SQL注入和DDOS攻击的危害?如何防御?
2019-11-25 15:41:31 【

随着互联网的普及与发展,网络安全变得越来越重要,程序员需要掌握最基本的网络安全防范,下面会列出常见的几类安全漏洞,及相应的防范措施。


1-1:XSS简介


跨站脚本,简称XSS,是web应用中经常出现的一种计算机安全漏洞,也是web中最主流的攻击方法。


XSS是指恶意攻击者利用网站不转义用户提交的数据,或者是拥有过滤不足的缺点,然后顺便在网页中添加一些代码,让其他用户在访问时执行相应的嵌入代码。


1-2:XSS攻击的危害


窃取用户信息,如:登录账号、网上银行账号等


使用用户权利身份来标识、读取、篡改、添加、删除数据,等等


盗窃具有商业价值的材料


非法转账


恶意电子邮件


网站挂马


控制受害机器对其他站点发起攻击


1-3:防止XSS解决方案


XSS的根本原因是它没有完全过滤客户端提交的数据,所以重点是过滤用户提交的信息。将重要的cookie标记为http>


只允许用户输入我们期望的数据。例如,年龄只允许用户输入一个数字,除数字外的所有字符都会被过滤掉。对数据进行Html Encode编码处理:当用户提交数据时,用Html进行编码,将对应的符号转换为实体名称,然后进行下一步处理。


过滤或移除特殊的Html标签。过滤js事件的标签。例如 "onclick=", "onfocus" 等。


2-1:CSRF简介


跨站请求伪造(Cross -site request forgery),也称为“一键攻击”Session Riding”,通常缩写为CSRF或XSRF,是对网站的恶意使用


XSS主要利用站点内的可信用户,而CSRF则通过伪装来自可信用户的请求来利用可信站点。CSRF比XSS攻击更危险。


2-2:CSRF攻击的危害


主要的危害来自于攻击者窃取用户的身份并发送恶意请求。例如:模拟用户发送邮件、发送消息以及支付、进行转账等等。


2-3:防止CSRF的解决方案


重要的数据交互使用POST来接收,当然POST不是万能的,伪造Form表单是可以破解的。只要涉及到数据交互,首先验验证码,这种方法就可以完全解决CSRF。


但出于用户体验的考虑,网站不能在所有操作中都使用验证码。因此,验证码只能作为辅助手段,不能作为主要解决方案。


验证HTTP Referer字段,该字段记录HTTP请求的源地址。最常见的应用是图像防盗链接。添加一个令牌token的同时并验证每个表单。


3-1:SQL注入漏洞简介


SQL注入是最常见的网络攻击之一,主要是通过在Web表单提交或输入域名或页面请求查询字符串中插入SQL命令来实现无帐号登录,甚至篡改数据库。


3-2:SQL注入的危害


数据库信息泄露:泄露存储在数据库中的用户隐私信息;


篡改网页:操作数据库篡改特定网页;


恶意操作数据库:攻击数据库服务器,篡改数据库系统管理员帐号;


服务器被远程控制和安装后门;


删除和修改数据库表信息。


3-3:SQL注入的方式


通常,SQL注入的位置包括:


表单提交,主要是POST请求,也有GET请求;


URL参数提交,主要获取请求参数


Cookie参数提交

HTTP请求头的一些可修改值,如Referer、User_Agent等。


3-4:防止SQL注入的解决方案


验证用户的输入,并使用正则表达式筛选传入参数。


使用参数化语句,不连接SQL,或使用安全存储过程。


不要使用具有管理员权限的数据库连接。为每个应用程序使用具有有限特权的数据库连接。


检查数据存储类型;


重要信息必须加密;


4-1:DOS攻击和DDOS简称


拒绝服务攻击(Denial of Service ):由于网络安全防护措施不足,导致用户无法继续使用正常服务的攻击。可以称为拒绝服务攻击,是因为它的目的是网络或计算机通过消耗网络宽带或系统资源,从而无法提供正常的服务。


分布式拒绝服务攻击,简称DDOS,(Distributed Denial of Service)是一种分布式拒绝服务攻击,攻击者控制网络上的傀儡主机,对目标主机发起拒绝服务攻击。


4-2:DDOS的危害


造成客户业务不能使用,金钱利益的损失;客户网络一项业务受到攻击,联网全面被封锁,所有业务瘫痪,连锁反应严重;攻击造成的政治影响和舆论压力会给企业带来巨大的声誉损失。


4-3:如何防御DDOS攻击


及时更新系统补丁


安装杀毒软件和硬件,及时更新病毒库


设置复杂的密码,减少系统控制的可能性


关闭不必要的端口和服务


网络漏洞经常被发现,问题被及时发现并修复。


对于重要的web服务器可以建立多个镜像来实现负载均衡,在一定程度上可以降低DDOS的危害


总之就是既要做好过滤与编码并使用参数化语句,也要把重要的信息进行加密处理,这样漏洞才能更好地被防范。


以上说的这几类攻击还有防御方式并不是能完全抵挡住所有的和规模大的网络攻击,但是会有一定的辅助效果,能起到一定的的作用!


】【打印关闭】 【返回顶部
上一篇几个非常实用且不过时的DOS命令分.. 下一篇服务器安全风险?如何规避?