mothershipper | 4 years ago | on: On self-modifying executables in Rust
mothershipper's comments
mothershipper | 5 years ago | on: Playing with symmetric encryption algorithms in Ruby
mothershipper | 5 years ago | on: gRPC on Node.js with Buf and TypeScript
We're just now hitting a growth point where we need stronger contracts between our services and unfortunately really can't recommend gRPC as the primary language used is TypeScript.
We've spiked on our own protoc plugin (based on protoc-gen-star) and runtime lib (extending the google libs), but it's slow going and more likely to become tech debt than picking something off the shelf like open-api.
mothershipper | 5 years ago | on: Show HN: Ugliest.app – Ugly but good app platform
mothershipper | 6 years ago | on: Show HN: S-Cache – Secure storage for cryptographic secrets, modeled after sudo
If someone steals the shadow password file, they still have quite a bit of computation to do to crack the credential.
mothershipper | 6 years ago | on: TeamViewer stores user passwords in registry, encrypted with hard-coded key
mothershipper | 6 years ago | on: Understand filesystem takeover vulnerabilities in NPM JavaScript package manager
mothershipper | 6 years ago | on: Understand filesystem takeover vulnerabilities in NPM JavaScript package manager
We have an internal CLI for our developers that auto-updates itself by replacing the binary on-disk. The auto-update bit only runs when the developer uses our CLI, and at most once every 24 hour. If an update is triggered, it prints out a message saying it was updated and asks the developer to re-run the command.
The upshot is we didn't have to write and distribute a second application to handle auto-updates as a background daemon, and we can be reasonably confident anybody using our CLI is +/- one version.
If for some reason it leaves the binary in a bad state, devs can still install over it with homebrew, or downloading from the releases page - haven't had to do that though in the 2 years we've had it.