Microsoft says email spammers are adopting ASCII smuggling
arstechnica.com
arstechnica.com
> The root domain onmicrosoft.com is owned and managed by Microsoft Corporation, which uses it as the default domain for Microsoft 365 and Azure cloud environments
Parent-poster wasn't lamenting monopolies, they were just incredulous that some supposedly well-resourced and integrated company still can't get its act together to stop a well-understood problem.
These are from all parts of the globe. I have access to bank accounts in South America, Disney employee music royalty earnings tax disclosures and forms, European subscribers online platforms, AWS account recovery options, veterinarian records in Studio City, private school/PTA leadership website access in Mountain View.
I stopped trying to return unopened mail, nobody cared.
I don't do anything with any of this because I'm not a giant fool, but people, have your users verify their email addresses before you trust them.
I get lots of stuff intended for other people (including a mildly famous person with my name whose actual email address is last.first@gmail.com).
A few years ago, someone set up a shopify account with my email address. Overnight while I slept, the shopify account was created, did some bad stuff, and got suspended for fraudulent activity. The whole story was told through the series of emails coming in over a couple of hours. Shopify did not required the fraudster to confirm the email address to activate the account.
When I asked shopify to unlink my email address from this fraudster account, they instructed me to click on the "forgot my password" link on their login page, click on the "change password" link in the resulting email, and then login and remove my email from the account. This was my only option, they claimed. Obviously, I was never going to connect my IP address with some fraudster's Shopify account, so I just left it as-is.
I guess services feel it adds too much "friction" to force a user to verify the specified email account before allowing them to use the service.
What I arrived at:
- I should never hand out my actual email address. As in, should be all proxied, every contact reaching me via a different address only known to them. Ideally, these aliases would be generated using a CSPRNG, and would be of sufficient length. Allows for tracing contact provenance in "space".
- I should rotate that address periodically, if possible. Allows for tracing contact provenance in "time".
Together, this would tell me who's the source of any particular influx of strange mails, and when did they leak the contact address provided to them (willfully or otherwise). This would enable me to separate the wheat from the chaff and nuke that address for good, inform the other party, etc.
I was really taken by this idea, even wondered why this has not been baked into the underlying protocols over the years, to make it readily deployed and available for all, making it effortless.
Because boy is there an effort involved! Several years later, I now avoid spam mail by simply no longer reading my emails anymore...
Sometimes I wonder what corporate IT thinks when I pass their anti-phishing test a month after the test campaign.
But what I don't understand is MS letting these through the spam filter but randomly, in a thread between myself and another person both using MS account emails, sending a single email in that thread to spam.
I realized the other day I haven't even checked my main email in months and I missed absolutely noting important.
My suspicion is that the spam filter programmers didn't do a comprehensive evaluation of every code point on every plane of Unicode because... well that's a massive job. So your "sanitize and denormalize" tasks are actually massive mappings which were likely imperfectly created.
The task isn't that massive. Python's unicodedata (for example) contains all the info already. Including the normalization (not denormalization as I wrote before) function.
Is there something I'm missing?
Platforms should aggregate all their notifications into a single daily or weekly email unless the thing is marked urgent! It's not difficult to do!
I realize ASCII was limited, but one thing I like about it is I can understand every single character code, and program to handle all the edge cases with certainty.
But it's not simple enough for every company/app to independently research the entire Unicode code point space (which is MASSIVE) to find out what kinds of "fix ups" that app needs to do to clean the data it consumes.
It's complicated or at least has difficult tradeoffs. Maybe you invest a lot of time carefully surveying all of the Unicode planes and decide which ones you care to keep unchanged and which ones you filter/strip. For every code point you reject or change, there is going to be some user who is confused or dissatisfied with the limitations of your app.
I don’t think it’s reasonable to blame the Unicode authors for not anticipating this turn of events.
But also, according to the Ars article comment describing the Unicode character range, it has been deprecated, so maybe someone involved in the Unicode standard saw problems with it.
It's great for teaching and other things, but everyday life is filled with many characters, is the suggestion we'd have one ASCII per language where there is more distinct characters, or what would we do? I don't see what else we could have done, that would have worked for the world, but I'm curious to hear ideas.
There was a rationale (ISO country codes to modify a flag to display that national flag).
Maybe the problem wasn't the proposal, but the lack of the ability for others to reject it for being insecure.
If you want an image, embed an image.