11月16日消息,Web应用程序是直接通过Web浏览器执行精确功能的计算机程序,其中Web浏览器是Web应用程序的客户端。它们与需要安装软件才能运行的传统桌面应用程序不同。本质上,Web应用程序安全性解决了围绕Web应用程序和服务(例如API和网站)安全性的问题。它们确保您的信息系统足够安全,可以保护有价值的数据并保持可操作性。
在应用程序开发生命周期的所有阶段,安全性都是至关重要的考虑因素,尤其是在开发安全性以解决关键业务数据和资源时。您可以通过从软件开发生命周期(SDLC)的第一阶段开始实施安全技术和检查点来改善和确保安全的Web应用程序开发。
为什么Web应用程序安全很重要?
当认识到互联网的实际功能时,Web应用程序的出现是一个巨大的突破。它们已经发展了多年,现在对于各种规模的企业都至关重要。这些应用程序对您的业务至关重要,它们就像威胁者的门户。Web应用程序安全性在商业级别上很重要的三个重要原因:
1.防止敏感数据丢失
网络罪犯一直在寻找敏感数据,以窃取它们,访问网络,并破坏应用程序。如果这些Web应用程序的安全性不高,则网络罪犯可以利用它们窃取敏感的业务信息。
例如,仅在2015年,大约一千万个网站就遭到了恶意黑客的攻击。只有大约7%的组织进行安全审核,因此组织面临24×7的攻击风险。
2.安全不仅仅是测试
即使大多数安全性测试都是自动化的,但渗透测试工具还是与使用它们的人一样有效。渗透测试人员进行的渗透测试是线性的,但是安全性不仅仅限于测试。因此,Web应用程序安全性不再是可选的安全措施。
3.确保企业声誉并减轻损失
如今,全球有超过10亿个网站以及数百万依赖搜索引擎访问个人和商业目的信息的用户。如果您的网站被黑,您将失去消费者信任,这将影响您的企业声誉。同样,遭到黑客入侵的网站中包含受到破坏的数据的网站很可能会被搜索引擎列入黑名单,从而使现有和潜在客户无法使用您的产品和服务。
最常见的Web应用程序安全风险
针对Web应用的攻击有多种,从直接的数据库操作到大规模的网络中断。组织应确保其Web应用程序安全性方法可减轻OWASP确定的十大风险。
1.注射
这是当通过命令或查询将不可信数据发送到解释器时发生的Web应用程序安全风险之一。当攻击者注入看似正常代码的恶意代码时,即可实现此目的。攻击者的敌对数据会欺骗解释器执行意想不到的命令,或者在没有足够授权来危害应用程序的情况下访问数据。
对Web应用程序的注入攻击可能会导致访问授权丢失或系统控制完全丢失,以及宝贵数据丢失。注入漏洞包括LDAP,OS,NoSQL和SQL注入。
2.安全配置错误
这是Web应用程序最常见的风险之一。安全性错误配置是一种由于未修补的缺陷,开放的云存储,不安全的默认配置,错误配置的HTTP标头,不完整或即席配置和/或可能包含敏感信息的错误消息而引起的缺陷。
应用程序安全专家不仅必须确保所有应用程序,框架,操作系统和库的安全配置,还必须确保及时对其进行升级和修补。
3.身份验证失败
当与身份验证和会话管理关联的应用程序功能执行不正确时,授权破裂会给组织带来严重风险。这使恶意行为者可以在短期内或无限期地危害会话令牌,密钥,密码或利用其他执行漏洞来冒充其他用户的身份。
4.脆弱的反序列化
反序列化是指从字节流重新创建数据对象所涉及的过程。当应用不受信任的代码来创建漏洞或远程执行代码时,就会发生不安全的反序列化。让我们假设反序列化漏洞不会导致远程执行代码,但是仍然可以利用它们来执行特权升级攻击,注入攻击和重播攻击等攻击。
5.接触敏感的sata
您企业的另一风险是暴露敏感数据,例如财务信息(帐户详细信息,PIN,个人详细信息),医疗保健信息和个人身份信息(PII)。一旦访问,攻击者便可以窃取或修改那些保护不佳的数据,以进行中间人攻击,信用卡欺诈,网络钓鱼诈骗,身份盗用以及其他相关攻击。
6.访问控制损坏
许多组织未能指定并限制授权执行某些任务的用户数量。网络罪犯利用此缺陷来访问未经授权的数据,查看敏感文件,访问其他用户的帐户,更改访问权限,甚至修改其他用户的数据。
7.跨站点脚本XSS
XSS是一个漏洞,使黑客可以将客户端脚本注入网页中,以劫持用户会话访问权限,直接访问敏感信息,破坏网站,冒充用户或将用户重定向到恶意站点。每当应用程序在未经适当验证的情况下在新网页中包含不受信任的数据或通过浏览器生成的HTML或JavaScript用用户提供的数据更新网站时,就会出现此缺陷。
8.日志和监控不足
有关违规攻击的研究表明,识别违规需要花费200天以上的时间,通常由外部各方而不是内部流程或监视来识别。因此,如果日志记录和监控不足,以及与事件响应的集成不足或失败,恶意行为者可以进一步攻击系统,修改或破坏数据,维持持久性并转向更多系统。
9. XML外部实体(XXE)
配置最差的XML处理器会评估XML文件中的外部实体引用。攻击者可以通过内部端口扫描,内部文件共享,拒绝服务(DoS)攻击,远程代码执行或文件URI处理程序,利用外部实体来揭示内部文件。
10.应用易受攻击的组件
当利用诸如框架,库和其他具有已知漏洞的软件模块之类的组件时,它可能导致严重的数据丢失或服务器劫持。如果您的应用程序和API具有已知漏洞的组件,则可能会破坏您的Web应用程序安全性并带来不同的影响和攻击。