54
Points
23
Comments
toilet
Author

Top Comments

piterrroJun 21
Wait, isnt it implemented because of the sheer number of broswers that could be used at the Zoom’s scale? They could’ve used jsonp too it they wanted to bypass CORS. Using image with different dimensions sounds like the most bulletproof way across multiple devices/OSes/browsers
encomiastJun 21
It's not just CORS that's hard to understand. Many (most?) developers don't really understand the threat model. And even when it's explained it hard to see why it's a big deal. Part of this is that backend developers usually have to configure CORS and it's not an access privilege protection. From the point of view of the backend it doesn't seem to matter. Bad guys can't get it. From the point of view of the front-end it's often seen as a nuisance.

The article does a nice job giving a concrete example.

physixJun 21
> Developer's don't understand CORS

Count me in!

piyhJun 21
The only thing I remember about CORS is that it takes way longer than expected to debug, by design the error messages sent to the browser are intentionally gutted, and CORS error scenarios are hard to tell from other failure modes atfirst glance.
stephbookJun 21
I still don't understand the threat model and, obviously, it's not explained here either.

I log in to social.net. I click on scam.org and change sites. I'm on scam.org and it triggers a request to social.net/friends.

No cookies are sent, no JWT. I'm not logged in and get a "Needs login" HTTP error. Nothing bad happens.

I thought that's how it works without CORS already.

koolalaJun 21
CORS sucks since Cross-Origin-Embedder-Policy: credentialless was never made standard across all browsers. It's a browser client restriction you can't turn off. If you want to do anything interesting with WWW content you have to run your own browser or run an out-of-box one off a proxy server that breaks everything.
jdw64Jun 21
Sometimes I'm not even sure what I truly 'understand.' When even senior engineers working on products used by hundreds of millions of people, like Zoom, have had these kinds of issues, it makes me wonder. So I usually just write code the way it was left by my seniors, out of inertia. But I realize that the area I work in is actually incredibly abstracted.
preommrJun 21
Because, like many things in web, it's a patchwork of compromises due to legacy issues, rampant inconcistencies and trying to be too clever.

You get results where it's really difficult intuitively understand it because at that point you're not really meant to. Realistically, people just follow a guide, or some lib, and move on.

Visit the Original Link

Read the full content on fosterelli.co

Source
fosterelli.co
Author
toilet
Posted
June 21, 2026 at 01:35 AM


More Top Stories

bbc.com Jun 20
Renting a sewing machine from the library
15575 commentsby sohkamyung
Details
sibexi.co Jun 20
Epoll vs. io_uring in Linux
8724 commentsby Sibexico
Details
github.com Jun 20
Loupe – A iOS app that raises awareness about what native apps can see
12933 commentsby Cider9986
Details
townsquare.cauenapier.com Jun 20
Show HN: TownSquare, a tiny presence layer for websites
11553 commentsby cauenapier
Details
cell.com Jun 20
Slow breathing modulates brain function and risk behavior
10221 commentsby croes
Details
bostonglobe.com Jun 18
15-minute at-home Lyme disease tick test
7221 commentsby bookofjoe
Details
👋 Need help with code?