
Research
Malicious Go “crypto” Module Steals Passwords and Deploys Rekoobe Backdoor
An impersonated golang.org/x/crypto clone exfiltrates passwords, executes a remote shell stager, and delivers a Rekoobe backdoor on Linux.
Namespaced props (or nice props).
Install the package with this command:
npm install ns-props --save
Then you can require the package with require('ns-props').
This lightweight module contains 3 methods for operating on "namespaced" properties: has, get, and set.
They do exactly what their names indicate; look below for examples.
This is a utility lib created for another project of mine, where I needed to handle dynamic "namespaces". If you don't know beforehand what "namespaces" will be used, then this lib is for you.
If all your "namespaces" are static, then you probably don't need to and shouldn't use this library. Referencing raw properties is always a lot faster.
JavaScript does not have a built-in concept of a "namespace" and this is just one take on what "namespaces" can be in JS. Hence the quotation marks.
var nsProps = require('ns-props');
var obj = {};
nsProps.has(obj, 'ns.prop'); // false
nsProps.set(obj, 'ns.prop', 'value'); // obj is { ns: { prop: 'value' } }
nsProps.has(obj, 'ns.prop'); // true
nsProps.get(obj, 'ns.prop'); // 'value'
obj.ns.prop; // the same as above, 'value'
nsProps.get(obj, 'hello'); // throws an error, no such property
nsProps.set(obj, 'ns.prop.another', 42); // throws an error, obj.ns.prop can't be a namespace
All methods assume that '.' is a "namespace" separator and not a part of a property name when accessing properties.
Objects are tested for inclusion of properties with Object.prototype.hasOwnProperty.
Returns true if there is a "namespaced" property with a name name in object, and false otherwise.
Returns the value of a "namespaced" property name in object.
Throws an error if any part of the "namespace" is missing, including the last (key) part.
Sets the value of a "namespaced" property name in object to value.
Returns undefined.
Throws an error if any sub-"namespace" is already in object and isn't a "namespace".
In lieu of a formal styleguide, take care to maintain the existing coding style.
Add unit tests for any new or changed functionality. Lint and test your code with npm test.
Copyright (c) 2015 FatFisz. Licensed under the MIT license.
FAQs
Namespaced props
We found that ns-props demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
An impersonated golang.org/x/crypto clone exfiltrates passwords, executes a remote shell stager, and delivers a Rekoobe backdoor on Linux.

Security News
npm rolls out a package release cooldown and scalable trusted publishing updates as ecosystem adoption of install safeguards grows.

Security News
AI agents are writing more code than ever, and that's creating new supply chain risks. Feross joins the Risky Business Podcast to break down what that means for open source security.