cbor-x 1.5.7 → 1.5.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -497,7 +497,11 @@
497
497
  }
498
498
 
499
499
  function safeKey(key) {
500
- return key === '__proto__' ? '__proto_' : key
500
+ // protect against prototype pollution
501
+ if (typeof key === 'string') return key === '__proto__' ? '__proto_' : key
502
+ if (typeof key !== 'object') return key.toString()
503
+ // protect against expensive (DoS) string conversions
504
+ throw new Error('Invalid property name type ' + typeof key);
501
505
  }
502
506
 
503
507
  let readFixedString = readStringJS;