this post was submitted on 11 Apr 2024
89 points (87.4% liked)

Technology

59589 readers
2838 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] abhibeckert@lemmy.world 70 points 7 months ago* (last edited 7 months ago) (18 children)

Once again this is not a Rust vulnerability.

This is a Windows vulnerability and Rust is simply the first set of tools to implement a workaround - since Microsoft can't do it without breaking backwards compatibility.

Somehow the narrative has turned into negative PR for Rust when in fact they are handling this vulnerability better than anyone else in the industry.

[–] lazynooblet@lazysoci.al 11 points 7 months ago (3 children)

Both the article and the CVE description point to how Rust handles escaping for CMD arguments. If it's not a Rust issue then can you explain?

[–] 5C5C5C@programming.dev 10 points 7 months ago

Because this is the status of the bug across the standard libraries of various languages, per this article and others:

  • Erlang (documentation update)
  • Go (documentation update)
  • Haskell (patch available)
  • Java (won’t fix)
  • Node.js (patch will be available)
  • PHP (patch will be available)
  • Python (documentation update)
  • Ruby (documentation update)

Notably C and C++ are missing from this list because their standard libraries don't even offer this capability. Half of these standard libraries are responding to the issue by just warning you about it in the function documentation. Rust is one of the few that actually prevents the attack from happening.

The original BatBadBut bug report used JavaScript to illustrate the vulnerability.

[–] baru@lemmy.world 9 points 7 months ago (1 children)

I explained it elsewhere, but basically: an API that needs undocumented escaping doesn't immediately make you think that the API has huge issues?

[–] vanderbilt@lemmy.world 2 points 7 months ago

WinAPIs are rife with weirdness like this that has stuck around for backward compatibility reasons. The day MS finally kills win32 will be the day Windows' security improves tenfold.

[–] rottingleaf@lemmy.zip 0 points 7 months ago

If you read it more attentively, no, it does say that.

I dislike all the "rewrite it in Rust to be secure" bros, but not such a case here.

load more comments (14 replies)