top | item 32609588

Engineer distributes resume via IPv6 traceroute

633 points| fjarlq | 3 years ago |cv6.poinsignon.org

150 comments

order

di|3 years ago

Here's what it looks like:

    $ traceroute cv6.poinsignon.org
    traceroute to cv6.poinsignon.org (2001:bc8:3eff:c0::ff), 30 hops max, 80 byte packets
     1  gateway  0.795 ms  0.789 ms
    [...]
     8  hello (2001:bc8:3eff:c0::1)  1.431 ms  1.202 ms
     9  My.name.is.Louis.Poinsignon (2001:bc8:3eff:c0::2)  1.649 ms  1.274 ms
    10  I.am.a.network.and.systems.Engineer (2001:bc8:3eff:c0::3)  1.695 ms  2.090 ms
    11  This.is.my.resume.over.traceroute (2001:bc8:3eff:c0::4)  1.698 ms  1.793 ms
    12  o---Experience---o (2001:bc8:3eff:c0:ee::)  1.829 ms  2.052 ms
    13  2018.Cloudflare.NetworkEngineer.SF (2001:bc8:3eff:c0:ee::cf3)  2.261 ms  2.155 ms
    14  2017.Cloudflare.NetworkEngineer.London (2001:bc8:3eff:c0:ee::cf2)  2.293 ms  1.284 ms
    15  2016.Cloudflare.NetworkEngineer.Intern.SF (2001:bc8:3eff:c0:ee::cf1)  1.136 ms  1.205 ms
    16  2015.CEA.SoftwareEngineer.Intern.France (2001:bc8:3eff:c0:ee::cea)  1.204 ms  1.226 ms
    17  o---Education---o (2001:bc8:3eff:c0:ed::)  1.360 ms  1.607 ms
    18  2015-2016.DrexelUni.Exchange.CE.Philadelphia (2001:bc8:3eff:c0:ed::1)  1.237 ms  1.312 ms
    19  2011-2016.UTT.Master.CE.France (2001:bc8:3eff:c0:ed::2)  1.492 ms  1.604 ms
    20  o---Skills---o (2001:bc8:3eff:c0:51::)  1.565 ms  1.418 ms
    21  C.Java.Python.Golang (2001:bc8:3eff:c0:51::1)  1.364 ms  1.536 ms
    22  Net.Linux.Automation (2001:bc8:3eff:c0:51::2)  1.381 ms  1.266 ms
    23  Statistics.Maths.Photoshop (2001:bc8:3eff:c0:51::3)  1.504 ms  1.431 ms
    24  o---Various---o (2001:bc8:3eff:c0:7a::)  1.461 ms  1.519 ms
    25  Swimming.and.karate (2001:bc8:3eff:c0:7a::1)  1.378 ms  1.473 ms
    26  Piano (2001:bc8:3eff:c0:7a::2)  1.552 ms  1.683 ms
    27  o---Contact---o (2001:bc8:3eff:c0:c0::)  1.551 ms  1.486 ms
    28  mail.jobs.at.poinsignon.org (2001:bc8:3eff:c0:c0::1)  1.576 ms  1.473 ms

yjftsjthsd-h|3 years ago

> Cloudflare.NetworkEngineer

Ah, that explains a lot. Not that anyone else couldn't do such a thing, but I feel like even amongst more "hacker" types it takes a relatively specialized background to pull a trick like this (at least statistically; I'm sure there are outliers).

petalmind|3 years ago

I think that many HRs would be suspicious about somebody who worked at each job for 2.261 ms.

fragmede|3 years ago

He must have added Apple at some point. Here's what I got (using mtr):

    19. hello                                                   0.0%    14  141.6 140.5 139.1 141.6   0.7
    20. my.name.is.louis.poinsignon                             0.0%    14  141.9 142.1 141.2 143.3   0.5
    21. i.am.a.network.and.systems.engineer                     0.0%    14  140.5 140.4 139.7 141.6   0.5
    22. this.is.my.resume.over.traceroute                       0.0%    14  140.5 140.4 140.0 141.5   0.5
    23. o---experience---o                                      0.0%    14  139.9 140.4 139.4 141.4   0.5
    24. 2021.apple.engineer.sf.usa                              0.0%    14  140.7 140.5 139.8 141.2   0.4
    25. 2018.cloudflare.engineer.sf.usa                         0.0%    14  140.8 140.4 139.4 142.8   0.9
    26. 2017.cloudflare.engineer.london.uk                      0.0%    13  142.2 142.6 141.4 147.5   1.5
    27. 2016.cloudflare.engineer.intern.sf.usa                  0.0%    13  149.7 141.2 139.1 149.7   2.7
    28. o---education---o                                       0.0%    13  142.1 142.1 141.3 144.1   0.7
    29. 2015-2016.drexeluni.exchange.ce.philadelphia.usa        0.0%    13  140.9 140.3 139.5 141.3   0.5
    30. 2011-2016.utt.master.ce.france                          0.0%    13  143.1 142.3 140.8 143.3   0.7
    31. o---skills---o                                          0.0%    13  140.3 140.9 139.7 146.0   1.6
    32. golang.c.python                                         0.0%    13  142.2 142.4 141.1 146.0   1.2
    33. networks.linux.automation.kafka.clickhouse.kubernetes   0.0%    13  139.6 140.5 139.3 142.2   0.8
    34. statistics.maths                                        0.0%    13  141.6 142.1 141.2 142.8   0.5
    35. o---various---o                                         0.0%    13  141.8 142.4 141.8 144.8   0.8
    36. swimming.karate.piano                                   0.0%    13  139.8 141.4 138.7 155.2   4.2
    37. o---contact---o                                         0.0%    13  140.1 140.3 138.6 141.7   0.8
    38. mail.jobs.at.poinsignon.org                             0.0%    13  141.1 142.5 141.1 145.4   1.1
    39. cv6.poinsignon.org                                      0.0%    13  139.4 140.3 139.4 141.2   0.5

reaperducer|3 years ago

Remember when they said we'd never run out of IPV6 addresses?

Good times.

avg_dev|3 years ago

speaking as a software developer who has generally forgotten what little i know of routing, that is really cool

a-dub|3 years ago

i love how the low bits of the addresses in hex are cognates for both the section and the actual content of the name/line.

also, looking glasses... jeez. i haven't heard or thought of those in _years_.

psydvl|3 years ago

Why have you traceroute ip instead of domain?

Exuma|3 years ago

So is that mail.jobs@ or mail+jobs@... or jobs@

A total flop on the last line

silasdavis|3 years ago

Oh noes you just doxxed their email address on the https

billpg|3 years ago

"That's very nice but can you email me a copy in Microsoft Word DOCX format please?"

jen729w|3 years ago

I’m just about to live this hell. On advice from a friend, my response will be a simple one: no, because it doesn’t exist. It was written in Markdown [0]. Here’s a PDF.

I’m expecting the usual pushback, and will reciprocate. I’ll let you know how it goes.

[0]: https://github.com/johnnydecimal/resume/blob/main/resume.md

(Yeah I shamelessly inserted my own résumé.)

nwmcsween|3 years ago

Sure thing!

unzip resume.docx; cd resume; dd if=/dev/random of=crap.tax bs=1M count=19;cd ..; zip resume.docx resume

quickthrower2|3 years ago

Reply with:

   traceroute cv6.poinsignon.org | pandoc -o whywhywhy-o-why.docx

bhaney|3 years ago

"IMCP" looks to be a typo.

Normally wouldn't bother to mention, but, you know, CVs

OJFord|3 years ago

Might be a 'Frencho'.

remram|3 years ago

Where do you see IMCP?

bandyaboot|3 years ago

I’d like to imagine one of the troubleshooting steps for Cloudflare’s help desk when they see an uptick in customer service disruption complaints is to hit up Louis to ask if he’s updating his resume again.

jvdvegt|3 years ago

I guess the site can only be reached over IPv6? It seems I only have IPv4 :(

verst|3 years ago

That could be a feature if he didn't want to work at companies that don't have a IPv6 network :)

300bps|3 years ago

I think it's reasonable to assume that this whole thing has been a marketing campaign to get people to finally have a reason to switch to IPv6.

All kidding aside, IPv6 isn't even required for their website or this traceroute trick. He just set up an in-addr.arpa reverse DNS zone to reverse resolve particular IP addresses to specific values. If you had a block of 20 IPv4 addresses, I don't see anything stopping you from doing the exact same thing.

jeroenhd|3 years ago

No A record, so I guess so.

If your ISP doesn't block ICMP, you can get IPv6 capabilities using tunnels like https://tunnelbroker.net/. Especially useful if you have a router you can configure this stuff on so all of your devices get IPv6 for free. Completely free of charge and with minimal latency if you live somewhere near a data centre.

jackinloadup|3 years ago

Same, it begins. My ISP needs to get it's act together.

contingencies|3 years ago

An old hack.

For the history books, IIRC proff (Julian Assange) presented this hack in 1997, shortly after he wrote strobe.c (1995; AFAIK the first TCP half-open scanner). Here's a 1998 public posting of the code: https://packetstormsecurity.com/files/12995/fakeroute.c.html

At that time, the running joke was to provide inbound traceroutes spoofed next hops which implied you were working for a government agency (the Australian Federal Police, the Defence Signals Directorate (now Australian Signals Directorate) or the Defence Science and Technology Organisation (now the Defence Science and Technology Group)).

Free Julian.

biermic|3 years ago

Some CTO guy who I work with does this with the password for internal docs. He thinks he is 1337.

How long will it take, until someone gains access? I consider this an intentional security leak.

chirau|3 years ago

Non-networking guy here. Anyone care to explain what is special or impressive about this? It went over my head

thrwyoilarticle|3 years ago

I wonder if these things ever pay off, or if it just ends up attracting a lot of opportunities to be part of a normal application system where it's a one-way system of proving your worth to the company?

imhoguy|3 years ago

Well, at least it reached HN first page where a lot of hacker in heart managers and C*Os circle around, the potential employers.

zamadatix|3 years ago

Missed opportunity to hide a secret message in hops 30+ or such :).

0x0|3 years ago

Doesn't work properly here, I get a very local IPv6, then one row of stars, then the third hop is the destination?

  % traceroute6 -w1 cv6.poinsignon.org
  traceroute to cv6.poinsignon.org (2001:bc8:3eff:c0::ff), 30 hops max, 80 byte packets
   1  2a01:x:x:x::1 (2a01:x:x:x::1)  0.794 ms  0.913 ms  0.737 ms
   2  * * *
   3  2001:bc8:3eff::1 (2001:bc8:3eff::1)  39.555 ms  39.668 ms  39.560 ms
Not sure why "traceroute6" stops at the "...::1" but "mtr" shows an equivalent 3-hop route but actually shows "...::ff" for the third and final hop? (Edit: Using "-I" with "traceroute6" makes the third and final hop also show up as "::ff". Strange that ICMP vs UDP would give different IP addresses for the final hop?)

profmonocle|3 years ago

Some middlebox in your network is probably mucking with something. Are you behind a corporate firewall?

laundermaf|3 years ago

If you can’t see this, your ISP doesn’t resolve IPv6, probably.

It works for me once I enable “WARP” from my 1.1.1.1 app on iOS.

pm2222|3 years ago

Doesn't work here.

  ALARM ~ $ tracepath 2001:bc8:3eff:c0::ff
   1?: [LOCALHOST]                        0.015ms pmtu 1500
  ...
  ...
   2:  ALPHEUS-COM.edge1.Washington1.Level3.net             15.966ms 
   3:  ae5-3828.edge1.Washington1.Level3.net                 4.011ms 
   4:  2001:1900:2::3:18                                    77.693ms 
   5:  2001:1900:5:2:2::4a0a                                78.469ms asymm  4 
   6:  2001:bc8:400:1::8a                                   78.737ms asymm  7 
   7:  2001:bc8:400:1::13a                                  78.635ms asymm  6 
   8:  no reply
   9:  no reply
  10:  no reply
  11:  no reply
  12:  no reply
  13:  no reply

aidenn0|3 years ago

I suspect that whatever underlying implementation is used only catches ICMP packets, not UDP packets.

[edit]

Note that "tracepath -m60 bad.horse" works just fine.

foresto|3 years ago

See also: traceroute -m 60 bad.horse

aidenn0|3 years ago

Note also that unlike TFA, bad.horse works with tracepath.

jonathantf2|3 years ago

Thought it was a dead link since it didn't work on my mobile data or home internet, turns out it's just a v6 only DNS record.

zoom6628|3 years ago

Just damn clever. Shows several aspects of knowledge and application.

baobabKoodaa|3 years ago

I wonder what HR thinks about this resume format?

mouzogu|3 years ago

it's nice that for once, hr is the one being filtered.

talhof8|3 years ago

But do you know how to bubble sort an array?

aynyc|3 years ago

It’s a simple dynamic programming problem. /s

rcarmo|3 years ago

Pretty awesome :)

walrus01|3 years ago

missed opportunity for a hop of all.your.base.are.belong.to.us

main.screen.turn.on

how.are.you.gentlemen