[tech] Zero-width characters and tracking via pasted text

nervuri nervuri at disroot.org
Sun Mar 14 16:12:12 GMT 2021
Public service announcement: Zero-width characters can be used to embed
hidden information inside of plain text.  For example, a page can be
dynamically generated server-side to include, between every few words:

* your username / certificate ID (if logged in)
* your IP address
* the current timestamp

By copying text from the page and pasting it somewhere public, you would
be revealing this information to anyone who knew how to look for it.
This subtle form of tracking would work just as well on Gemini as it
does on the web.  Gopher is more protected from this, as many clients
are ASCII-only.

I'm gathering information about this sort of thing (and text
steganography more broadly) at:

gemini://rawtext.club/~nervuri/stega.gmi
gemini://rawtext.club/~nervuri/zero-width.gmi

The first is an explanation of the problem, with links to various tools
and references.

The second is a test to check which software displays (or warns about
the presence of) zero-width characters.

Contributions are welcome.  I'm especially interested in what software
passes the 0-width character test and what 0-width chars I've missed.
If you know of a good tool for detecting plain text steganography, do
tell.

P.S.  In Amfora I noticed a visual glitch when I opened
gemini://rawtext.club/~nervuri/zero-width.gmi and scrolled up and down
for a bit.


Archive home | About this archive