前端常见安全性问题

一、常见的安全性问题

1、XSS(Cross-Site Scripting)脚本攻击漏洞;
2、CSRF(Cross-sit request forgery)漏洞;
3、iframe安全隐患问题;
4、本地存储数据问题;
5、第三方依赖的安全性问题;
6、HTTPS加密传输数据;
7、SQL注入
8、文件上传漏洞

二、XXS攻击(Cross Site Scripting)(跨站脚本攻击)

## xss攻击

XSS(Cross Site
Scripting),跨站脚本攻击。XSS是常见的Web攻击技术之一.所谓的跨站脚本攻击指得是:恶意攻击者往Web页面里注入恶意Script代码,用户浏览这些网页时,就会执行其中的恶意代码,可对用户进行盗取cookie信息、会话劫持等各种攻击.
例如:在表单提交时,输入js代码等或是增加提交请求时的网页,盗取信息

解决方法:

  1. 输入过滤,对输入的数据进行严格校验,诸如< script >、< img >、< a >等标签进行过滤
  2. 编码,一些常见的符号,如<>在输入的时候要对其进行转换编码,这样做浏览器是不会对该标签进行解释执行的,同时也不影响显示效果
  3. 限制。通过以上的案例我们不难发现xss攻击要能达成往往需要较长的字符串,因此对于一些可以预期的输入可以通过限制长度强制截断来进行防御
  4. HttpOnly Cookie,预防XSS攻击窃取用户cookie最有效的防御手段
  5. CSP,原理其实就是白名单机制,开发者明确告诉客户端(浏览器)哪些资源可以加载并执行,我们只需要提供配置,其他的工作由客户端(浏览器)来完成。通过 < meta> 标签开启 < meta http-equiv=“Content-Security-Policy” content=“配置项” >
    配置项:
default-src:用来设置每个选项的默认值
script-src:外部脚本
style-src:样式表
img-src:图像
media-src:媒体文件(音频和视频)
font-src:字体文件
object-src:插件(比如 Flash)
child-src:框架
frame-ancestors:嵌入的外部资源(比如<frame><iframe><embed><applet>)
connect-src:HTTP 连接(通过 XHR、WebSockets、EventSource等)
worker-src:worker脚本
manifest-src:manifest 文件
block-all-mixed-content:HTTPS 网页不得加载 HTTP 资源(浏览器已经默认开启)
upgrade-insecure-requests:自动将网页上所有加载外部资源的 HTTP 链接换成 HTTPS 协议
plugin-types:限制可以使用的插件格式
sandbox:浏览器行为的限制,比如不能有弹出窗口等。
report-uri:有时,我们不仅希望浏览器帮我们防止XSS的攻击,还希望将该行为上报到给定的网址,该选项用来配置上报的地址

例子:

<meta http-equiv="Content-Security-Policy" content="script-src 'self'; object-src 'none'; style-src cdn.example.org third-party.org; child-src https:">
脚本:只信任当前域名
<object> 标签:不信任任何URL,即不加载任何资源
样式表:只信任 cdn.example.org 和 third-party.org
框架(frame):必须使用HTTPS协议加载
其他资源:没有限制

三、CSRF安全漏洞(跨站请求伪造)

CSRF攻击

CSRF(Cross Site Request
Forgery),即跨站请求伪造,是一种常见的Web攻击,但很多开发者对它很陌生。CSRF也是Web安全中最容易被忽略的一种
CSRF攻击的原理:CSRF攻击过程的受害者用户登录网站A,输入个人信息,在本地保存服务器生成的cookie。然后在A网站点击由攻击者构建一条恶意链接跳转到
B网站, 然后B网站携带着的用户cookie信息去访问B网站.让A网站造成是用户自己访问的假相,从而来进行一些列的操作,常见的就是转账.

解决方案:

  1. 验证码,账户交易这种核心步骤,强制用户输入验证码,才能完成最终请求
  2. Referer Check,HTTP Referer是header的一部分,当浏览器向web服务器发送请求时,一般会带上Referer信息告诉服务器是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理。可以通过检查请求的来源来防御CSRF攻击。
  3. Anti CSRF Token,token校验,发送请求时在HTTP 请求中以参数的形式加入一个随机产生的token,并在服务器建立一个拦截器来验证这个token。服务器读取浏览器当前域cookie中这个token值,会进行校验该请求当中的token 和cookie当中的token值是否都存在且相等,才认为这是合法的请求。否则认为这次请求是违法的,拒绝该次服务,token可以在用户登陆后产生并放于session或cookie中,然后在每次请求时服务器把token从session或cookie中拿出,与本次请求中的token
    进行比对。

四、文件上传漏洞

上传漏洞在DVBBS6.0时代被黑客们利用的最为猖獗,利用上传漏洞可以直接得到WEBSHELL,危害等级超级高,现在的入侵中上传漏洞也是常见的漏洞。该漏洞允许用户上传任意文件可能会让攻击者注入危险内容或恶意代码,并在服务器上运行。
文件上传漏洞的原理:由于文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,导致允许攻击者向某个可通过 Web
访问的目录上传任意PHP文件,并能够将这些文件传递给 PHP 解释器,就可以在远程服务器上执行任意PHP脚本。

解决方法:

  1. 检查文件类型及后缀
  2. 定义上传文件类型白名单,即只允许白名单里面类型的文件上传
  3. 文件上传目录禁止执行脚本解析,避免攻击者进行二次攻击

五、限制URL访问,越权访问

系统已经对URL的访问做了限制,但这种限制却实际并没有生效。攻击者能够很容易的就伪造
请求直接访问未被授权的页面

解决方法:

  1. 在公共模块增加校验方式,查看是否具有对应权限
  2. 监听路由跳转,在路由跳转之前,增加校验
  3. 和后台联调,将对应的信息存入cookie,在数据访问时进行对比

六、不安全的加密存储

常见的问题是不安全的密钥生成和储存、不轮换密钥,和使用弱算法。使用弱的或者不带salt
的哈希算法来保护密码也很普遍。外部攻击者因访问的局限性很难探测这种漏洞。他们通常 必须首先破解其他东西以获得需要的访问。

解决方法:

  1. 可以通过加密方式增加安全
  2. 增加随机数,在请求头中指定随机数,切换请求从新生成
  3. 增加公钥和私钥方式,定时更换
  4. 对重复提交请求做限制

七、SQL注入攻击

SQL注入(SQL Injection),应用程序在向后台数据库传递SQL(Structured Query
Language,结构化查询语言)时,攻击者将SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.

解决方案:

  1. 防止系统敏感信息泄露。设置php.ini选项display_errors=off,防止php脚本出错之后,在web页面输出敏感信息错误,让攻击者有机可乘。
  2. 数据转义。设置php.ini选项magic_quotes_gpc=on,它会将提交的变量中所有的’(单引号),”(双引号),(反斜杠),空白字符等都在前面自动加上\。或者采用mysql_real_escape()函数或addslashes()函数进行输入参数的转义。
  3. 增加黑名单或者白名单验证。白名单验证一般指,检查用户输入是否是符合预期的类型、长度、数值范围或者其他格式标准。黑名单验证是指,若在用户输入中,包含明显的恶意内容则拒绝该条用户请求。在使用白名单验证时,一般会配合黑名单验证。

八、OS命令注入攻击

OS命令注入攻击指通过web应用,执行非法的操作系统命令达到攻击的目的。
在这里插入图片描述

如何防御

  1. 后端对前端提交内容进行规则限制(比如正则表达式)
  2. 在调用系统命令前对所有传入参数进行命令行参数转义过滤
  3. 不要直接拼接命令语句,借助一些工具做拼接、转义预处理,例如Node.js的shell-escape npm包
  • 11
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
网络安全调研报告全文共6页,当前为第1页。网络安全调研报告全文共6页,当前为第1页。网络安全调研报告 网络安全调研报告全文共6页,当前为第1页。 网络安全调研报告全文共6页,当前为第1页。 -网络安全责任制落实情况 1、制定网络安全组织管理相关制度,指定了网络安全主管领导小组、网络安全员,专人 负责,专人检查,保障了网络安全工作的正常运行。 2、加强网络安全管理,通过上网行为管理设备全面检查机关内网与外网的使用,进一步 规范机关网络使用者对网络上各种应用的浏览与使用,对违反网络安全制度的进行通报批 评。 3、进一步扩大对网络安全知识培训面,组织信息员和干部职工进行培训,切实增强网络 安全制度的落实工作,不定期的对安全制度执行情况进行检查,从而提高人员安全防护意 识。4、对网络信息使用重点部门主要负责人签署《网络安全保证书》,明确网络安全责任。 二网络安全领域面临的主要风险和安全隐患1.发现的主要安全隐患 经过对涉及公共信息部分的网络架构与部署的调研发现,网站存在业务数据机密性要 求高、业务连续性要求强、网络结构相对封闭、信息系统架构形式多样等特点。而网站中 不同业务功能模块的信息安全需求乂各不相同。如对外便民服务信息系统具有相对开放的 结构特点,用户一般为普通民众,便民服务业务对数据的可用性和完整性要求往往大于其 对机密性要求,而在网站上独立运行的业务信息系统具有相对封闭的结构特点,用户一般 为内部用户,用户对数据的完整性和保密性要求往往大于可用性要求。因此政府网站安全 风险贯穿前端Web访问到后端数据处理和反馈整个过程。因此可以定性的认为:前一类信 息系统面临的服务中断、外部黑客攻击、非法入侵、安全漏洞等威胁的概率比较大,而后 一类的内网泄密、监管审计不到位等威胁的概率比较大。所以结合实际情况与打造"最安全 的经济技术开发区"目标要求,来对网站实施全面的监测预警和防护服务。 .面临的安全威胁与风险 近年来政府门户网站被篡改、网络钓鱼、SQL注入和跨站脚本等带来严重后果的攻击 事件频频发生,严重影响了人们对政府网站公信力的认可,经过数据分析,基于Web的应 用基本都存在安全问题,其中很大一部分是相当严重的问题。Web应用系统的安全性越来 越引起人们的高度关注。目前网络中常见的攻击已经111传统的系统漏洞攻击逐渐发展演变 为对应用自身脆弱性的攻击。与此同时.,政府网站也因安全隐患频繁遭到各种攻击,导致 网站敏感数据丢失、网页被网络安全调研报告全文共6页,当前为第2页。网络安全调研报告全文共6页,当前为第2页。篡改,甚至成为传播木马的傀儡。政府网站安全形势日益严峻, 而政府网站被攻击后造成的巨大政治风险、名誉损失、公信力下降已经成为电子政务健康 发展的一个巨大障碍。 网络安全调研报告全文共6页,当前为第2页。 网络安全调研报告全文共6页,当前为第2页。 .整体安全状况的基本判断 目前政府网站总体运行状态良好,整体安全性较好,但是安全是相对的,必须加强安 全防范才能保障关键信息系统的正常运行。加强信息系统的安全防护不仅要从网站的业务 应用角度出发,也要从信息安全角度考虑,部署信息系统的全局安全策略,不仅要解决局 部安全问题,还要解决整体的安全问题,提高整体的安全效率,避免多个信息安全孤岛的 出现。只有加强政府网站安全管理、防范措施、安全意识,才能避免黑客的攻击。某些政 府网站被篡改后长期无人过问,还有些政府网站虽然在接到后能够恢复,但并没有根除安 全隐患从而反复遭到多次篡改。因此针对这种现状,必须采取专门的监管机制,围绕政府 网站特定的安全需求开展系统的、有针对性的网站安全监管和防护,并提供专业的信息安 全服务,保障信息化安全平稳运行为业务及经济发展提供有力支撑。 .改进措施 结合我单位信息化现状,根据前期初步调研结果及综合风险分析并结合我公司多年信 息安全规划、建设、运作、管理的过程中积累大量经验作出以下整改措施: 部署云安全服务平台-网站预警监控及防护子平台 云安全服务平台依托于云计算、大数据技术,以实现公共数据云安全的管理可视化、 掌控全局化、监测实时化、运维便捷化、风险预警化、防护立体化、应急响应同步化、安 全服务智能化、问题可追溯化。云安全服务平台中网站预警及防护子平台将为开发区各类 公共信息业务系统构建网站信息安全监测及防护体系; .整体效果 通过云安全服务平台和先进技术架构及产品搭建的信息安全防护支撑中心形成的数 据中心信息安全支撑体系、独创的公共信息云安全服务平台、定制化的安全服务体系将为 开发区建设一个立体全方位无死角的高效安全防护体系,有效的保障各类业务的正常开展 及稳定的开展,保护敏感数据信息的安全。 关于网络安全现状的 随着互联网技术和业务的迅速发展,计算机网络安全问题已经日益突出和复杂化,同 时政网络安全
常见网络安全产品介绍 常见网络安全设备简介全文共30页,当前为第1页。 常见网络安全产品汇总 常见网络安全设备简介全文共30页,当前为第2页。 常见边界安全产品——防火墙 防火墙定义:保护网络周边安全的关键设备,可以保护一个"信任"网络免受"非信任"网络的攻击,但是同时还必须允许两个网络之间可以进行合法(符合安全策略)的通信。 下一代防火墙(NG Firewall),是一款可以全面应对应用层威胁的高性能防火墙,提供网络层及应用层一体化的安全防护。 主要用途:用于边界安全防护的权限控制和安全域的划分 常见网络安全设备简介全文共30页,当前为第3页。 常见边界安全产品——防火墙 常见的三种部署模式: 1)透明模式 2)路由模式 3)旁路模式 常见网络安全设备简介全文共30页,当前为第4页。 常见边界安全产品——DDOS防火墙 DDOS攻击:利用合理的服务请求来占用过多的服务资源,从而使服务器无法处理合法用户的请求。 DDOS防火墙:利用其独特的抗攻击算法,可有效防御Dos/DDoS、代理CC、ICMP、SYN、ARP攻击、SYNFLOOD等多种未知攻击。 主要用途:用于抵抗各种DDOS攻击 常见网络安全设备简介全文共30页,当前为第5页。 常见边界安全产品——DDOS防火墙 抗拒绝服务系统接入机房核心交换机前端防护,核心交换机下所有主机进入防护区 DDOS防火墙 路由器 核心交换机 接入交换机 接入交换机 接入交换机 服务器群 常见网络安全设备简介全文共30页,当前为第6页。 常见边界安全产品——网闸 网闸:双向网闸是一款部署于强隔离网络环境、能够有效实现不同安全级别网络之间的安全隔离和信息交换的专用产品。产品采用专用隔离设备和模块化工作组件设计,通过链路阻断、协议转换的方式,使得数据只能以专有数据块的方式静态地在两个网络之间进行"摆渡",从而切断两个网络之间的所有直接连接,保证不同安全级别网络之间的数据能够安全、可靠地交换。 单向网闸是一款用于由低密级网络向高密级网络单向导入数据的隔离装置 主要用途:物理隔离不同区域 常见网络安全设备简介全文共30页,当前为第7页。 常见边界安全产品——网闸 部署在两个不同的安全域网络之间,两个安全域分别连接产品的外网接口和内网接口,实现面向不同安全域或网络间的隔离与数据交换。 常见网络安全设备简介全文共30页,当前为第8页。 常见应用安全产品——入侵防御系统(IPS) IPS:是一个能够监视网络或网络设备的网络资料传输行为的网络安全设备,能够即时的中断、调整或隔离一些不正常或是具有伤害性的网络传输行为。 主要用途:对应用层的深层攻击行为进行防御,能对防火墙短板的进行补充 常见网络安全设备简介全文共30页,当前为第9页。 常见应用安全产品——入侵防御系统(IPS) 入侵防御系统串联部署和旁路部署在网络中 常见网络安全设备简介全文共30页,当前为第10页。 常见应用安全产品——web应用防火墙(WAF) WAF:是以网站或应用系统为核心的安全产品,通过对HTTP或HTTPS的Web攻击行为进行分析并拦截,有效的降低网站安全风险。产品主要部署在网站服务器的前方。 主要用途:可以有效地缓解网站及Web应用系统面临常见威胁;可以快速地应对恶意攻击者对Web业务带来的冲击,让网站免遭Web攻击侵扰并对网站代码进行合理加固 常见网络安全设备简介全文共30页,当前为第11页。 常见应用安全产品——web应用防火墙(WAF) 路由器 核心交换机 接入交换机 接入交换机 接入交换机 Web应用服务器群 WAF Web应用防火墙串联透明部署在Web服务器的前端,在物理层面是Web服务器的前端多了一台硬件设备,但在网络层面是Web服务器的前端没有任何硬件设备 常见网络安全设备简介全文共30页,当前为第12页。 常见应用安全产品——负载均衡 负载均衡:分为链路负载、服务器负载和全局负载,在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。 主要用途: 1)链路负载均衡 整合多运营商链路,实现流量智能分配,帮助客户充分利用带宽资源;规避单点故障风险。 提供运营商内部快速访问路径,避免跨运营商访问带来的网络延迟,提升客户网络访问速度和访问质量。 2)服务器负载均衡 解决单台服务器硬件性能瓶颈问题,帮助客户通过增加服务器的方式整合服务器硬件资源,平行扩展业务系统的处理能力。实现多台服务器之间的冗余热备,服务器软硬件故障自动切换,保障客户业务系统能够对外提供持续可靠的服务。 3)应用优化 支持TCP连接复用、HTTP压缩、SSL卸载。 常见网络安全设备简介全文共30页,当前为第13页。 常见应用安全产品——负载均衡 防火墙 核心交换机 接入
### 回答1: JavaScript 是一种流行的网页编程语言,它主要用于客户端网页开发,可以与用户交互、动态更新网页内容等。然而,由于 JavaScript 运行在客户端,它也存在一定的安全风险。 前端安全是指保护网站和用户免受前端攻击的过程。前端攻击是指通过欺骗用户或利用网站漏洞来获取用户敏感信息或窃取用户账户的行为。 为了保证前端安全,你需要注意以下几点: 1. 验证用户输入:不要相信用户的输入,应当对所有的输入进行验证,以防止恶意代码注入。 2. 加密敏感信息:对于用户的敏感信息(如密码),应当使用加密技术(如 HTTPS)来保护其安全。 3. 避免使用不安全的 API:JavaScript 中有一些 API(如 eval())本身就不安全,应当尽量避免使用这些 API。 4. 安装防火墙和安全插件:使用防火墙和安全插件可以帮助你保护网站免受攻击。 5. 定期更新系统和浏览器:保持系统和浏览器的最新版本可以帮助你保护网站免受 ### 回答2: JavaScript 前端安全是指在开发、部署和运行前端代码过程中,保护系统和用户的安全性。下面是几个关于JavaScript前端安全的主要方面: 1. 防止跨站脚本攻击(XSS):XSS是指攻击者向网页注入恶意脚本,然后在用户浏览器中执行这些代码。为了防止XSS攻击,开发者应该对输入数据进行严格的过滤和验证,并使用合适的编码来防止脚本注入。 2. 防止跨站请求伪造(CSRF):CSRF是指攻击者通过伪造用户请求,利用用户已登录的身份执行恶意操作。为了防止CSRF攻击,开发者应该使用CSRF令牌(token)来验证每个用户请求的合法性,并在关键操作中采取额外的保护措施。 3. 控制访问权限:前端需要确保不恰当的访问权限不能被滥用。开发者应该对服务端返回的数据进行合适的权限验证,并在客户端代码中实施访问控制策略,确保只有有权用户可以访问敏感信息或功能。 4. 使用安全的存储方式:前端代码可能需要处理用户输入或敏感信息。为了防止这些数据被窃取或篡改,开发者应该使用安全的存储方式,如加密存储或使用浏览器提供的安全存储API(如localStorage或sessionStorage)。 5. 防止代码注入:开发者应该确保在前端代码中避免注入攻击。这包括对用户输入进行严格的过滤和验证,并使用合适的编码方式来防止恶意代码注入。 综上所述,JavaScript前端安全是开发者应该关注和采取措施的重要方面。通过合适的输入验证、访问控制、存储保护和代码注入预防,可以确保前端应用的安全性,最大限度地保护用户和系统的安全

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值