写点什么

Node 安全项目要进一步提升 Node.js 的安全性

  • 2014-07-02
  • 本文字数:886 字

    阅读完需:约 3 分钟

为了增强 Node.js 的安全性,Node 安全项目已经默默地工作了几个月的时间。这个项目审查 Node.js 现有的模块的目标是 ,帮助“改善 Node 生态圈,增强开发人员和企业对 Node.js 领域安全性的信心。”

这个项目计划通过一个标签系统以分布式方式执行本次审查,该系统提供了处理咨询、问题以及拉动需求的骨架,这样就可以在 Node 社区的帮助下完善模块了。

Node.js 的主要安全担忧之一就是服务端 JavaScript 注入(SSJS 注入)的可能性,它类似于跨站 JavaScript 注入。Adobe 的高级安全研究员 Bryan Sullivan发表了一篇论文,在文中解释了一些运用 SSJS 注入的攻击手段,使应用程序和数据暴露在风险之下。

这里需要提一下,相比于跨站脚本攻击,利用服务端 JavaScript 注入漏洞的方式与 SQL 注入更加相似。SSJS 注入不像跨站脚本攻击那样需要以社会工程找一个中间事主,而它用随意产生的 HTTP 请求就可以直接攻击应用程序了。

有一个博客作者\0/ bish \0/,他自称自己是个安全狂热分子,他写道,开发人员需要特别注意Node.js 中的很多因素。第一个是eval 语句,“它很容易被用来进行服务端注入”。另一个是“事件驱动的单线程编程模型”,因为它,“一个简单的错误就会导致整个服务瘫痪”。他补充说,“为了安全,应该避免像隐式全局变量、with 语句、eval 语句这样的反模式 。”他也在博文中展示了一些示例,它们都是因为错误地使用了编程语言的特性而被利用的。

所以,较之其他技术Node.js 从本质上并不缺少安全性,因为上面提到的这些威胁,在其他广泛应用于服务端的语言中也同样存在。而正如Adam Baldwin 在 Modulus 公司的一次访谈中提到,这件事情的本质是提升开发人员对影响 Node 平台的安全关注的意识。

Node 安全项目致力于改变 node 社区解决安全问题的方式,它集中力量传播安全原则,审查社区开发的模块,并公布结果。

参考英文原文: Node Security Project Aims at Making Node.js More Secure


感谢夏雪对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-07-02 23:483423
用户头像

发布了 77 篇内容, 共 39.3 次阅读, 收获喜欢 26 次。

关注

评论

发布
暂无评论
发现更多内容

“深时数字地球”新进展!科学智能助推地球科学研究范式变革

ModelWhale

科学智能 地球科学 AI4S DDE深时数字地球

一文搞懂K8s中的RBAC认证授权

不在线第一只蜗牛

Kubernetes 容器 云原生

创业,是加速“祛魅”最有效的办法

程序员郭顺发

Go 切片拷贝性能揭示:大切片总体拷贝时间更长,但单元素成本更低

异常君

Go 性能 内存 优化 切片

Java面试高频核心宝典(含答案)

Geek_Yin

Java 程序员 java面试 Java面试题

金九银十春招必看的2025年Java高频面试题汇总(附答案)

Geek_Yin

Java 编程 程序员 java面试 Java面试题

视觉与图像识别自动化测试 | 音频转文字

测试人

人工智能

从20年架构师的视角解读高性能Java架构核心知识点!

程序员高级码农

Java 程序员

ETLCloud可能遇到的问题有哪些?常见坑位解析

RestCloud

数据处理 ETL 数据集成工具 实时数据集成 离线数据集成

C# 模式匹配全解:原理、用法与易错点

量贩潮汐·WholesaleTide

C#

DePIN代币正构建 Web3 和 AI 融合的新范式

PowerVerse

AI Web 3.0 DAO DePIN gpu 算力

拒绝停服,随时回退:MS SQL 到 ≈ 的无缝数据库双向迁移方案

tapdata

容灾备份 高可用数据库迁移 mssql迁移 sqlserver迁移 双向同步

ES Serverless 8.17王牌发布:向量检索「火力全开」,智能扩缩「秒级响应」!

阿里云大数据AI技术

大数据 运维 数据处理 Server 向量检索

2025全球人形机器人领域深度报告:人形机器人、具身智能技术、商业化壁垒、产业链公司及投资分析

机器人头条

科技 大模型 人形机器人 具身智能

跨端生态×AI赋能:移动研发模式的双擎驱动

xuyinyin

内网im,局域网环境下BeeWorks 如何保障数据安全?

BeeWorks

即时通讯 企业级应用

跨链模式:多链互操作架构与性能扩展方案

区块链软件开发推广运营

dapp开发 链游开发 公链开发 公链开发代币开发 链游开发交易所开发

大数据-07-HDFS集群 基础知识 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件

武子康

大数据 hadoop mapreduce hive

博睿数据×华为, 共筑智慧金融新未来

博睿数据

Go版本的JetCache缓存框架终于来啦

daoshenzzg

Go 缓存 开源

DeFi模式:去中心化金融架构与流动性池设计

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 公链开发代币开发

DAO模式:去中心化治理与代币激励设计

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 公链开发代币开发

甘其果:以《道德经》智慧破局生鲜零售,缔造社区水果新标杆

极客天地

BeeWorks im即时通讯软件:政企通讯首选

BeeWorks

即时通讯 IM 企业级应用

腾讯云TencentOS Server AI,助力荣耀打造高性能AI底座

极客天地

低代码“偷懒”技巧,我建议全公司学!

引迈信息

【6.12 直播】内存泄漏怎么办?时序数据库 IoTDB 官方避坑指南“面对面”告诉你!

Apache IoTDB

Java集合源码--ArrayList的可视化操作过程

电子尖叫食人鱼

Java 算法

为什么别人工资比你高?「程序员性能优化手册」你有吗

Geek_Yin

Java 编程 程序员

HarmonyOS运动开发:打造你的专属运动节拍器

王二蛋和他的张大花

鸿蒙 os

详细教程!Ollama本地部署新版DeepSeek-R1,如何实现远程访问?

贝锐

内网穿透 DeepSeek R1 模型

Node安全项目要进一步提升Node.js的安全性_安全_Sergio De Simone_InfoQ精选文章