Slashdot Mirror


Black Ops of TCP/IP: Paketto Keiretsu 1.0 Release

Effugas writes "After pushing OpenSSH to perform feats of secure tunneling far beyond what I ever expected it could do, it became clear that some genuinely useful modes of network operation were simply inaccessable without either replacing or manipulating core network protocols. Since the basic infrastructure of the Internet isn't likely to change any time soon, that left...creative manipulation and reconstruction of the Lingua Reseaux: TCP/IP. Taking advantage of expectations, pitting layers against eachother, finding new uses for old options and data fields -- instead of simply unleashing the latest incarnation of some "Ping of Death", could such work unveil hidden functionality within existing networks? As I discussed at Black Hat 2002 and the inimitable Defcon X, the answer is yes. And now, proof of this is ready. BSD Licensed (in deference to the very source of TCP/IP), The Paketto Keiretsu, Version 1.0, is a collection of five interwoven "proof of concepts" that explore, extract, and expose previously untapped capacities embedded deep within networks and their stacks, at Layers 2 through 4. The five -- scanrand, minewt, lc ( linkcat ), paratrace, and the OpenQVIS cross-disciplinary-a-go-go phentropy -- demonstrate Stateless TCP Scanning, Inverse SYN Cookies, Guerrila Multicast, Parasitic Tracerouting, Ethernet Trailer Cryptography, and quite a bit more. (For details, stop by DoxPara Research or check out the latest slides. The academic paper is coming "soon".) In terms of actual usefulness, scanrand is no nmap, but it's still interesting: During an authorized test inside a multinational corporation's class B, scanrand detected 8300 web servers across 65,536 addresses. Time elapsed: approximately 4 seconds."

106 of 303 comments (clear)

  1. ...wha? by Anonymous Coward · · Score: 3, Funny

    ...how I wish Babel Fish would have a Geek->English translation option...

    Anyone here want to sum it up IN PLAIN ENGLISH, without involving beowulf clusters or "Profit!"?

    1. Re:...wha? by Anonymous Coward · · Score: 4, Funny

      1. Set up a Beowulf cluster of secure tunnelers.
      2. Detect thousands of networks in seconds.
      3. ?????
      4. Profit!

    2. Re:...wha? by unicron · · Score: 4, Funny

      Roughly translated it means they have all 3 CCIE's and get money thrown at them.

      --
      Finally, math books without any of that base 6 crap in them.
    3. Re:...wha? by m1a1 · · Score: 4, Informative

      I'll try and hook you up here. Seeing as most of the replies to this I have checked were ridiculous. Basically what these guys are looking at is new ways to use the lower parts of the OSI model.

      The networking model is divided into seven layers. These guys are looking at mainly levels 2-4. These layers are: 2) Data Link, 3) Network, 4) Transport. It looks like most of this focuses on the Network and Transport Layer, where TCP/IP live (reverse respectively). There are basic things you can do with tcp/ip values and protocols, such as trace route, ping, etc. They are finding new things. An example of the typical tcp/ip function is the traceroute. You send a packet with TTL(Time to Live) set to 1. Whoever it hits tells you it died. Then you do 2. Slowly you find your way to the destination, tracing each hop along the way. They are finding new, similar uses for tcp/ip.

  2. Go Dan! =) by dew · · Score: 2, Interesting

    I roomed with the guy and can attest to the year or so he spent cobbling this stuff together. Go Dan!!

    -david

    --

    David E. Weekly
    Code / Think / Teach / Learn
    h4x0r for

    1. Re:Go Dan! =) by Karamchand · · Score: 5, Funny

      I was the girlfriend oft this guy for three years and can attest he spent neglecting me and only fooling around with his computer thingies.

    2. Re:Go Dan! =) by susano_otter · · Score: 3, Funny
      that thing that stood on that bridge and wouldn't let people cross until they answered riddles

      A Monty Python nerd?

      --

      Any sufficiently well-organized community is indistinguishable from Government.

    3. Re:Go Dan! =) by Effugas · · Score: 2

      Once while giving a talk to a bunch of students, I accidentally said something along the lines of Bob going into the hole Alice opened up, and Alice going into the hole Bob opened up...

      The room was silent for a few very long seconds.

      --Dan

  3. That's insane! by DJayC · · Score: 3, Interesting

    "During an authorized test inside a multinational corporation's class B, scanrand detected 8300 web servers across 65,536 addresses. Time elapsed: approximately 4 seconds."

    That is crazy! Does anyone have information, for comparison, on what a scan like that would take using other tools?

    1. Re:That's insane! by Anonymous Coward · · Score: 4, Interesting

      Um, not that I would know anything about scanning that many addresses, but most of the portscanners out now can only handle 20 or so simultaneous connections and have a 2-3 second timeout. So it would depend how fast the hosts respond and what % have servers. I imagine it would be in the realm of 30 minutes or so for this network.

  4. Please be nice by thalakan · · Score: 5, Informative

    Hi - www.doxpara.com is temporarily pointed at shaitan.lightconsulting.com, a quad Xeon hosted at Via.net in Palo Alto. Please be nice to my server so I don't have to drive over there and fix it...

    --
    -- thalakan
  5. I'm soo dumb by hemingwaynet · · Score: 5, Funny

    How come I go through my day feeling my little code is soo smart until I log in to Slasdot and read about C-level hacking of the core infrastructure of the internet by gods on human thrones and feel like a little 1st grader who has to deliver a note to a sixth grade teacher and marvels at the complex stuff on the chalk board....

    *sigh*... I'm important! I swear...

    --
    Bruce Werner http://www.kidventus.com
    1. Re:I'm soo dumb by Istealmymusic · · Score: 2

      Idiots.

      --
      "The lesson to be learned is not to take the comments on slashdot too literally." --Vinnie Falco, BearShare
  6. Re:What language? by jlittle · · Score: 4, Informative

    keiretsu = corportation/firm in japanese
    packetto = loan worn (usually in katakana) meaning packet.

    ie.. Packet Company in Japanese

  7. Re:That's Great by fliplap · · Score: 2, Insightful

    Yeah, because if it takes em all night to scan the network they're less likely to get in right?

  8. maybe you can calrify by ryochiji · · Score: 3, Interesting

    What's up with the pseudo-Japanese name?

    1. Re:maybe you can calrify by sql*kitten · · Score: 2

      What's up with the pseudo-Japanese name?

      A node I wrote on E2 should explain.

    2. Re:maybe you can calrify by Effugas · · Score: 2

      It's...a bit of a tribute. Some of the best code I've ever seen -- brilliant, mind-bogglingly cool stuff -- comes out of Japan.

      OK, so maybe it's a bit of an ego trip to lump myself in with these guys...but it's Open Source, BSD stuff; if I was getting paid to write it I'd probably have to name it something like "NetXPress Pro Enterprise Edition". Since it's free, I get to call it whatever I like :-)

      What code impresses me? Off the top of my head:


      Gogo, world's fastest MP3 encoder.

      PVNation. You really want to hear the output of Shapee.

      So, that's the story.

      --Dan

  9. Greek by andyring · · Score: 2, Insightful

    Granted, most of that post was Greek to me, it's still interesting in that I think in any technology or practically any invention, people will find ways to make them do things never even conceived of by the originator. Coming up with new uses for obscure parts of the TCP/IP stack isn't really any different than other inventive uses for common, everyday items. In all actuality, I think it's all about the oft-used phrase, "thinking outside the box."

  10. Still Reading... by airrage · · Score: 2

    I will post a comment here when I'm done reading the main abstract and supplementaries. I'm also hoping to earn a PhD by proxy. Anyone got a text to speech adapter, it might be nice to hear this in my sleep. Seriously, this d00d got skillz.

    --
    "This isn't a study in computer science, its a study in human behavior"
  11. Reminds me a lot of work done at USANC in the '90s by Anonymous Coward · · Score: 2, Troll

    This is similar to the work we did at UANC in the 1996 era. We did a lot of thing with source fragmenting of ethernet moduli, so to speak. This person's research is eerily similar, but clearly his own. I am not posting to claim copyright, blah blah. Just to point out the respect I have for someone who made it "this far!"

    One of the things we did was design an ethernet hashing system that would function sort of like a dynamic roulette wheel of SYN types and packet sequence numbers. Using differing protocol sweeps, we could monitor different states without creating state ourselves! The ultimate goal was to provide inverse cascade across multiple routers and switches, allowing an attack to be sourced directly to a particular ethernet interface without the attacker's spoofing even mattering. By rotating state in real-time, using different queueing techniques, we could esentially traverse the entire network, sort of a big de-randomized traceroute, and virtually re-route all attack traffic back into the ethernet "netherworld", in a nutshell.

    Very advanced stuff! I applaud your work wholeheartedly!

  12. huh? by circletimessquare · · Score: 2, Insightful

    i don't know a damn thing about what this story is talking about, but i've never been more scared in my life

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
  13. Re:Attention Slashdorks by Drunken+Coward · · Score: 2

    Nobody on their death bed ever said "I wish I had spent more time alone in front of my computer".

    I imagine this guy would have said something along those lines.

    --
    Have you been stalked by Seth today?
  14. Makes me happy I just got laid off by jakedata · · Score: 3, Funny

    1. I have plenty of time to play with it.

    2. I don't have to worry about someone doing it to me.

    Is anyone working on SNORT signatures for this stuff?

  15. Re:That's Great by Bastian · · Score: 4, Insightful

    Do you even know what this stuff does?

    Most of it has little direct cracking application that I can see. We have a fancy traceroute, a system allowing multiple hosts to share an IP address and still get the correct data through MAC address translation.
    I can see where scanrand could be abused, but it won't be until someone writes a script for the script kiddies to use.

    As for the idea of security through not telling anyone, read The Cuckoo's Egg and study up on the Internet Worm to figure out why that idea is completely idiotic.

  16. So what is it? by Sarin · · Score: 5, Funny

    The Paketto Keiretsu, Version 1.0, is a collection of five interwoven "proof of concepts" that explore, extract, and expose previously untapped capacities embedded deep within networks and their stacks, at Layers 2 through 4.

    Hmm let me guess you have to compile this as root, after that it will give "proof of concept" to the black hat 2002 people that indeed there are previously untapped capacities deep within my server, somewhere remotely hidden on the outer reaches of my port range? ;)

    1. Re:So what is it? by LostCluster · · Score: 3, Informative

      No, this doesn't work on the horizontal edges of your port range. This works below your TCP and UDP ports. It sends messages that don't quite make it that far up there in order to just see what happens.

      If you don't know what the OSI Networking Model is yet I suggest you go look it up...

    2. Re:So what is it? by crawling_chaos · · Score: 2
      I think your humor detector may need a little fine tuning. I think he was referring to the fact that this is an incredibly complex piece of software, written by people We Really Should Not Trust. Who knows what else might be lurking in there, particularly if it has to be compiled as root?

      Now since he's released the tools as source, I doubt that there's anything particularly nasty in there. Paranoia is still a virtue in the sysadmin business, however.

      --
      You can only drink 30 or 40 glasses of beer a day, no matter how rich you are.
      -- Colonel Adolphus Busch
    3. Re:So what is it? by Effugas · · Score: 2

      I'm quite trustable, but like you said, I released source very much because I have no problems proving that.

      Email me privately if you'd like a bit of history about where I'm coming from.

      --Dan

  17. Re:hey by ChazeFroy · · Score: 2

    He should have spent more time writing decent error pages for his website, ones that don't reveal the absolute path directory structure to his stuff. Try clicking on the "paratrace" link from the slashdot story and you'll see this URL in your browser's bar:

    http://www.doxpara.com/404.php?f=/home/effugas/d ox para/writings/docs/paratrace.xml

  18. Alex, I can scan that net in 30ms. by Anonymous Coward · · Score: 4, Funny

    Let's see...

    ping 160.1.255.255

    Duck and cover, here comes the smurf...

  19. scanrand and paratrace by Wanker · · Score: 5, Informative
    I don't quite follow what scanrand does that a normal SYN-based scanner does not except that it is broken into two parts so that potentially a different system could be used to receive the packets sent by the first system. Why would this be useful?

    I guess he refers to embedding a code in each packet sent out to validate that only "real" packets are accepted by the receiver as "Inverse SYN Cookie". I don't understand why this is important, tho.

    The "paratrace" program is quite interesting-- from the README:

    paratrace

    Paratrace traces the path between a client and a server, much like "traceroute", but with a major twist: Rather than iterate the TTLs of UDP, ICMP, or even TCP SYN packets, paratrace attaches itself to an existing, stateful-firewall-approved TCP flow, statelessly releasing as many TCP Keepalive messages as the software estimates the remote host is hop-distant. The resultant ICMP Time Exceeded replies are analyzed, with their original hop count "tattooed" in the IPID field copied into the returned packets by so many helpful routers. Through this process, paratrace can trace a route without modulating a single byte of TCP/Layer 4, and thus delivers fully valid (if occasionally redundant) segments at Layer 4 -- segments generated by another processe ntirely.


    Nutshell summary: this uses an existing open TCP connection to run a traceroute through a firewall that would otherwise tell you to take off. I could certainly see this being useful.

    Some good background reading on O'Reilly's Safari online books site if your TCP/IP internals are a bit rusty:

    Internet Core Protocols: The Definitive Guide

    TCP/IP Illustrated, Volume 1: The Protocols
    1. Re:scanrand and paratrace by ryanr · · Score: 5, Informative

      I guess he refers to embedding a code in each packet sent out to validate that only "real" packets are accepted by the receiver as "Inverse SYN Cookie". I don't understand why this is important, tho.

      With a traditional scanner, the scanner either has to maintain state (i.e. don't accept a reply to my scan request if I haven't sent it yet, nor if it doesn't match my sequence number, etc..) or it will be subject to the scanee spoofing replies. For example, if you figure out that I'm scanning you, then you can just start generating SYN-ACK packets and lie to me.

      By using inverse SYN cookies, the scanee can't reply until/unless it gets the actual SYN packet, and the scanner doesn't have to maintain any state, and can just blast full-speed.

    2. Re:scanrand and paratrace by Electrum · · Score: 5, Interesting

      I don't quite follow what scanrand does that a normal SYN-based scanner does not except that it is broken into two parts so that potentially a different system could be used to receive the packets sent by the first system. Why would this be useful?

      I guess he refers to embedding a code in each packet sent out to validate that only "real" packets are accepted by the receiver as "Inverse SYN Cookie". I don't understand why this is important, tho.


      Because it allows much faster scanning than can be done with a traditional scanner. You need to understand SYN cookies:

      http://cr.yp.to/syncookies.html

      Instead of sending a SYN and waiting for the response, as a normal scanner has to do, scanrand sends thousands of SYN packets at once, without tracking them. It determines the port based on the ``inverse SYN cookie'' that the response contains.

    3. Re:scanrand and paratrace by ryanr · · Score: 2

      Plenty of reasons.. to direct one to a honeynet, to lie to the OS fingerprinter, to make the attacker spin more cycles, to give inconsistent results each time...

    4. Re:scanrand and paratrace by LinuxGeek8 · · Score: 2

      This sounds like the same thing that tcptraceroute does. It sends a tcp/ip packet to an open port and receives an icmp packet as reply. From that it builds the traceroute, even with the hosts behind a firewall.

      --
      Well, don't worry about that. We can get you back before you leave. (Dr. Who)
  20. It sure is great. by Inoshiro · · Score: 4, Insightful

    Because most people won't lift a finger when someone says "theoretical" or "possible" or "probable" -- but watch those deadlines jump up when you have an actual break in!

    Because insurance companies don't require an authorized audit of computer security (yet), most places are wide-open. Think of this as the example of how to start fires, and why the government should have laws about the fire protection that public theatres (ecommerce sites) should have. Most companies are happy to let a room full of patrons burn to death -- that's why we need examples and government intervention. Besides, I'd rather that fellows like this release what they've been working on, so I know what to look out for, and can apply their methods against my systems at leisure in order to find problems and address them.

    --
    --
    Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
    1. Re:It sure is great. by Effugas · · Score: 2

      Inoshiro--

      There's a fire, you no longer have a building, but you do have corpses.

      There's a hack, you still have your building, you still have your servers, you have no corpses.

      This, at the end of the day, is why computer security isn't big on insurance company lists.

      Credit card numbers are not lives! And the moment the theft of them becomes a real problem -- and believe me, despite the numbers I've seen, they apparently pale vs. legitimate use -- we'll see digital credit cards secure against replay attacks (i.e. they'll output a signature value tied to the merchant, the date of the transaction, the price of the transaction, and a nonce).

      Bruce Schneier was giving this talk where he said two things: A) Infosec needs a risk management approach, and B) Business needs to take computer security seriously. I had to point out to him -- the two are contradictory, if risk management deems the benefit of insecurity greater than the amortized risk of insecurity.

      --Dan

  21. Re:Note to the editors: by CounterZer0 · · Score: 5, Insightful

    Welcome to the dumbing down of /.
    This is News for Nerds - if it was something joe-shmoe Wallstreet journal reader could understand, then it would be in the Wallstreet Journal. If you don't understand it, LOOK IT UP.

  22. Oh, so what up with the scissors and paste links? by JungleBoy · · Score: 2

    Um, I'm so confused about the scissors and paste that I need to sit down. Note the links attributed to the open and close parens around 'linkcat'

    (linkcat)

    Would someone please call me dumb and tell me the answer?

    --
    "You never know when some crazed rodent with cold feet might be running loose in your pants."
    -Calvin
  23. So with this utility program by kensai · · Score: 3, Funny

    I can haxor the Gibson and become 3l33t

  24. I want to be a troll now by meshko · · Score: 5, Insightful

    OK, this pretty much pushes me over. I've been considering becoming a slashdot troll for some time and I think this article finishes it. First interesting story in a week or two. It gets more moronic posts than anything I've ever seen on slashdot. The best posts here are of the type "this is way over my head". If this is over your head, but you think it's interesting stfu and don't post anything. I don't even want to talk about others.
    The compost bin story got a more meaningful discussion that this.
    90% of people here think that case mods are cool
    99% of people here look at a program which allows you to traceroute without icmp or udp (just to name one thing) and say "yeah, but what's the use"?
    WTF?

    I shall go and troll in the story about case with 6 neon lights attached to it now. See ya.

    --
    I passed the Turing test.
    1. Re:I want to be a troll now by maelstrom · · Score: 2

      don't worry dude, slashdot hasn't been really technical for a _long_ _long_ time. it's more fun watching the downward spiral, there is no need to help it along. :)

      --
      The more you know, the less you understand.
    2. Re:I want to be a troll now by Effugas · · Score: 2

      You are, of course, right.

      I was actually fearing getting labelled the creator of some new toolkit for destroying networks. Instead, I got myself labelled as someone all talk, no code.

      Oops.

      --Dan

    3. Re:I want to be a troll now by schlach · · Score: 3
      No, he's got a real good point. Of course, by the time I read the article, two intelligent posts had managed to float their way up to the surface. The problem isn't with idiots on slashdot. They've always been there. The problem is moderation.

      I think a lot of people have noticed a stark decline in slashdot quality the last three or four weeks. This is about the time the editors changed the code to post notice about your mod points on the top of the front page when you log in. According to CmdrTaco, the number of mod points in use jumped from 4 per 10 comments to ~8 per 10 comments. To me this means two things:
      • there is twice as much uselessly moderated crap at +4 and +5.
      • half the moderators running loose on slashdot are people who until recently never bothered to read the discussions, as they would have figured out they had mod-points at that point, under the old system.


      This is dangerous. We're talking about a Byzantine failure model with half of our population being bent on our destruction. We can tolerate 20-25%, but once half the moderators are aligned against intelligent conversation, the system breaks down.

      Might want to read Taco's journal. He talks about the moderation system, and they're trying to figure out what to do about the sudden inflation of mod-points. They're not working very fast, granted, but they're working.

      It's also time for everyone to start thinking about what's broken, specifically, as opposed to the general "slashdot is totally populated by trolls" theory. The population of slashdot has not changed significantly in the last month! But the way we listen to them has. And so we're hearing more useless chatter. Slashdot isn't dead, it's just broken. I've come up with some ideas that I'll post to my journal - or a story about the slashdot malaise that may or may not get posted on the front page - to solicit public comments on what should be changed/fixed. Wish I had already, but been busy.

      Don't worry though. I'm sure that if slashdot does die, whatever succeeds it will first be posted about on slashdot. =)
    4. Re:I want to be a troll now by Effugas · · Score: 2

      No sarcasm. I truly sounded all talk, no code. My original post was hardcore tech and I was afraid of all these responses AIIIIIGH HE'S GOING TO DESTROY THE EENTERNET.

      I honestly never expected "I can't see him say he did anything except a port scanner, so I assume he did nothing but nmap".

      You happen to be right -- the writeup sucked. Life in here got *much* better once I did the English writeup, though.

      --Dan

    5. Re:I want to be a troll now by Effugas · · Score: 2

      Heh, I have capped Karma :-)

      But then, I don't post unless I've got something to say, and I've been capped since they had a cap.

      --Dan

  25. Re:translation by schon · · Score: 5, Funny

    he wrote some new tools that are like the tools we already have but implemented in a slightly different way

    Slightly different?

    Yeah, and a cellphone is just like two cans and some string, only slightly more useful.

    There are some seriously funky tools in there - check them out.

  26. no, no, this IS revolutionary! by Anonymous Coward · · Score: 3, Funny


    basically, this guy found a way to say "i will die alone" in over five hundred words, including the words "link layer" and "phentropy".

  27. What Paketto Is (In Simpler Terms) by Effugas · · Score: 5, Informative

    SCANRAND
    ========
    Really, really fast port scanner, that can also trace network paths. Port scanning is simply the act of asking a machine if you can start up a conversation with a certain port of its, and marking down "yes" or "no" depending on the response. Normally, there's lots of overhead as you keep track of who you sent requests to and thus who you're expected responses from. Overhead, or "state", makes things slow. So scanrand is stateless -- right when you start up, it splits in two. One half asks everyone, "Heh! What are you hosting!" The other half picks up responses, "Hmmm, some guy just said he has a web server."

    Now, there's a problem: If someone knows I'm not keeping track of who I'm scanning, they can just throw fake responses back at me. But TCP lets me embed a little signature with every connection request -- the "Sequence Number". This number will be returned to me when I get a valid response from a host that I scanned. So I take the IP and the port of the machine I scan, encrypt it into the sequence, and send off the request. When I get the response back, I look at the ACKnowledgement, compare it to the IP and port of the machine that's talking to me, and immediately know whether I ever scanned this guy in the first place.

    So, that's why I get to scan really fast. Mind you, it's the least impressive part of Paketto in raw technical terms -- but it's definitely useful as hell.

    MINEWT
    ======
    What if you could just run a program, and a router showed up on your network? I don't mean physically, but I also don't mean "having anything visibly related to the computer hosting it". It'd be virtual, with its own separate IP addresses and it's own MAC addresses too. It'd be portable to any machine on the LAN, maybe it'd be fast, but it'd definitely be amazingly flexible -- no chips to make, no wires to crimp. Run this software, and there's something new on your net.

    That's what minewt is -- a new router that just shows up and works. Now, it happens to do some funky things -- Guerilla Multicast involves taking what your local network sees as a broadcast or multicast address and attaches it to what the outside world sees as just another IP of a single host. So the single host communication goes out, but once the packet returns, it's flooded to a host of happy listeners. (Such is the theory.) MAC Address Translation is also slightly cool -- NAT is all about using a Layer 4 TCP/UDP port to figure out which Layer 3 IP address (the 10.*'s an 192.168.*'s all us Linksys folk live behind) an incoming packet from the internet is really supposed to be going to.

    It ain't your gateway that downloaded all those MP3's, even if that's the IP address on that flow of music.

    Well, there's also this tech called ARP -- the Address Resolution Protocol. Your local network doesn't have a clue about IP addresses -- it just has these unique factory assigned bitstrings that uniquely identify everyone. ARP is used to translate the Layer 3 IP -- 10.* or whatever -- to the MAC address the factory assigned.

    NAT goes from L4(Port) to L3(IP). ARP goes from L3(IP) to L2(MAC).

    MAT -- MAC Address Translation -- just combines the two. L4(Port) leads to the combination L3(IP)/L2(MAC).

    End result? Multiple hosts can share the same IP address. Cool.

    LC [LINKCAT]
    ============
    I've got a wire. I want to talk on it -- but I can't, I've got all these sockets and programs and limitations in the way. Or at least, I had them.

    1) Execute lc -m00 and start typing hex. Whatever hex bytes I type show up on the ether.
    3) Profit.

    Or,

    1) Execute lc -l00 and start watching everything on the network go by in hex. ANything I like, I can copy, then run lc -m00 and paste back onto the wire once again.
    3) Profit.

    lc has a really interesting mode that's based on the fact that you can actually put data in a frame *after* IP is done with it -- it's called an ethernet trailer, and happens all the time when you try to send a packet smaller than the minimum legal length for ethernet. Well, as long as we can throw data after our packet, lets put crypto in it -- lets sign our frame! Basic support for SHA-1 HMAC's is provided.

    PARATRACE
    =========
    Alright, this is kinda neat. You've got a connection to some host, right? You want to know how your packets are getting there. But if you use normal traceroute, you're gonna start up a whole new connection. Paratrace gets around that -- you see, TCP lets you repeat packets; actually, by repeat, it's more like "The network can break and accidentally cause packets that were assumed to have been dropped to mysteriously come back to life; we handle this screwup just fine." So instead of spawning a whole new connection for our traces, we run our traceroute -- which is entirely a Layer 3 IP hack -- using a legitimate Layer 4 TCP packet. When the data eventually gets there, it's mostly ignored -- oh, the network screwed up again.

    If there's a stateful firewall in the way, well, it's looking at Layer 4 data, which is 100% valid.

    PHENTROPY
    =========
    See a cloud? Might be random. See a bunch of triangles? That ain't random. See the Borg Cube? Yeah, that's the FreeBSD kernel. This is an extension of Michel Zalewski's excellent Phase Space Analysis of TCP/IP Sequence Numbers, done with an incredibly interesting tool called OpenQVIS. Those images render *fast*, folks. 15-45fps fast.

    Terribly sorry I didn't do a writeup like this to begin with; hopefully the Keiretsu makes a bit more sense now.

    1. Re:What Paketto Is (In Simpler Terms) by Effugas · · Score: 3, Informative

      Yeah, that'll be fixed when Google picks the link up off my home page. Anyway, it's the next story after Paketto.

      --Dan

    2. Re:What Paketto Is (In Simpler Terms) by Effugas · · Score: 5, Informative

      a) Testing was completed on FreeBSD and Linux. We're trying to get Solaris up; I just got a patch for OpenBSD. Win32 is...hmmm. Theoretically possible.

      b) Docs were added at last minute; I've yet to write a true manual.

      c) The code's tiny and mostly self contained, but I understand your worries. Contact me privately and I'll give you a bit of my history.

      --Dan

    3. Re:What Paketto Is (In Simpler Terms) by CoolVibe · · Score: 2
      Hmm, the thing doesn't want to compile with the Coin library and SoQt inventor-qt bindings. Is OpenQvis qt2/openinventor/SoQT only?

      Are there statically compiled bins (modulo OpenGL) available for several operating systems?

    4. Re:What Paketto Is (In Simpler Terms) by CoolVibe · · Score: 2

      Duh, I of course mean all of that stuff _and_ Qt 3.1. So KDE3 users can't compile OpenQvis. Hmm... I was looking forward to looking at 3d graphs of my network :(.

    5. Re:What Paketto Is (In Simpler Terms) by Rolo+Tomasi · · Score: 2

      Would you mind posting the patch for OpenBSD, here or somewhere else? I can't get it to compile ...

      --
      Did you know you can fertilize your lawn with used motor oil?
    6. Re:What Paketto Is (In Simpler Terms) by Rolo+Tomasi · · Score: 3, Informative
      Alright, after a bit of fiddling, I got it to work. If anyone's interested, here's how I did it:
      1. ./configure
      2. dos2unix libtomcrypt/makefile (this makefile is totally fscked ... and it's in CR+LF format, so you have to convert it first)
      3. vi libtomcrypt/makefile
        1. :13s/rs/rc/
        2. :5s/O6/O2/
        3. :41,46s/zlib\///g
      4. make clean && make
      5. ranlib libtomcrypt/libtomcrypt.a
      6. make clean && make
      --
      Did you know you can fertilize your lawn with used motor oil?
    7. Re:What Paketto Is (In Simpler Terms) by Bandman · · Score: 2

      Wouldn't it require XP, due to lack of raw socket support previous?

  28. Clarification by dew · · Score: 5, Informative

    Dan enjoys being witty with words. A "keiretsu" is a conglomeration of not-100%-related business units under a single roof. Mitsubishi makes cars and huge boats, Yamaha makes motorcycles and electronic synthesizers, etc.

    The Paketto Keirestu is a conglomeration of program units that do really bastardized and interesting things with packet manipulation and flow. It's a catchy little title, I thought, but that's MHO. ;) Dan, for those curious, is (AFAIK) not proficient in Japanese. =)

    -david

    --

    David E. Weekly
    Code / Think / Teach / Learn
    h4x0r for

    1. Re:Clarification by ryochiji · · Score: 3, Interesting
      >A "keiretsu" is a conglomeration of not-100%-related business units under a single roof

      I happen to be Japanese, so I just thought it was rather...odd. Maybe it's because I've never seen the word "keiretsu" used in a context other than the one you described.

    2. Re:Clarification by 4of12 · · Score: 2

      Thanks for the clarification.

      I've seen "keiretsu" previously.

      I've sometimes confused keiretsu with another Japanese word, "karoshi", which might just as well apply:)

      --
      "Provided by the management for your protection."
  29. Re:4 Sec? by Istealmymusic · · Score: 2, Interesting
    4 seconds for 2^16 is very fast. That's only 4(2^16) = 262,140 seconds = 4,396 minutes = 72 hours = 3 days for a sweep of the entire Internet. The viruses spreading possibilities are immense, in a mere three days a single virus could discover all exploitable hosts, though of course the time would be cut drastically due to the distributed nature of viruses. This isn't as fast as 15 minutes the Warhol Worm offers, but is faster than than most admins will be able to patch their boxes, assuming the exploit is discovered and published beforehand. The possibilities of an underground vulnerability circulating without a patch are very real, and it could easily take 3 days for a vendor to fix the problem.

    "Black Ops of TCP/IP", Indeed.

    --
    "The lesson to be learned is not to take the comments on slashdot too literally." --Vinnie Falco, BearShare
  30. Re:Oh, so what up with the scissors and paste link by Effugas · · Score: 5, Interesting

    Cut and Paste. Linkcat lets you do that with packets :-)

    --Dan

  31. Re:Note to the editors: by EllF · · Score: 5, Insightful

    I'm going to burn some karma.

    Somebody needs to moderate the parent comment up. This article is not merely masturbation for some geek - these are fundamentally cooler tools than what we've had before. Why? Because they do what they do - port scanning, routing, etc. - in new and more flexible ways.

    One of the problems with releasing a powerful tool is that you need to *train* people to use it. Even moreso than in meatspace, virtual tools like these require you to grok both the code and the environment in which the code runs. In this case, you need to understand how TCP/IP works, what the OSI layers are and how they interrelate, how existing implementations have been done, and how these tools are different.

    It's really disappointing to see comments disparaging what is really impressive work - especially for reasons such as "this isn't new!" or "I don't get it!"

    *sigh*

    --
    We who were living are now dying
    With a little patience
  32. Re:translation by belloc · · Score: 2

    translation...basically he wrote some new tools that are like the tools we already have but implemented in a slightly different way, except these tools were heralded by an obtuse 500-word self-aggrandizing technobabbling post on slashdot.

    Can someone translate this for us?

    Belloc

    --
    I got more rhymes than Jamaica got Mangoes.
  33. Odd links by Omniscient+Ferret · · Score: 2, Insightful

    Am I missing the importance of safety scissors & Elmer's glue? Or are the links on the parentheses around linkcat just for kicks?

    1. Re:Odd links by CoolVibe · · Score: 3, Informative

      safety scissors - Cut
      Elmer's glue - Paste

  34. Re:translation by ryanr · · Score: 5, Interesting

    They're just a little bit more than slightly different. Try them out, you might be surprised.

    Oh, and that's Dan's normal speaking and writing style. I've heard him speak several times, and he wrote a couple of chapters for me for Hack Proofing Your Network, 2nd Edition. Really good stuff. Dan's writing has a lot of really good stuff in it, but you have to be paying attention.

  35. Re:not possible by Effugas · · Score: 4, Informative

    Scan requires one socket.

    Kernel has no idea what's going on, it RSTs anything it gets (which is fine by me).

    --Dan

  36. Re:translation by Angry+White+Guy · · Score: 5, Insightful

    Yeah, here goes: I never really understood the article, but I'm going to try to make everyone feel dumb by grossly overgeneralizing and hoping nobody calls my bluff!

    Hey pal, anyone can break an internet protocol, but it takes skill to bend the hell out of it. This guy dumps more braincells everytime his girlfriend spits after oral sex then you could ever hope to have. This guy speaks in TCP/IP, you just speak in condescending technocratic bullshit. You're the reason information is not free-as-in-beer free.
    Hey Slashdot, we're going to get a big group of us together and go beat the fuck outta Stephen Hawking! Who the fuck does he think he is looking at the universe in a slightly diiferent way, except those views were heralded by an obtuse 500 page self-aggrandizing technobabbling hardcover!

    I'll post at +1, I've got karma to burn....

    AWG

    --
    You think that I'm crazy, you should see this guy!
  37. Re:Oh, so what up with the scissors and paste link by Soko · · Score: 2

    I saw that too. Sublime, yet obvious. Just beautiful. As is the rest of your work, BTW.

    A tip of my tin-foil hat to you, sir.

    Soko

    --
    "Depression is merely anger without enthusiasm." - Anonymous
  38. Fun with errors? by LostCluster · · Score: 5, Informative

    Maybe it's too early for anybody to make sense of this thing... but here's what I've got so far: It seems that the great advance here is based on using the IP protocol all by itself in situations where conventionally we use TCP wrapping IP. (Remember class, we had a discussion on leaky abstractions recently where we remembered that TCP is what we use when we want to forget that IP exists.) By taking advantage of obscure parts of the IP protocol that we don't usually concern ourselves with, he's been able to use intentionally wayward packets to learn about the network. For example, sending an IP packet with a hopelessly short time to live to take advantage of the fact that whomever has the packet when it when it times out is supposed to send back a packet indicating that error. Turns out most routers do, so he collects that information and gets a traceroute that can go into places where a traditonal traceroute meets with a firewall. And that brings up the potentially dangerous side of things. This flies below our radars, it stays below our firewalls. His packets never go higher than the IP layer of our OSI model stack. (Remember that 7-layer thing that we all had to memorize in networking classes...) I'm not quite sure yet what poking around there gets them other than network topology info, but I kinda get the feeling that if there is something destructive that can be done, we're gonna get blindsided with it.

    1. Re:Fun with errors? by Angry+White+Guy · · Score: 2, Interesting

      How about fun with lots of errors. If you can manipulate ip enough to do this, what's to say that you can't redirect that in a giant smurfing of the internet. 65k packets in 4 seconds could easily clog a semi-full link, if it was sustained.

      It's a layer 2 /. effect!

      --
      You think that I'm crazy, you should see this guy!
    2. Re:Fun with errors? by Penguin+Follower · · Score: 2, Informative

      "I'm not quite sure yet what poking around there gets them other than network topology info, but I kinda get the feeling that if there is something destructive that can be done, we're gonna get blindsided with it."

      Ditto... You're not the only one worried about it!

    3. Re:Fun with errors? by brianvan · · Score: 2

      Can someone hack a highly "secure" network with this? Well, they can certainly see and do things that normally cannot be seen or done, but I'm frankly not overly worried about intruder access with this. I think there's more of a threat from crackers thoroughly violating an unsecured SQL server setup, and there doesn't have to be a terrible lot of skill in that.

      This, however, puts a whole new angle on espionage, insider corruption, coordinated intruder-assisted theft and cracking, and possibly underground peer-to-peer networks. Just to get the tip of the iceberg.

      One would argue that some of this stuff may not be new, but it's certainly the first I'm hearing of any such tools or concepts being used.

      I like the LC program a lot. Someone could build a whole new network on that concept. It probably doesn't make much sense outright, but I can see all kinds of nasty tricks being played with that. That traceroute-like tool is also impressive... it could be downright dangerous for certain people with a level of network knowledge and intent of evil far beyond mine.

    4. Re:Fun with errors? by DarkZero · · Score: 5, Insightful

      I'm not quite sure yet what poking around there gets them other than network topology info, but I kinda get the feeling that if there is something destructive that can be done, we're gonna get blindsided with it.

      The guy that came up with this released it so that we can all see it, use it, understand it, and adapt to the problems that come with it. That's not "getting blindsided". Getting blindsided is the guy that came up with it realizing that incredible destructive power may be in his hands and that he could just use it right then and there when no one even understands what he's doing on a very basic level.

      Since this is just a rearranging of what was already in TCP/IP, it was already there, sitting in some deep corner of the internet and the logic of how it works. Rather than being afraid of what it could do, I'm just thankful that the guy that found it decided to let everyone know about it so that we can take advantage of its good parts and protect ourselves against its bad parts.

  39. Loose Source Route scanner and tunnels by lamour · · Score: 4, Interesting

    A friend of mine wrote an LSR scanner and an LSR tunnel tool which you probably won't understand either. Go get them, play with them, and then think about what it means. Here's his short paper on LSR.

    While I'm here, let me just bitch for a second. I "love" slashdot. I can sort of understand the people who complain when a non-geeky story gets posted, but I just can't understand someone who complains when a technical story gets posted. "News for Nerds" dude! You can't get a whole lot nerdier than this. Stop complaining and go read some FMs. If you can't handle it, go read Wired or something instead. I'm happy to have a story posted here that my 7 year old doesn't understand yet...it gives us something new to talk about. ;-)

    IMHO,
    Michael

    1. Re:Loose Source Route scanner and tunnels by Effugas · · Score: 3, Interesting

      Michael--

      Funny story, actually.

      For quite a while, I thought IP Options just didn't work in the Core...wasn't till recently that I discovered the two PIXes I live behind block them uncontrollably.

      Scanrand's traceroute mode will eventually support some remote mesh discovery using LSRR. Thanks for the link! This will help immensely.

      --Dan

  40. Warning Geek at Work by cranos · · Score: 3, Insightful

    Okay first off let me say I am not a TCP/IP expert by any means however this does present some interesting points.

    Firstly as a poster has noted before, by going under the radar by directly using the IP layer, this is going to open up a whole new rash of attack methods which we would be much better investigating and defending against.

    Secondly, I think its cool, it renews my faith in the basic tenet of geekdom - play with it until you break it, then learn to fix it again.

    1. Re:Warning Geek at Work by Effugas · · Score: 2

      PK 2.0 will do some really, really cool things with video streaming. The idea is to take multicast -- which doesn't work over the internet -- and confine it to a single subnet. So there's a unicast IP that shows up and handles traffic everyone wants, with replies coming back to that IP. But guess what the MAC address of that IP is...

      FF:FF:FF:FF:FF:FF

      --Dan

  41. Re:All I want to know is. ... by Effugas · · Score: 5, Insightful

    Who said anything about Black Hats?

    Breaking into networks, crashing people's systems...unnecessary and boring, in that order.

    You don't need to be a Black Hat to play with protocols. Not in the slightest.

    --Dan

  42. Re:hey by photon317 · · Score: 2


    Moron. This guy's got skills, and you don't even see it. These tools are very impressive. Paketto Kieretsu is to nmap what a Ferrari is to a Pinto.

    --
    11*43+456^2
  43. Re:Note to the editors: by CounterZer0 · · Score: 2

    Thanks for the help - that was really unexpected, given the volume of 'WTF does this thing mean? What's 'Keiretsu'? Why do we need another port scanner?'. Glad to see I'm not the only one who was really engrossed by AMAZING network theory work....The first 'innovative' stuff I've seen in this arena in a few years. WAY TO GO DAN!

    Now I just wish I could go to Hivercon and see him speak......

  44. I think this sums it up nicely... by sfgoth · · Score: 2

    It's by far the best meta-slashdot comment I've ever read:

    http://apple.slashdot.org/comments.pl?sid=44091&ci d=4592270

  45. Yeah. by blair1q · · Score: 2

    I remember my first checksum.

  46. Re:kieretsu by DarkZero · · Score: 2

    A Japanese culture geek put together a set of tools that have nothing to do with one another in one package and figured that it's sort of like a keiretsu, since those companies usually produce varied products that have nothing to do with one another, like jet skis and keyboards.

  47. Neat hacks, but not profound discoveries by Animats · · Score: 3, Interesting
    Yes, you can do this stuff, but it's not that profound.

    His "router" seems pointless, unless it's attached to someone else's LAN. Yes, you can write a single-port NAT router that allows multiple machines on the same LAN to have the same IP address. But then they can't talk to each other. (They can talk to the "router" and perhaps, via it, the outside world.) Apparently he did this to get around some restriction on his dorm LAN in college.

    1. Re:Neat hacks, but not profound discoveries by Effugas · · Score: 3, Interesting

      College was entertaining. Damn near got kicked out translating Windows print requests to the local Novell printers, so people could avoid installing Client32.

      Anyway, I used Proxy ARP to get around college LAN restrictions. I couldn't have done Minewt way back when. Minewt is an extension of Doxroute, which was written to allow routing rules based on anything I damn well felt like.

      --Dan

  48. TCP traceroute by Animats · · Score: 3, Informative
    Yes, with this you can do traceroutes through firewalls that block ICMP, but pass TCP. That could actually be useful.

    TCP Traceroute is useful enough that it's already been implemented by somebody else. GPL, and for Linux, with an RPM available, even.

  49. nice... check the parent link... by netsrek · · Score: 2

    Hey thanks for that. most informative... alas no mod points...

    --

    i don't read slashdot anymore.
  50. Ping of Death! by SaxMaster · · Score: 2, Funny

    He who sendith the Ping of Death must answer thee these packets three. Ere the other router he see...

    --
    "Dancing is the vertical expression of a horizontal desire" --Robert Frost
  51. Re:Note to the editors: by jericho4.0 · · Score: 3, Informative
    He has come up with some very novel and bright ways to do several old things. The tools aren't blackhat or whitehat by themselves, but have one big blackhat advantage in that the're not going to be detected by anyone yet. They all have interesting uses in network admin or debuging.

    I haven't tried them so I'm probably missing things.The tools are;

    1) a _very_ fast portscanner. It lets you find computers and services on a given network.

    2) a virtual router. Lets multiple hosts share the same IP address.

    3) a pipe to ethernet thingy, lets you type directly out onto the network. You'ld be quite the 31337 hacker if you used this one regulary.

    4) a silent traceroute that'll let you probe behind a NAT firewall. wow. That's kinda nasty.

    5) and the coolest one of the bunch, a program that renders the randomness of a remote-machines packets into 3D space. Cool.

    --
    "A language that doesn't affect the way you think about programming, is not worth knowing" - Alan Perlis
  52. Re:Holy bejesus... by cyberon22 · · Score: 2

    It would discover which hosts are running webservers... but presumably not which webservers are exploitable. Mind you, that this speeds up the task of identifying webservers at all makes it really bad news for anyone (like me) who runs a relatively-secure webserver at home, but doesn't take the care to upgrade it more than once a month.

    This is also where someone corrects me for not knowing what I'm talking about. Kudos to Dan for putting these tools online though. As a Linux user, I'm thrilled to have new and cool stuff to play with.

    Mmmmmminewt. :)

  53. Nitpicking by Bartmoss · · Score: 2

    There is no Class B. It's called a /16.

  54. Errr...uhm...what was that in the middle part? by Qbertino · · Score: 2

    Warning: Serious TCP/IP territory here!
    Of limits for ye olde slashdotters.

    Let me fist get the Crab-Book (http://www.oreilly.com/catalog/tcp3/) and read it. And then post this thing again a half a year later, so I can add my smartass remark.

    Here's for the ones who like pictures (Hehehe...):
    http://www.aw.com/catalog/academic/p roduct/1,4096, 0201776316,00.html

    Geez, I really have to get my TCP/IP sorted out. This stuff sounds to cool to miss out.

    --
    We suffer more in our imagination than in reality. - Seneca
  55. Re:Oh, so what up with the scissors and paste link by baptiste · · Score: 2
    Cut and Paste. Linkcat lets you do that with packets :-)

    This, sir, was genius. After reading your presentation at 5AM and not having my head explode, seeing this made me laugh out loud. I'd love to see the look on some webmaster's face trying to figure out why their obscure online store got so much traffic in a 4 hour window their server crashed.

    "Linkcat? Whats that? Is Radio Shack giving away useless toys again? Who are all these geeks and why did they crash my store? Hey Lloyd, we better quadruple our stock of scissors - don't ask!"

  56. Re:Note to the editors: by baptiste · · Score: 5, Insightful
    It's really disappointing to see comments disparaging what is really impressive work - especially for reasons such as "this isn't new!" or "I don't get it!"

    The latter is understandable - a whole lot of /. folks just realized they need to brush up on TCP/IP theory - and that's a good thing. I know I pulled out my cheat sheets while reading his presentation.

    But the former is just plain annoying. Dan has done some really impressive work, using a very mature system in innovative ways. What did you expect? That he wrote some killer app that would make you rich during the IPO? This is great stuff - some of which doesn't have real world applicability (right now anyway), but so what? He's doing research into what CAN be done. I work in IT at a large research university and it really brings home the importance of research for research's sake. Others will come up with commercial applications where appropriate. But research is pushing the boundaries of existing knowledge or delving into completely new areas. For the sake of knowledge and learning.

    That said, for all of you saying 'this isn't new' or 'it's no big deal till they write scripts for the script kiddies' what crack are you on? In addition to making my head spin this early in the morning, Dan's presentation and ideas sent a shiver down my spine. I administer an academic network which means no firewall. Dan's ideas, which I could use for good, can also be used for evil. Easily. This kind of stuff is scary.

    Think about how much time, bandwidth and effort CodeRed wasted trying to spread itself probing systems that were not web servers. Imagine using this scanning technology as an opening salvo to a new exploit attack via port 80. BANG! Your network security folks sit up with a start as your Class B just got hammered hard. But it was over in 10 seconds. You look into it, but aren't really sure what it was. But now the attacker knows EVERY SINGLE HOST on your network running something on port 80. You (and the rest of the network) just got infected that much faster. Yes, previous papers already theorized this was possible (Warhol Worm, etc) But this makes it even scarier. A two stage worm could really blow things away. The first stage uses ultra fast scanning to build hosts responding to a given port. These first stage hosts develop into a network gathering available hosts to hit based on these ultra quick scans and then fire off stage two infections with pre-seeded network lists most likely to be vulnerable or offer the most targets.

    Hell, the second stage would be WELL underway by the time most network security admin's pagers went off.

    I tip my hat to Dan - this is great stuff with many useful applications, even if some are less than savory.

  57. Re:Holy bejesus... by alizard · · Score: 2
    Seriously, if these stats hold true it could streamline the whole process of scanning for exploitable hosts to a degree that if you're service is exploitable it will be exploited. Kinda scary to me..

    Isn't that the assumption anyone who has to secure a server or network is supposed to work under?

  58. Paranoia is still a virtue by wiredog · · Score: 2

    Personally, I regard paranoia as a necessity.

  59. Re:kieretsu by Effugas · · Score: 3, Informative

    Well, it's a bit more complex than that. Scanrand was branched to form Paratrace. Linkcat's -f/-F flags output integers suitable for graphing by Phentropy. Minewt gets its ass kicked by scanrand, and will eventually support the ethernet crypto of linkcat.

    --Dan

  60. Re:Nano Prob Technology? by Effugas · · Score: 4, Funny

    I don't get it :-) It's the least impressive work I've done, but it's what everyone talks about, and then everyone says it's not so technically impressive... well duh :-)

    If it didn't support stateless tracerouting w/ passive hopcount detection and split mode operation, I'd almost be too embarassed to release it.

    --Dan

  61. Re:translation by Sri+Lumpa · · Score: 2



    "Yeah, and a cellphone is just like two cans and some string, only slightly more useful."

    And without the string, of course.

    --
    "The obvious mathematical breakthrough would be development of an easy way to factor large prime numbers." Bill Gates,
  62. Re:All I want to know is. ... by packeteer · · Score: 2

    IBM has a class A. They own 9.0.0.0 - 9.255.255.255

    --
    unzip; strip; touch; finger; mount; fsck; more; yes; unmount; sleep
  63. Re:translation by Effugas · · Score: 2

    I officially agree -- both with the fact that I wrote it marketroid style (I was petrified of "l33t new hax0r tools, he's gonna destroy the web!"; the concept that people would think I didn't do anything at all never occurred to me) and that I'm no god...just someone who plays with TCP/IP :-)

    --Dan

  64. Re:hey by Effugas · · Score: 2

    nmap's much more mature and reliable -- but perhaps it's reliability starts too early...

  65. Re:translation by matman · · Score: 2

    Cool. I hope that you didn't take my comment to mean that the tools weren't neat, or useful, because they are. Have you ever read Gibson Research's 'nanoprobe' papers? Goto grc.com and see why some people are sensitive to that kind of vague, buzzword laden, hype generating writing :)

  66. Notice.. by mindstrm · · Score: 2

    I said "probably", implying to everyone but you that I don't KNOW what it used, because I haven't read the article yet.

    Next time, be more fucking polite.