Protecting a rover from hackers

Cybersecurity is a serious issue not just for computers on Earth, but also for those in space.

Last month, JAXA (Japan’s space agency) announced that hackers had broken in to gain access to information about the Kibo Space Station module. The information consisted of Kibo “operation preparations” and mailing lists. In September, a 16-year-old was sentenced to six months in jail for hacking into NASA (and other) computers. In early 2012, NASA’s Inspector General Paul Martin testified to Congress about the state of NASA’s cybersecurity defenses and woes. “In 2010 and 2011, NASA reported 5,408 computer security incidents that resulted in the installation of malicious software on or unauthorized access to its systems,” he said. This goes beyond hacking into an employee’s PC: “The March 2011 theft of an unencrypted NASA notebook computer resulted in the loss of the algorithms used to command and control the International Space Station.”

Naturally, the same concerns apply for our rovers on Mars.

On Tuesday, I attended a talk titled “MSL Cyber-security implementation status report” by Bryan Johnson and Glen Elliott of JPL. You can view the slides from a similar conference talk. They reported on the long list of actions the team has taken to increase the security of operations and commanding for the Mars Science Laboratory (MSL) rover. These include the implementation of Two-Factor Authentication for access to mission systems and applications, consolidating computers into a single virtual LAN, implementing and testing an “incident response process,” and taking obvious (but time-consuming and easy-to-overlook) steps like pruning the list of people with access to the MSL network.

These steps all aim to improve security here on the ground. I asked whether they would discuss measures being taken to prevent unauthorized access to the rover itself, such as encryption or authentication prior to the rover accepting commands. Unfortunately, they declined to discuss it, but the unofficial word is that there is little or no security on the rover side. Conceivably, anyone with a powerful enough antenna and the right pointing information could send the same kind of signals currently being transmitted by the Deep Space Network to all of our remote assets (rovers, orbiters, and other spacecraft). And as we know, security through obscurity only gets you so far. MSL has had a sufficiently high profile that a rumor began circulating last August that the hacker group Anonymous was trying to gain access to the rover:

MarsCuriosity: “Anyone in Madrid, Spain or Canbarra who can help isolate the huge control signal used for the Mars Odyssey / Curiosity system please? The cypher and hopping is a standard mode, just need base frequency and recordings/feed of the huge signal going out. (yes we can spoof it both directions!)”

A group dedicated to “Space Asset Protection” is looking into this side of the problem. Unfortunately, there is some reluctance to adopt encryption, which carries its own overhead in complexity and bandwidth consumption for the often severely limited data links available for spacecraft communication.

And as for authentication, there’s always the chance that the rover might suddenly say, “I’m sorry, Dave, I’m afraid I can’t do that.”

Bookless libraries

Imagine a library that has no books. Instead, the stacks have been replaced with computer terminals, e-readers (for circulation and checkout), and “collaboration areas.” That’s the plan for the new BiblioTech library in San Antonio, Texas. It will be an almost 5000 square-foot library, with precisely zero physical books.

Read more: The First Bookless Public Library: Texas to Have BiblioTech

Libraries (especially public ones) continually seek to reinvent themselves to suit patron needs and desires. A publicly funded service must necessarily stay relevant to its funding source, but from what I’ve observed, the people running libraries and working in them also embody an ethic of relevance, benefit, and impact as a matter of course. This move is inspired by the observation that many people today have less need for physical books, or they appreciate the convenience of electronic access, and some can benefit greatly from circulating e-readers if they do not have the resources to purchase one of their own.

However, the move to an all-digital, all-virtual content library is a radical one. It may be risky, since libraries are still engaged in an excruciating wrestling match with publishers who dole out library access to e-books grudgingly or not at all, and often at steep prices when they do. (Consumers currently get far better deals, in terms of selection and price, when purchasing for themselves, than libraries do.) If publishers were to shut libraries out completely from e-books, what would the bookless library have left to offer? Further, if the content is all electronic, why bother having a physical building at all? Will people come to it?

And yet there’s something to be said for a physical-virtual library. People use libraries for a surprisingly diverse array of activities, not simply removing and returning books from a warehouse. They gather to have meetings, to study, to roam the Internet; they form book clubs and attend workshops and fold themselves into cozy armchairs for naps. Children attend storytimes and activities and get involved in volunteer programs. Reference librarians provide a uniquely valuable service in the form of guidance to relevant resources, through an increasingly overgrown jungle of information glut, and they do not charge a consulting fee. Altogether, these areas are where the library manifests as a community resource, above and beyond its store of books. Even with all-virtual content, there will still be value in these face-to-face activities… if people can be persuaded to leave their home and come. Bring on the coffee bar!

Look up LaTeX symbols by drawing

This is the coolest LaTeX doodad I’ve found in ages. Detexify is a brilliant combination of useful UI and machine learning. When you can’t remember what the latex command is to render a particular symbol, you simply DRAW it and Detexify gives you a ranked list of matches. You can then give it feedback about which one was what you wanted, which it uses to re-train its model and improve for the future.

I found this tool while trying to hunt down the LaTeX command for §, which I’d never used. Here’s what I drew:

Notice it has the correct command at the top of the list!

I love discovering new ways that machine learning can be used to make daily life easier. Well, in this case for those who use LaTeX on a daily basis. That’s everyone, right?

Program or be programmed

I read Douglas Rushkoff’s book, Program or Be Programmed with a mixture of fascination and criticism. I didn’t agree with every argument (e.g., that computer networks have no notion of time; many internet protocols use timestamps to ensure reliable communication), but each chapter gave me something to wrestle with mentally, and the book as a whole made me see various aspects of my life (interacting with technology) in a new light. Rushkoff’s thesis takes a historical view of how new technology penetrates society gradually, and those who develop the ability to manipulate and create, rather than just to use and consume, are the ones in control. Arguing from examples based on the development of writing, print, and electronic media, he notes that for us today, it’s the ability to program that gives us control over the new technological world, and that (somewhat chillingly) willful or accidental ignorance about the motives of Those Who Program may cause you to execute their Program without even knowing it.

This great, short video lets Rushkoff summarize his points in two minutes flat:

I am already a “programmer,” in that I have programming skills, but even so I consume most of what’s on the net as a user, rather than getting out there and being actively involved myself. Programming is what I do at work. On the other hand, I’ll never forget the thrill I experienced when I first contributed to an Open Source project. My art, my creation, uploaded into the ether after building on, complementing, and extending the work of complete strangers! And who knew where others might take it! It was like Free Love, but in C.

But after reading his book, I couldn’t help but think a while about what built-in biases about how various technologies work are shaping my own thoughts, habits, and ability to create.

This point, however, is the tenth of his 10 commandments. The earlier ones have value too; it never hurts to get another reminder of the value of not always being “on”/”connected,” and of being present in the here and the now.

When CloudFlare and WordPress don’t get along

It’s the little things… like your website suddenly vanishing.

My website (including this blog) is hosted by Dreamhost, a great company with great service. They offer a lot of one-click installs and generally make it easy to set up a blog or email accounts or mailing lists, etc.

Recently they started offering a free CloudFlare plan to Dreamhost subscribers. CloudFlare offers two benefits: faster webpage loads (by distributing your content across different servers around the world) and community-based protection from spam, bots, crawlers, etc. I thought I’d try it out, so I signed up.

When you check the “CloudFlare” box, Dreamhost warns that you need to allow them to redirect all traffic that comes in as http://mydomain.com/ to http://www.mydomain.com/. This seems harmless enough, and it worked fine for me at first, until I realized that one of my WordPress installations stopped working. Trying to visit http://www.wkiri.com/comphist/ or http://wkiri.com/comphist both resulted in an error: “Too many redirects.” Oddly, my other blog (http://www.wkiri.com/today/) did not have this problem.

I couldn’t find a good, concise description of how to fix this on the web, so I’m posting about it here. Basically, the problem occurs when your WordPress installation has its location specified as http://mydomain.com/something instead of http://www.mydomain.com/something. CloudFlare redirects incoming URL requests to http://www.mydomain.com/, WordPress redirects this to http://mydomain.com/, and so on until the server gets sick of it and tells you “Too many redirects.”

To fix it:

  1. Turn off CloudFlare (otherwise you can’t get in to your WordPress settings). Go to your Dreamhost panel, click “Manage Domains”, then click “Edit” for the domain in question. Scroll down to “CloudFlare Services” and uncheck the box. Scroll down and click “Change settings.”
  2. Keep reloading your WordPress site until it works (i.e., the DNS updates propagate).
  3. Log in to your WordPress site and go to the Dashboard. Click “Settings”. Update the “WordPress Address (URL)” and “Site Address (URL)” fields to have the form http://www.mydomain.com/something. Scroll down and click “Save Changes”.
  4. You may or may not also need to clear your browser’s cookies for this site.
  5. Go back to the Dreamhost panel, re-enable CloudFlare, and save settings.
  6. Everything should now work! (Again, DNS updates have to propagate for CloudFlare to be activated again.)

Older entries »