
Research
SAP CAP npm Packages Hit by Mini Shai-Hulud Supply Chain Attack
Compromised SAP CAP npm packages download and execute unverified binaries, creating urgent supply chain risk for affected developers and CI/CD environments.
This is the codebase for the computation offloading and task distribution research prototype wasimoff. It is a framework which uses WebAssembly as its executable format and is able to send computational tasks to volunteers' browsers through a central broker. Targeting a modern browser API as an execution environment makes participation exceedingly simple, while the versatility of WebAssembly supports many different computational problems.

Publications relating to this project:
Semjonov, A., Bornholdt, H., Edinger, J., & Russo, G. R. (2024, March). Wasimoff: Distributed computation offloading using WebAssembly in the browser. In 2024 IEEE International Conference on Pervasive Computing and Communications Workshops and other Affiliated Events (PerCom Workshops) (pp. 203-208). IEEE. (+ Artifact)
The three essential roles Broker, Provider and Client can be found in their respective subdirectories.
curl in Bash, as well as a CLI written in Go. It contains a number of examples on how to write job configurations.The WebAssembly System Interface (WASI) was chosen initially as an abstraction layer for the offloaded tasks and the subdirectory wasi-apps/ contains a number of example applications, which use this compilation target to show off its versatility and serve as example workloads during the evaluation.
ffmpeg is a compilation of the popular FFmpeg toolkit to WebAssembly. It can be used to transcode videos in a browser tab.helloworld is a collection of different languages (Rust, TinyGo, WAT) targeting basic features of the WASI target wasm32-wasi.travelling_salesman is an implementation of the .. you guessed it .. Travelling Salesman Problem in Rust. It can be compiled to various native binary formats but also to WASI and it serves as the computational workload in all of the evaluation runs.web-demo is a minimal example of using the browser_wasi_shim to execute WebAssembly binaries with environment variables and commandline arguments in the browser.The experiments repository contains various experiments and evaluations of pieces of the networking stack that were considered.
This repository includes a multi-stage Dockerfile, which:
broker binary in a golang image,node image,alpine image anddenoland/deno image.You can compile both main images individually with:
docker build --target wasimoff -t wasimoff:broker . or make brokerdocker build --target provider -t wasimoff:provider . or make providerOr, for a quick test environment, use the docker-compose.yaml file with:
docker compose up --build
FAQs
Unknown package
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
Compromised SAP CAP npm packages download and execute unverified binaries, creating urgent supply chain risk for affected developers and CI/CD environments.

Company News
Socket has acquired Secure Annex to expand extension security across browsers, IDEs, and AI tools.

Research
/Security News
Socket is tracking cloned Open VSX extensions tied to GlassWorm, with several updated from benign-looking sleepers into malware delivery vehicles.