Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Ollaya – Ollama for open-source, Jev-style decision models (ollaya.dev)
    47comments
  2. Alan Kay: Shannon gave us a way of dealing with noisy channels [video] (youtube.com)
    15comments
  3. Show HN: Jev Plays Pokémon Red (jev-pokemon.vercel.app)
    29comments
  4. Platform-independent SIMD in Go (go.dev)
    122comments
  5. Advice to a Beginning Graduate Student (2001) (cmu.edu)
    9comments
  6. First Principles Thinking (sunilsadasivan.com)
    73comments
  7. Git-bug: Distributed, offline-first bug tracker embedded in Git (github.com/git-bug)
    89comments
  8. U.S. appeals court upholds designation of Anthropic as supply chain risk (cnbc.com)
    472comments
  9. Show HN: Make math automatic with Mathy (gmays.com)
    3comments
  10. Pentium II at 600Mhz with Voodoo 3 Emulated on 86Box with M6 Mac Mini (nyaa.sh)
    107comments
  11. How video games inspire great UX (2019) (jenson.org)
    5comments
  12. Meta's Muse appears to use an OpenAI model labeled muse-special (mouse.dev)
    27comments
  13. Ink and Switch interactive homepage (inkandswitch.com)
    25comments
  14. Bwbach, My Guardian Goblin (robertmay.photography)
    6comments
  15. Rising sea destroys homes, erases beaches in California (reuters.com)
    4comments
  16. Factorio that you can touch (factorio.com)
    77comments
  17. Bug: Border radius has infected VSCode editor (github.com/microsoft)
    11comments
  18. Amiga Screens: A Primer (datagubbe.se)
    30comments
  19. A History of the Chiming Machines at Gloucester's Cathedral and Churches (2017) [pdf] (bgas.org.uk)
    1comments
  20. Letterboxd Is Up for Sale, and A24, Sony and the New York Times Are Bidding (worldofreel.com)
    10comments
  21. Show HN: Doom or Bloom, map your AI worldview (doom-or-bloom.com)
    29comments
  22. Show HN: Whiteboard (YC W26) – An open-source IDE for thoughtful software design (github.com/devdotfast)
    127comments
  23. What About Rails? (jardo.dev)
    179comments
  24. Typst makes big strides (lwn.net)
    9comments
  25. Why is the liver so weirdly regenerative? (dynomight.substack.com)
    272comments
  26. CVE-2025-13032: Entering and Breaking the Avast Antivirus Sandbox Part 2 (safateam.com)
    27comments
  27. Boards of Casio (ambionix.com)
    31comments
  28. Astronomer watches Starlink satellites sinking to build a 'planetary barometer' (theregister.com)
    9comments
  29. Rails World 2026 Opening Keynote [video] (youtube.com)
    467comments
  30. What happens when you analyze your favorite college football team like the CIA? (cultivatelabs.com)
    9comments

Remote zero-click JavaScript code execution on Signal desktop

45 pointsby 8y agotwitter.com
20 comments
8y agoHN ↗

Alas, if only there were a way to write native applications in some language other than javascript...

8y agoHN ↗

Why would you want to do that? JavaScript is memory-safe.

8y agoHN ↗

Other languages? Doesn't JavaScript solve all use cases in every possible context? ...

8y agoHN ↗

Serious questions:

1. Why don't browsers execute (interpret?) languages other than JavaScript?

2. What would be involved in having a browser execute (interpret?) other languages, such as Perl or Python?

8y agoHN ↗

1. Why don't browsers execute (interpret?) languages other than JavaScript?

I believe the general idea was that they would, because the "type" attribute in the <script> tag didn't need to be "text/javascript", but javascript happened to win because it was supported by Netscape Navigator. Microsoft had VBScript, but that was an IE only product, while both browsers supported javascript, making it the only choice for cross-browser compatible scripting (albeit with lots of irritating hacks, but then jQuery came along.)

See this decent StackExchange thread here[0].

Then HTML5 deprecated the type attribute from the script tag because there really was no point anymore. Why support other languages when one language was adequate and already ubiquitous?

2. What would be involved in having a browser execute (interpret?) other languages, such as Perl or Python?

Today? Browsers could ship with support for those languages (the way Chrome did with Dart) but of course, that would fragment the web unless all browsers supported all options. Or maybe plugins. Or "compiling to javascript." Or Webassembly[1].

I 100% believe that seamless, dynamic language support through WASM is going to be a thing eventually.

[0]https://softwareengineering.stackexchange.com/questions/2894...

[1]https://github.com/mbasso/awesome-wasm#languages

8y agoHN ↗

Chrome never shipped Dart support. There was a modified version of Chromium with Dart support called Dartium, but it was discontinued with Dart 2.x.

8y agoHN ↗

It'll be interesting to see how this works, given that the Signal Desktop client's main page (background.html) includes a CSP that restricts it from running inline or external scripts. It can only run JS that's already in the Signal Desktop package (in theory).

The fact that this isn't being described as an issue with CSPs or electron makes me wonder how it could possibly work.

8y agoHN ↗

You are correct, there's also a flaw on CSP not limiting all the ways you can download a resource. And at this time, it's still not fixed. We'll publish an advisory soon.

8y agoHN ↗

In Electron, all file:/// URIs share an origin. Using `script-src: 'self'` isn't much of a boundary.

8y agoHN ↗

So let's say I'm able to run HTML in Signal Desktop. How do I include an arbitrary script without getting the user to download the script first?

8y agoHN ↗

If I remember correctly, on Windows you can reference file://<IP-Address>/path/to/file

Thanks SMB / UNC Paths.

8y agoHN ↗

You've linked that thread a couple of times here, never really elaborating on the nature of your concerns, nor do you elaborate on the specific nature of your concerns in the ticket. Have you considered elaborating on the nature of your concerns? Is there a specific vulnerability in chromium you feel could be exploited here?

8y agoHN ↗

I read the (now locked) thread, the way they handled the report leaves much to be desired.

8y agoHN ↗

It's time to admit that we can't fix web security anymore, and that we should just start anew. XSS, SQLi, cross origin flaws, etc. There are just too many vectors for a human developer to make a correct implementation.

8y agoHN ↗

It's time to admit that we can't fix web security anymore

It seems like this was fixed in a newer version of chromium.. a version that electron is not based on. This particular problem exists purely because they used a framework that depends on a ridiculously complicated backend, one that the framework has chosen not to follow closely (despite the backend addressing security issues relatively timely)