fix: backport prototype vuln. fixes

This commit is contained in:
Barış Soner Uşaklı
2023-07-19 17:52:42 -04:00
parent 354c9c2cc1
commit bb997a78cc

View File

@@ -13,7 +13,7 @@ const logger = require('../logger');
const plugins = require('../plugins');
const ratelimit = require('../middleware/ratelimit');
const Namespaces = {};
const Namespaces = Object.create(null);
const Sockets = module.exports;
@@ -123,7 +123,7 @@ async function onMessage(socket, payload) {
const parts = eventName.toString().split('.');
const namespace = parts[0];
const methodToCall = parts.reduce((prev, cur) => {
if (prev !== null && prev[cur]) {
if (prev !== null && prev[cur] && (!prev.hasOwnProperty || prev.hasOwnProperty(cur))) {
return prev[cur];
}
return null;