Skip to content(if available)orjump to list(if available)

The NSA Selector

The NSA Selector

93 comments

·May 20, 2025

ChuckMcM

This is pretty cool. I believe it was Bob Metcalf at PARC who had a device in his office that was hooked up to the 3Mbs Ethernet cable and would essentially do the same thing. He built and installed it to get a feel for how much of an issue "collisions" would really be on the network. At the time, the idea that you could just back off when you detected a collision and re-transmit was considered heresy of the highest order and the "experts" all believed that once you got to a certain small number of clients the wire would be overwhelmed with collisions and the network would be unusable. His gizmo proved that wasn't the case.

jll29

In NSA parlance, a "selector" primarily is a string that semi-uniquely identifies and addresses a persons intercepted data, such as

- an IP address,

- an email address,

- a phone number,

- a SIM card's MSIN

- a person's social security number,

- a national ID card number,

- a passport number,

- a social media handle etc.

(elsewhere also known as "accessor", "key", "handle" or "index")

jonathanstrange

They are interesting because combining and updating them is a non-trivial problem, as I've realized today while implementing a user ban system.

Terr_

There's a certain system I work with where random unauthenticated visitors on the internet end up supplying data like name/phone/email, with no validation... And of course, the business wants to somehow convert that into a list of "real people" and start correlating it to other records.

I've been trying to stop anything too terrible from happening by asking them to clarify their business requirements, e.g. what should happen when there is malicious impersonation, or the expected result should be when inconsistencies and overlaps exist.

It's not like there's no value to the data... but I'm afraid they don't really understand the problem are are hoping the magic computer can somehow *poof* garbage into fine cuisine.

transcriptase

“Enrichment” is what they actually want. People think it’s Google, Amazon, Facebook etc selling their data when in reality they are simply letting people target based on it.

On the other hand there are hundreds of companies nobody has ever heard of that do buy, collate, clean, and sell access to the data that apps, browser extensions, windows apps, loyalty card programs, branded credit cards, retailers, and companies that scrape LinkedIn etc will happily sell.

You provide what you have and for a price these “enrichment” services will provide what is essentially a dossier of everything that can be even remotely inferred from the thousands of datapoints they have based on your email/name/phone.

What most people think big tech is doing is actually being done in ways that are far more unsettling by companies with cutesy names and vague services that major companies sign contracts with to improve their signal to noise ratio.

grues-dinner

Everyone in countries with data protection laws: concern.

dylan604

Since he's building a sequencer, I'm almost disappointed it wasn't named Selecta.

Rewind Bo Selecta!!

tantalor

That doesn't tell me why this is called selector.

Fnoord

> In CSS, selectors are patterns used to match, or select, the elements you want to style. Selectors are also used in JavaScript to enable selecting the DOM nodes to return as a NodeList.

From [1]. This nomenclature was also used way before CSS even existed; in SQL.

[1] https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_selecto...

tantalor

That doesn't help at all. What do SQL or CSS have to do with it

aa-jv

Probably as a piss-take? After all, the NSA is a wholesale subjugator of human rights - why not take the piss out of it?

riknos314

> if possible disable encryption, then you can profit from not only timing pattern (of white noise), but also listen in on the plaintext payload. the NSA loves plaintext.

Haha, incredible.

On a more serious note this is a really cool idea. Would be interesting to listen to the same origin traffic in different network conditions to hear things like TCP rate control.

cole-k

This went over my head at first, but I really like it. So for those like me: it converts network traffic into audio output.

YouTube explainer: https://youtu.be/vfgySTaM1TI

tobyjsullivan

For those interested in hearing some beats, the terminal demo starts at 4:34 https://youtu.be/vfgySTaM1TI?t=274

zelon88

It really starts getting good at 15:00 when he starts losing packets.

jojohohanon

Those who recall cars with fm radios and gsm phones will have heard something similar if their car had a random compartment right below the stereo.

When a call came in, before the phone would ring, the radio would emit this very clear tri di di dit dah dah. But only when the phone was very near the radio.

grayfaced

Yes kinda, I would say network activity rather then traffic. Audio signal is going to be in scale of 48Khz while measuring ethernet signal at scale of 100Mhz. At that rate it wouldn't even get more then 1 sample from a full size packet. So really it's polling 48Khz whether or not there was activity during that period. The gimmick is that it uses some analog components. Fully digital you could craft a meaningful audio signal that represents traffic.

echelon

This is a fun demonstration of the principle.

"every website sounds different" - that's super cool.

The bitmap images sent at the end of the video also sound really cool.

tptacek

There used to be a thing on SunOS (I think) where you'd get `ping` to write to /dev/audio so you could diagnose network stuff by sound.

schoen

You can "ping -a" nowadays to get beeps for each reply, but it's not quite as cool!

monster_truck

You can still do this with /dev/dsp or similar. Might need sudo these days

`cat /dev/urandom > /dev/dsp`

rfl890

For a more modern approach, try ffplay: cat /dev/urandom | ffplay -f s16le -

jdthedisciple

thanks this almost crashed my pc

dylan604

some people learn the hard way that blindly copying and pasting things from the interweb directly to a terminal is not always the best of ideas. some times, they're bloody brilliant

fuddy

One of the funnier parameters to encounter in the snoop manpage.

hottakesbun

The joke is on him - I used to get this functionality for free way back in the day when (what I presume was) RF noise generated during the processing of ethernet traffic would get picked up by my cheap ISA sound card and sent to the speakers. I never built a sequencer out of it though.

sevensor

Back in college, I would listen to AM radio while I worked on my computer. The radio would pick up electrical noise from the keyboard and the mechanical mouse. I wonder if this sounds anything like it.

anjel

TRS-80s were famous for bleeding over AM band. The entire AM band.

sterlind

I read that the FCC really started cracking down on EM interference because early microcomputers were serious offenders. I'm guessing that's why there's a humongous RF shield inside my Amiga 1200.

ww520

Good for network wiring diagnostic. It would be great if it can pipe the noise to Bluetooth audio. I can pair a headphone to it, plug this into the network in another room and still can hear it while checking the line connections on the switch/router.

hnuser123456

That audio port is blasting out a total bandwidth of 100 Mbps (4 bits at 25 MHz) versus 768 Kbps for BT audio, assuming a high quality codec (16 bits at 48 KHz), so not without loss.

ww520

Can be downsampled for the purpose. It's just noise after all.

Xx_crazy420_xX

It would be nice to compare all packets dumped by system and check if there are any unmatching packets running from your computer that were not sent by OS but a closed source hardware inside like Intel ME

rurban

Don't forget the GHCQ which installs a mirror on each UK modem. I don't think the NSA goes to these extremes

dekhn

The NSA worked with GHCQ to tap Google's fiber between data centers, which at the time, was not encrypted. You can see several presentations including "SSL added and removed here" (reference to the SSL connection being terminated at the Google front end and then transmitted unencrypted to the backend in another data center), as well as an actual BigTable packet from tcpdump that included a user identifier.

If you read The Idea Factory, it shows that AT&T leadership worked closely with NSA and other governmental agencies (on a "secret schedule" so nobody would know who the execs were meeting with) to help them access US phone data.

I'd love to know the extent of what NSA has done between its founding and today; I'm sure they've pulled off some astounding things, and bolluxed up other stuff badly.

cs02rm0

FWIW, as we've had this twice, GCHQ - Government Communications Headquarters.

neuroelectron

I doubt encryption makes much of a difference, depending on the magic numbers in your implementation.

godman_8

I've worked with quite a few ISPs and exchanges. I haven't set up port mirrors for the NSA but I have setup temporary mirrors for the FBI upon request.

0xbadcafebee

The NSA/govt gets its own dedicated floor in some DCs, esp. large interconnects

tgmatt

This seems hard to believe, given how many different modems from different sources you can use, as well as thirdparty ones. Source?

stavros

Oh man, I really hope they don't get all my TLS connections.

simpaticoder

Really cool, but has anyone built software to do this locally on a PC? For example:

   sudo tcpdump -i "eth0" -w - -U | aplay -f S16_LE -r 44100

Hypergraphe

A good comment :)

danesparza

The Snowden silkscreen is a nice touch. What a great hardware build!

TiredOfLife

[flagged]

danesparza

Wow! You taught me something new: https://en.wikipedia.org/wiki/Putler

sterlind

I don't see any traces of Putler on the silkscreen.

cranium

The accompanying video is really nice: https://youtu.be/vfgySTaM1TI?t=269