HN user

captn3m0

11,455 karma

https://captnemo.in http://about.me/n3m0

[ my public key: https://keybase.io/captn3m0; my proof: https://keybase.io/captn3m0/sigs/MrazMfyap5PnbYUKQhtqeLGfctJcwxsDB6Oo0t6ABxM ]

my email: me@captnemo.in

meet.hn/city/in-Bengaluru

Socials: - github.com/captn3m0 - x.com/captn3m0 - t.me/captn3m0

Interests: Books, Cybersecurity, DevOps, Fintech, Open Source, Privacy, Web Development

---

hnchat:Z44vjhzI6AG5YXzEY5pD

Posts318
Comments2,913
View on HN
blog.panic.com 9d ago

A Prototype Original iPod

captn3m0
4pts1
www.cnn.com 1mo ago

Oil prices fall on US-Iran agreement

captn3m0
3pts2
captnemo.in 2mo ago

A Namecheap bug got my domain suspended

captn3m0
3pts0
captnemo.in 3mo ago

FOSS – Tracking delayed open-source releases

captn3m0
3pts1
lmika.org 4mo ago

The Colour of Production

captn3m0
2pts0
aman.bh 5mo ago

Querying India's MoSPI Data with Claude and MCP

captn3m0
1pts0
captnemo.in 5mo ago

Show HN: Kurbelfahrplan, a FOSDEM schedule app for the playdate

captn3m0
2pts1
www.w3.org 5mo ago

ESI Language Specification 1.0

captn3m0
2pts0
docs.google.com 6mo ago

Guidance for GSoC Contributors using AI tooling in GSoC 2026

captn3m0
2pts0
eurail.zendesk.com 6mo ago

Eurail Data Security Incident – January 2026

captn3m0
1pts1
www.kdpcommunity.com 7mo ago

Amazon will allow ePub and PDF downloads for DRM-free eBooks

captn3m0
634pts339
minusone.com 7mo ago

SPC Requests for Curiosity, Winter 2025

captn3m0
2pts1
internetfreedom.in 7mo ago

IFF's Statement against mandatory installation of "Sanchar Saathi"

captn3m0
5pts1
www.dockerstatus.com 8mo ago

Disruption of Docker Hardened Images and Docker Scout

captn3m0
2pts0
www.codewars.com 8mo ago

The Future of Codewars

captn3m0
1pts0
www.peterstefek.me 8mo ago

Foul Play: Privilege Escalation on the Playdate

captn3m0
2pts0
github.com 10mo ago

Leak of Geedge Networks internal documents

captn3m0
4pts0
github.com 10mo ago

Fenrir – Bootchain exploit for MediaTek devices

captn3m0
2pts0
github.com 11mo ago

We are allocating resources towards other areas of Actions

captn3m0
3pts1
blog.nilenso.com 1y ago

MCP explained without hype or fluff

captn3m0
168pts70
lists.iana.org 1y ago

PyCon US Time

captn3m0
1pts0
github.blog 1y ago

Persistent commit signature verification on GitHub

captn3m0
3pts1
endcrawl.com 1y ago

Ordering Movie Credits with Graph Theory

captn3m0
3pts0
thephp.foundation 1y ago

The PHP Foundation: Impact and Transparency Report 2024

captn3m0
2pts0
support.apple.com 1y ago

About the security content of iOS 15.8.4 and iPadOS 15.8.4

captn3m0
3pts1
github.blog 1y ago

Repository Ownership Limits

captn3m0
3pts1
secureannex.com 1y ago

Buying browser extensions for fun and profit

captn3m0
1pts0
www.nytimes.com 1y ago

Rippling Sues Deel, a Software Rival, over Corporate Spying

captn3m0
4pts0
www.sciencedirect.com 1y ago

Corrigendum to 'Flame retardants contaminating household items'

captn3m0
3pts2
arxiv.org 1y ago

Stack Overflow Meets Replication: Security Research Amid Evolving Code Snippets

captn3m0
1pts0

There are a lot of other implementations of this idea that don't necessarily rely on trust-on-first-use. The securedrop team explicitly includes malicious JS served by the primary-domain in the threat-model and made WEBCAT[0] as an outcome of that research. Their article on webcrypto is much better than this one.

The solution obviously is to go out-of-band:

When a user visits a website that has enrolled in WEBCAT, before the site can load the content is checked against a signed manifest to ensure that it has not been tampered with (more on enrollment later). If everything checks out, the page loads normally. If, however, any content does not match what’s expected, the page load is aborted and a warning is displayed, protecting the user from potentially malicious content before it can execute.

[0] https://securedrop.org/news/introducing-webcat-web-based-cod...

[1] https://securedrop.org/news/browser-based-cryptography/

The problem of everchanging malware isn't fixable by global policies and global rulesets.

But it is an important tool that's missing in our toolbox. You could do most of the above, and still get pwned by a typo in an `npx` command. Capability based access management is not likely to land in any large package manager in the next few years, and we need solutions that work today.

Package-level hooks are everywhere: https://github.com/ecosyste-ms/package-manager-hooks

I wrote this in response to the recent AUR attacks. The problem isn’t really too many dependencies - it is that most users cannot be auditing everything they install and we need mechanisms that help users where they are.

I audit my AUR pkg builds, and I would have likely caught any malware. But so would a Dependency Cooldown or a third-party threat feed. Package Managers should make it easy to build this tooling via hooks.

Aliases and pre-hooks are nowhere near the guarantees you want, that’s what I am arguing - not everything is invoked from a blessed shell. Safely-bump-does.sh is also impossibly hard to write because you are replicating _all of the work NPM does in transitive dependency resolution_. Unless you are re-generating the lock file from scratch - it isn’t safe. Just updating package.json isn’t sufficient for eg.

Author here - people are definitely looking at other places. This just happens to be where the attacks are, and gets disproportionate attention as a result.

Do you have examples of campaigns that weren’t flagged? Everything except xz had a 1 day window and Dependency Cooldowns are super effective against most campaigns for that reason.

See papers at https://kokkonisd.github.io/ for eg.

(Author here). I don’t really care _how and what you decide to do with it_, the post is about package managers giving users the ability to decide.

Dependency Cooldowns can be implemented with global hooks, git-commit-signing checks can be implemented, LLM-scans can be implemented, someone can run the code in a jail and use the eBPF logs to publish a threat feed.

Modern language packaging is also _source available_, and we have a huge leg up over traditional virus scans - we have the source code almost always. You can do amazing static analysis.

Yes, it’s hard work. But package managers are doing it already. Yay and Paru both now support hooks. I’m offering to help for AUR to publish more metadata: https://lists.archlinux.org/archives/list/aur-dev@lists.arch...

(Author here). It isn’t a matter of pre-install hooks. I don’t want known malware on my system irrespective of whether it runs at install-time or not. Pre-install hooks are going away in NPM, but we will have code injected in index.js next.

Modern package managers are not amenable to letting another script override its resolutions, and that is what needs fixing.

I don't think there exist a password manager that is explicitly designed for a compromised/hostile device.

The crypto people tried this with hardware only password managers but they were too annoying. I have a halfway solution of using pass with Yubikey/GPG where each password decryption requires a touch. It does protect against the entire vault being decrypted at once and exfiltrated.

Stop Killing Games 2 months ago

The discussion is so bad because the article is.

There’s so many nuances around assets, trademarks, copyright, monetisation, cheatware(?), multi-player etc but the article ignores all of it and goes for the straight freedom angle. How do you even have in-game purchases when you can’t control client code? Do we even have a single example of FOSS and mainstream game that made money and was multiplayer?

Terrible slop and I am flagging it.

Github does not expose a public bug list or any issues page, hiding their problems deep in email chains

Which email chains is this referring to? GitHub/community is fairly active from the community perspective. GitHub rarely looks at it anymore, prioritising their Enterprise roadmap.

Github often breaks on firefox and safari, browsers with millions of users

[[citation needed]].

I’ve been as annoyed as everyone with the GitHub frontend performance since the React rewrite, but never really faced breakage in Firefox. This claim is repeated a few times in the article, but without any links.