How the U.S. Military Uses IRC to Wage War
publicintelligence.net
publicintelligence.net
[03:31:27] <2/1BDE_BAE_FSE> IMMEDIATE Fire Mission, POO, Grid 28M MC 13245 24512, Killbox 32AY1SE, POI GRID 28M MC 14212 26114, Killbox 32AY3NE, MAX ORD 8.5K
[03:31:28] <CRC_Resolute> 2/1BDE_BAE_FSE, stby wkng
[03:31:57] <CRC_Resolute> 2/1BDE_BAE_FSE, Resolute all clear
[03:32:04] <2/1BDE_BAE_FSE> c
[03:41:23] <2/1BDE_BAE_FSE> EOM
[03:41:31] <CRC_Resolute> c
It's a like a normal botnet, except it's commanding our troops.I thought it would be cool to do something like this as a hackathon project proof-of-concept; apparently I'm too late. Doing something like this for civil defense purposes would be pretty cool.
I don't know how extensively it is used elsewhere, but IRC is considered a primary communications method (and often the preferred vs. land lines, sat phones, and secure radios) for UAV pilots communicating with Air Traffic Control and the Control and Reporting Center.
A friend of mine worked in dis/connections support at an ISP+phone company. Proof-of-ownership was something they needed for any connection, and the acronym was used regularly throughout the workday. But she said on the phone, you'd sometimes forget and ask the customer things like "what poo can you give me?".
Military operations are, by definition, carried out by different coordinating groups sometimes thousands of miles apart. IRC is ideal for such a task as it provides a conferencing platform that is easy to use, develop, and deploy (in both the software sense and the military sense.)
It's unconcerned with the transport layer, so a wide variety of transport systems (which can include any manner of authentication and security) can be used: from a General or Admiral at a desktop client to drones mid-flight to boots-on-ground soldiers carrying a pocket-sized device. IRC is also a common technique for C&C in certain malware families.
* It's way more reliable than radio comms (you don't need to ask people to repeat everything all the time, you read your grids right the first time).
* It's concurrent, you can have multiple units reporting at the same time.
* It's buffered, you can skip stuff and come back to it later.
* It's cheap, anybody can get a window opened on the current ops and see what's going on, without needing all the hardware of a radio.
* It makes the reporting very fast.
* It makes collation/data collection much easier.
* It's scriptable, you can automate the collection of some messages, or the emission of some others.
They got that integrated at pretty much every level, and I think it's one of the most enabling thing available right now for C2C nodes, in many armies (not just US).
I recently read "Predator: The Remote-Control Air War over Iraq and Afghanistan: A Pilot's Story" and it talks a lot about how UAV pilots hang out in chat rooms sharing intel during operations. Asynchronous text is the perfect medium for this kind of thing; low bandwidth, doesn't require a lot of attention. Just crazy to think it'd be IRC.
The DoD runs its own worldwide IP network called DISN, on top of which many compartmentalized networks run. Check out http://upload.wikimedia.org/wikipedia/commons/6/6f/Intel_Gre... for a visual example.
Yes, IRC has some problems, it wasn't built with security in mind. I think dsl below offers a solution to some of these concerns.
But this still leads me to ask the question, what does a modern distributed chat protocol look like?
As someone above said, they deal with it by making the whole network secure and not worrying about the irc application being secure.
Defense (Coombs): D6 machines used primarily for...?
Fulton: Analysis.
Defense (Coombs): mIRC chat as a baseline?
Fulton: Yes.
Defense (Coombs): In fact, mIRC chat was installed on your machine as an executable desktop application?
Fulton: I think so.
I wonder if they have netsplits over there.. gives a whole new meaning to EPIPE (Broken pipe).And then call it "mIRC" because that's the crappy Windows client they use.
For example, I'm running irssi on my laptop, colloquy on my iPhone, and a few scripts which handle pushing notifications, all from the same connection.
Chat is a good human comm method - but the interesting and cool visual stuff that looks a hell of a lot like Red Alert happens on Oblong systems...
VoIP PBXes for "phone call" style video/audio
Mumble/Vent/Teamspeak for audio/text chatrooms
There's definitely a cutoff point (if you're designing a nuclear-tipped rocket, there's usually just one reason for that) but stressing about whether or not the general-purpose software we create will be used for evil will only frustrate the cause of good.
What if your nuclear arms are never meant to actually be used, but the implicit threat of having that capability will keep your country from being bullied by other countries?
Not even nuclear weapons are entirely black-and-white.
A state arms itself with the most terrible weapons, and the best soliders, with that very idea in mind.
Nuclear weapons are nothing new, in that regard.
However - the existence of a weapon implies that it will be used, if the bluff fails.
Shorter: no such thing as a weapon not meant to be used. You just hope real hard they won't be.
On the other hand, say you had someone with a passion for rocketry and space, who found that the best way to pursue their dreams at the time was to build conventional bomb tipped rockets with slave labor...
Still not exactly black and white, but a good deal less fuzzy I think.
Playing chicken with the future of the whole world in order to gain a little bit of negotiating leverage? Pure evil.
Otherwise, a hardline faction in any government could have easily pushed for it. Not the mainstream political force in the USA, most probably. (Though, who really knows, looking at Vietnam.) Also, my understanding is that the USSR was in an echo chamber that led it to believe capitalist USA would collapse on itself (hence the "we will bury you" line), so probably they wouldn't have attacked neither. Though the USSR had clearly the edge in a ground war, and I'm sure plenty fanatics could have been found. So there was still that possibility.
Of course, the perfect solution would be a perfectly-balanced economic/political federation of countries, policed by a neutral organization. That couldn't happen then, and that won't happen in the future. Neither Western countries, nor China+Russia, nor specially Arabic countries, will submit to a UN decision that violates their core political tenets, be it justified or not.
We didn't fight the cold war over which side you butter your bread on.
I can't tell if you're complaining about the USSR or the USA...
Joking aside, I know the reasons the west fought the cold war, and I don't think they were justified.
What's not subjective is that war is (almost) always fought for the wrong reasons. As far as ethics, "Just War" is pretty ridiculous; that the highest officials in power think it's a good idea to murder people, but only in specific ways, is just a joke.
Treason doth never prosper: what's the reason?
Why, if it prosper, none dare call it treason.
John Harrington.But that is subjective.
That said, in (almost) whatever country you're in, there are people out there putting their lives at risk to defend your freedom. Sometimes they probably end up bullying people for no good reason (perhaps even over the course of years) and engaging in self-sacrificial operations, but that's not their _only_ function.
At which point it ceases to be considered "open source" software under the usual definitions. So you might as well just leave it closed source and refuse to sell licences to people you don't like.
http://www.gnu.org/philosophy/free-sw.html http://opensource.org/docs/osd#fields-of-endeavor (The OSI's open source definition is derived from Debian's Free Software Guidelines, which includes the same prohibition against licenses banning fields of endeavor).
For example, if your software doesn't meet the Debian Free Software Guidelines, then it won't be packaged in the main repos. And that has downstream impact on other distributions such as Ubuntu.
This really happened with nginx. A group of people in 2003 or so wouldn't use nginx because youporn used it.
And even the comm protocols designed to replace the IRL level? Think of those from an agile-development perspective; if they don't build it to test their assumptions in the real world, then they could be making an inefficient product. And in this business, an inefficient product can mean lives lost.