Offshore Drilling Rigs Vulnerable To Hackers
Hugh Pickens writes "Foreign Policy magazine reports that a research team from the SINTEF Group, an independent Norwegian think tank, has warned oil companies worldwide that offshore oil rigs are highly vulnerable to hacking as they shift to unmanned robot platforms where vital operations — everything from data transmission to drilling to sophisticated navigation systems that maintain the platform's position over the wellhead — are controlled via wireless links to onshore facilities. 'The worst-case scenario, of course, is that a hacker will break in and take over control of the whole platform,' says Martin Gilje Jaatun, adding that it hasn't happened yet, but computer viruses have caused personnel injuries and production losses on North Sea platforms. The list of potential cyberattackers includes ecowarriors aiming to jack up an oil firms' production costs, extortionists drawn to oil firms' deep pockets, and foreign governments engaging in a strategic contest for ever-more-scarce global oil reserves, says Jeff Vail, a former counterterrorism and intelligence analyst with the US Interior Department. 'It's underappreciated how vulnerable some of these systems are,' says Vail. 'It is possible, if you really understood them, to cause catastrophic damage by causing safety systems to fail.'"
Either the reporter doesn't get it, or it's FUD. Wikipedia lists two open source versions: OpenSCADA and FreeSCADA, but mentions that the original versions (presumably "decades-old") were on Unix or VMS and proprietary; hardly open source. (http://en.wikipedia.org/wiki/SCADA)
The "Astounding" post above says "They run Windows-based control software". That *is* astounding, and should be considered criminally negligent.
How is going from C + ASM on DOS to VB + Powerbuilder on Win 3.1 more maintainable? Are you seriously suggesting that all embedded systems should be running a desktop OS for maintainability reasons (or that no embedded software is maintainable)?
I remember using VB4 back in the day (Win98, I think) and even then the VB IDE had a hard time opening VB3 projects. Good luck trying to get Visual Studio 2008 to open a VB2 project. With C and ASM, at least you can code the project in a variety of IDEs--even plaint-text editors. What are you going to use to open an .frx file other than VB?
Furthermore, you can write maintainable C/ASM code for an embedded RISC/ARM processor just as you can write unmaintainable spaghetti code for an x86 Windows platform. If you're writing software for a desktop platform, you're going to have to update it every few years to keep up with changes in the mainstream desktop platform (new OS, new processors, etc.). If you're writing software for embedded systems then you'll only need to update your software when you decide that you want to change processors, chipsets, or add new features. Re-compiling your code for the next version of the ARM processor is likely to be easier than re-writing your entire application to use a different set of system libraries.
This whole thread is on the wrong track.
Safety on an oil rig should not be in software. It should be mechanical. A big fat mechanical-reflex operated titanium counterweight that closes a wellhead when pressure is lost can't be hacked in software. Yea, they can shut the rig down, but catastrophic permanent environmental damage is avoided.
The same goes for all last-line safety systems. They should be 100% mechanical, uninfluenced by these unreliable, capricious devices we call computers.
I hate printers.
You assume that the choices are:
A) Microsoft OS (which specifically states that it is NOT FOR USE WHERE PEOPLE MAY DIE)
B) Some fucking idiot with 3 days of C programming classes making a custom operating system.
Alright, I guess I have to explain this to you.
It is possible to hire experienced, knowledgeable people to develop custom operating systems. It is also possible to have that code thoroughly reviewed, tested, etc. to make sure it won't fail in such a way that people die.
Yes, it's more expensive to create/maintain/fix. But on the other hand, people won't die this way.
Seriously, do you use carabiners that say "not for climbing" when you go climbing because they're "cheaper" and "easier to replace"? If not, then you probably should so that you may rid us of your misguided thought that devices that say "NOT FOR USE WHERE PEOPLE MAY DIE" are perfectly suited to things where people may die.
-1 disagree is not a modifier for a reason. -1 troll, flaimbait, redundant, overrated are NOT acceptable substitutes.