Tag: 安全

只允许连接sails.js中授权的套接字

我正在尝试在sails.js后端(使用0.12.x版本)中为socket.io客户端实现某种安全性。 为了达到这个目的,我试图阻止没有正确的cookie(预先没有授权的会话)的客户握手成功,或者使用passport.js来查看客户端是否被authentication。 在Sails.js文档中,我发现这应该是可能的,但我找不到任何提示,如何真正做到这一点。 另一方面,在互联网上寻找例子,人们大多不使用安全套接字,或使用一些旧版本的sails.js(<0.10)。 到目前为止我发现的最接近的是config/sockets.js : beforeConnect: function(handshake, cb) { if (handshake.headers.cookie) { console.log(handshake); // TODO: check session authorization } else { return cb(null, false); } return cb(null, true); }, 这应该检查与握手发送的cookie,如果它有一个适当的会话。 我很难搞清楚,我怎样才能将cookie中的sid映射到sails.js中的当前会话,以决定是否允许连接。 问题: socket.io最好的安全措施是什么,如果只允许less量的客户端(大约40-50个dynamic生成的用户应该被允许进行连接),还有其他人呢? 如何将cookie中的sails.sid映射到活动会话? 其他的configuration可能是我的目标的捷径(例如设置一些策略,socket.io请求使用与http相同的中间件)? 感谢您的任何提示,链接或build议。

令牌和安全与条纹api为node.js(条纹节点)

sorting一个新手问题。 我正在研究在Angular 2应用程序中使用Stripe,并计划使用node.js实现一个服务器(沿着服务angular网页的服务器),以从angular度客户端接收令牌,然后调用stripe-node函数(需要一个密钥) 从那里。 我想知道如果我需要对我在那里收到的令牌进行validation。 由于任何人都可以看到该服务器的url,他们可以创build问题吗? 谢谢。

使用Stripe API的非安全网站错误

我使用Stripe API在Node.js中创build了一个购物车网页,当我将其部署到Heroku时,出现了一个不安全的网页错误,我的错误是: 您与本网站的连接不安全您不应在此网站上input任何敏感信息(例如密码或信用卡),因为它可能被攻击者偷走 有什么我可以做,以阻止这一点,因为没有图像加载我只在谷歌浏览器中得到这个错误。 在Safari和Firefox中,我甚至没有收到错误,但图像不会加载。

使用NodeJS服务器进行文本散列的安全性

我有一个NodeJS服务器,我需要从客户端散列密码。 由于NodeJS应用程序没有编译,如果我用一种语言编写哈希进程,从中生成一个处理从我的NodeJS应用程序调用的进程的二进制文件,或者如果服务器受到攻击,犯罪者能够逆向处理哈希处理的二进制文件,就像从我的NodeJS应用程序的JS中读取一样简单。

AES-128-GCM在Node V6上validationIV吗?

鉴于此代码: const bufIV = Buffer.alloc(16); const cipher = crypto.createCipheriv(CIPHER, mykey, crypto.randomFillSync(bufIV)); let encrypted = cipher.update(doc, 'utf8', ENCODING); encrypted += cipher.final(ENCODING); IV也会被authentication吗? 这篇文章的结尾似乎表明,它需要,但我真的不明白这是如何工作的。 使用好的IV并不意味着你的密码是安全的。 你也必须authentication你的密文。 当你这样做时,不要忘记validationIV。

简单的会话cookievalidation系统有多安全?

这里给出的最高票数的答案是否安全? 据我所知,通讯没有encryption。 任何其他漏洞需要打补丁真正安全的authentication系统?

Express.js如何在login后使用安全性

我有一个web应用程序正在build立在express.js与postgresql数据库。 我想知道如何实现安全,但每个人都使用不同的东西(我想这是件好事?)。 不同的模块不同的authentication序列等我现在有什么:1)用户表单发布到例如/login2)应用程序路线到特定路线3)在路线我尝试以下 var localconstring = "postgres://" + usr + ":" + pass + "@ip:port/db"; var client = new pg.Client(localconstring); client.on('drain', client.end.bind(client)); client.connect(function (err, client, done) { 数据库使用md5,所以pass已经被db保护了。 究竟应该发生什么? 我应该用salt和散列的用户名和密码,然后保存咸/散列的凭据旁边的盐,然后使用数据库的MD5也? 如果是这样的模块? 我应该如此login或尝试从pg_roles /用户select* 非常感谢! (关于盐和散列如果可能的话,一些详细的例子,因为我很熟悉authentication安全) 忘了提及。 cookies ..authentication后,我设置了以下的cookie: res.cookie('user', req.body.lguser.username, { signed: true }) res.cookie('watcher', o, { signed: true }) 之后再看看 req.signedCookies.user !== undefined 签名属性是否安全?

node.js和它的服务器有多安全?

Node.js为我们提供了一个创build快速服务器的非常简单的方法,所以我们不必使用其他的,比如Apache或者IIS。 这听起来很不错,但是… node.js服务器有多安全? 我们可以比较ISS还是Apache与几年前出生的node.js? 我一直在阅读类似的问题和一些关于它的post ,他们似乎没有激发对安全性的信心。 这些post大多不是最近的。 在过去的几年中,node.js是否提高了安全性,以便能够用于安全的生产站点? 这似乎是大量使用node.js的大公司,但是…是否需要额外的努力才能保护网站? 我猜想使用Express等框架可能会对这个话题有所帮助,但是我不确定哪个范围。

Socket.IO客户端安全性

我是Node.js和Socket.IO的新手。 根据文档 ,客户端代码是这样的: <script src="/socket.io/socket.io.js"></script> <script> var socket = io('http://localhost:3000'); socket.on('news', function (data) { console.log(data); socket.emit('my other event', { my: 'data' }); }); </script> 虽然这对于本地testing来说是非常好的,但我不确定在活动页面上是否真的安全,因为它为服务器提供了直接的URL和事件信息。 我应该改变客户端到别的地方(或者以某种方式隐藏它?)为活页面或它是好的方式?

Node.js安全

我正在build设一个基本的应用程序,使用node.js和mysql,只是得到它的一个挂起,我想保护的API,就像只允许某些人访问数据,也许通过传递一个特定的标记,每次用户请求一些信息,我试图寻找某些使用node.js和mysql数据库和安全性的教程,我很困惑,要使用哪种安全措施,我甚至读了Json Web Tokens,但没有find适当的教程。请指向正确的方向。 编辑 我的意思是说,只有经过身份validation的用户才可以访问api中的数据,当一个随机访问者试图访问一个他不应该被拒绝的URL时,如果没有正确的身份validation,我现在最主要的是当一个用户经过validation,用户应该是发送了某种令牌,然后才能访问私人数据,我不完全知道如何去做这件事情。如果你能为我清理它,会很高兴。