DARPA Makes Finding Software Flaws Fun 46
alphadogg writes "The U.S. Department of Defense may have found a new way to scan millions of lines of software code for vulnerabilities: by turning the practice into a set of video games and puzzles and having volunteers do the work. Having gamers identify potentially problematic chunks of code could help lower the work load of trained vulnerability analysts by 'an order of magnitude or more,' said John Murray, a program director in SRI International's computer science laboratory who helped create one of the games, called Xylem. DARPA has set up a site, called Verigames, that offers five free games that can be played online or, in Xylem's case, on an Apple iPad."
Fun bugs (Score:3)
The real game is finding bugs on their site... (Score:5, Funny)
Welcome null null ( Logout )
psDOOM anyone? (Score:3, Informative)
Re: (Score:2)
Or the method of monitoring the exits of airports in Neal Stephenson's REAMDE [amazon.com].
Greetings, Professor Falken (Score:3, Funny)
I'm disappointed they do not have the game 'Global Thermonuclear War'.
Re: (Score:3)
Re: Greetings, Professor Falken (Score:5, Funny)
you have to find the user name on your own, but the password is '00000000'
Re: (Score:2)
Finding bugs is ALWAYS fun! (Score:4, Insightful)
Finding bugs is ALWAYS fun!
What's even more fun is that Tesla Roadster you were able to buy by selling the bugs you find to intelligence agencies, rather than reporting them to the vendor and being sued under the DMCA for reverse engineering their product.
Re: (Score:2)
I don't know much about nginx, but any time I hear about it it's usually because of an error message like that.
Even though it isn't used nearly as much as Apache is, I must see an nginx error page like that at least two or three times a month. I can't say the same for Apache, or IIS, or Lighttpd, or any other major web server these days.
This means the opposite of what you seem to think.
Does nginx just suffer from really bad scalability under any sort of significant load? Is poor scalability and load tolerance the reason why it starts giving 500 Internal Server Error responses and error pages like that so commonly?
Short answer: No.
Nginx is very commonly used as a reverse proxy [wikipedia.org] (for caching, encryption, load balancing, etc.) in front of another web server (might be another nginx instance, but it's commonly some other, more popular web server, nudge-nudge-wink-say-no-more). When the proxied web server doesn't respond in time, the proxying nginx returns a "500 Internal Server Error". While this isn't the only reason for a 500, it's far the most common from nginx.
So when
How does it work? (Score:2)
How can you make a game out of this? It seems to me that the game can tell when the user wins/loses, then there's no reason to create the game at all -- just make the win/lose logic do the error checking directly. So what's the point of the game?
Or is it the case that their games are not able to tell you when you win or lose, and the player has to determine that himself or herself? Tha
Re:How does it work? (Score:4, Interesting)
I worked on Xylem when I was a grad student at UCSC. I was not on the team when it launched, so my info may be out of date.
What players are being asked to do is find loop invariants for code. The invariants are hard for a computer to come up with (and be useful), but are easier to check given certain bounds. So there is no predetermined win state, each answer is checked server-side to see if it holds up within the bounds (or, if the answer is already known, the cache hit is returned). If the invariant is complex and holds, it gets scored highly. If it's trivial and holds, it gets a lower score. If it doesn't hold, the instance where it doesn't hold is returned to the player.
Does this help?
Re: (Score:2)
Does this help?
It doesn't help explain how it might be fun for the masses... I would just try playing it, but uh nope. Not for the government. Maybe I'd have played it just hosted at UCSC, running against some useful-to-me code.
Re:How does it work? (Score:4, Insightful)
DARPA funded the project, and DARPA fund lots of projects. I think a debate about whether DARPA is good or bad is pretty out-of-scope for this particular work: we made a game that might show how software verification could be crowdsourced.
The games do try to be fun, that's why none of them are "look at this loop and write an invariant". Xylem dresses up the problem statement as logic puzzles that surround the growth of exotic plants. I don't have an iPad to play the final version of Xylem on, but we tried hard to come up with a compelling game.
I don't believe the expected player base really cares about whether the project was funded by DARPA or not. I understand if you don't, but I think you would also have to stop using the Internet if you have such an issue with DARPA funded projects :)
Re: (Score:2)
Perhaps you haven't taken an algorithms class, or you've forgotten it, but go look up NP-Complete problems (you've probably heard of them). I'm not an expert, and also lazy, so I have no idea whether these problems are NP-Complete or not, and I'm sure there are other similar classes of problems that aren't NP-Complete, too. Anyway, the idea is, there are large numbers of computational problems that are astronomically difficult to find solutions to an instance of, but given a potential solution to an instanc
Re: (Score:2)
Re: (Score:2)
The games rely on varying layers of compromised or compromiseable browser attachments and plugins. If you are concerned about your system security, then they definitely aren't the games for you. Requirements range from Adobe Flash to Unity Engine.
Re:Nothing Fun At All (Score:4, Insightful)
If you've tried playing any of those "games" then you'd know they are not fun at all. Just a big fail.
I agree that the one "game" I played didn't keep me enthralled once the novelty wore off, but it seems to me that there is the *seed* of something that could be fun, for given definitions of "fun". For example, suppose that these games were games-within-a-game, which one could play to win points or "gold" to use in the larger game. Consider it a form of grinding.
Single page version of the article (Score:3)
Re: (Score:2)
The game you are referring to is Foldit. http://fold.it/portal/ [fold.it] I played it a bit back when it came out and it was an interesting game. It has even been used to find some protein folding solutions that had previously stumped the existing tools used to look for solutions. It doesn't beat the traditional science in every instance (or probably even that many) but having an extra tool in the toolbox never hurts, especially when it is a tool that can be used by thousansds of players with time to kill instead
It's decent (Score:4, Funny)
These puzzles are definitely interesting. I had a chance to get on and play the preliminaries of the pipe game about two hours ago from a college terminal. I get home to continue my "work" and the site is 505'd. I'm guessing it may have been simply slashdotted. If that's the case, then I've lost a bit of confidence in the project.
It sort of reminds me of that scene in "Sneakers" when the guys roll by to get the box back from the "NSA", and the building is being torn down. Which raises the question, if I can imagine using a site to quickly test a population sample's IQ and then to run like heck with the results, then is there a feasible reason to do so?
Sure (Score:2)
Next they're gonna make a game out of finding out who's going to those demonstrations and protests.
That one will be a blast. I'm sure there are lots of techies who will gladly play that game.
Or maybe a game where you get to control a mech and use a nerve agent on the protesters.
Re: (Score:1)
Maybe for background music they can get it to play "Kill the Boer".
Government websites (Score:2)
Re: (Score:2)
OldSpeak translation (Score:1)
It's crap. Don't give them any of your free time. (Score:2)
I gave it a thorough testing today. Granted, it's still all in BETA stage. But I'm not griping about the stupid bugs.
The whole thing sucks. The five different games are basically five different kinds of problems. There's organic chemistry, atomic chemistry, programming logic, and I didn't play the other two games but they appear to be shrouded versions of real life n-body or other computational problems.
So here's the deal. This shit takes a long time. These games get very complex very quickly. I can see mys