
Research
wget to Wipeout: Malicious Go Modules Fetch Destructive Payload
Socket's research uncovers three dangerous Go modules that contain obfuscated disk-wiping malware, threatening complete data loss.
websocket-rpc-protocol
Advanced tools
A JSON RPC protocol for working over websockets. Sheds the weight of JSON RPC to simplify argument names and adds features.
Client and server libraries for handling RPC calls between the browser and a Cloudflare websocket interface. The client library will automatically try to reconnect after being disconnected from the server. For details on the protocol see PROTOCOL.md.
npm install websocket-rpc-protocol
import server from 'websocket-rpc-protocol/server';
createServer(websocket, ({ push }) => {
// Any state that could be built up over type during the connection of this single client (user id, etc)
let userState = {};
// Add any functions you want, only those returned will be public
function privateFunction() {
// do something not exposed to the client
}
// Define functions which will be exposed for calling by the client
function sayHi(name?: string) {
return `Hello ${name || 'world'}!`;
}
// return the public API
return {
sayHi,
namespace: {
sayBye(name?: string) {
return `Goodbye cruel ${name || 'world'}!`;
}
}
};
});
import createClient from 'websocket-rpc-protocol/client';
interface API {
sayHi(name?: string): Promise<string>;
}
const client = createClient<API>('wss://url-to-server');
// Call the method directly, TypeScript will support it and the method will be proxied using the send() method
await client.sayHi(); // Hello world!
await client.sayHi('everyone'); // Hello everyone!
await client.namespace.sayBye(); // Goodbye cruel world!
console.log(client.get());
/*
Outputs:
{
online: true, // Whether the browser's APIs think the browser is online
connected: true, // Whether the websocket is connected
authed: true, // If the connection has been successfully authenticated with a JWT
serverTimeOffset: 20, // The offset in milliseconds between the client and the server
}
*/
FAQs
A JSON RPC protocol for working over websockets. Sheds the weight of JSON RPC to simplify argument names and adds features.
The npm package websocket-rpc-protocol receives a total of 18 weekly downloads. As such, websocket-rpc-protocol popularity was classified as not popular.
We found that websocket-rpc-protocol demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers 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
Socket's research uncovers three dangerous Go modules that contain obfuscated disk-wiping malware, threatening complete data loss.
Research
Socket uncovers malicious packages on PyPI using Gmail's SMTP protocol for command and control (C2) to exfiltrate data and execute commands.
Product
We redesigned Socket's first logged-in page to display rich and insightful visualizations about your repositories protected against supply chain threats.