SFLC Wants To Avoid Death by Code
foregather writes "The Software Freedom Law Center has released some independent research on the safety of software close to our hearts: that inside of implantable medical devices like pacemakers and insulin pumps. It turns out that nobody is minding the store at the regulatory level and patients and doctors are blocked from examining the source code keeping them alive. From the article: 'The Food and Drug Administration (FDA) is responsible for evaluating the risks of new devices and monitoring the safety and efficacy of those currently on market. However, the agency is unlikely to scrutinize the software operating on devices during any phase of the regulatory process unless a model that has already been surgically implanted repeatedly malfunctions or is recalled. ... Despite the crucial importance of these devices and the absence of comprehensive federal oversight, medical device software is considered the exclusive property of its manufacturers, meaning neither patients nor their doctors are permitted to access their IMD's source code or test its security.'"
the software running your pacemaker is probably patented too!
Does a government agency examine the source code which keeps airliners in the air, cars on the road, nuclear plants from blowing up etc etc? If the government is going to evaluate and approve every important piece of code line by line we will pretty soon run out of programmers. But then, chip designs will have to be evaluated too because they can fail as well. Next, mechanical designs, engines, turbines, reactors, better make sure that the government is stocked with experts in all those fields too.
After all, nothing can possibly be safe until it is certified as such by the government. Just ask hundreds of thousands of people who died while the drugs that could have saved them were waiting for the FDA approval. They are pretty safe now.
Negative moral value of force outweighs the positive value of good intentions.
One of the July 2010 updates bluescreened my 81-year-old dad.
The hospital backed out the update but they had to reboot him in safe mode and go up the back door.
I work for a company does full life-cycle development and verification of safety-critical software, the main areas we work in are aircraft instrumentation, smart munitions, and medical equipment (including pacemakers). The amount of testing and verification that goes into these software categories often exceed the development cost, and at every level it is documented and traced. What on earth do Doctors think they will see in the source code? We do verification, peer review, tracing, etc. what would an MD find that a room full of software, system, and QA engineers wouldn't? About the only thing that they would be able to look at and have a hope in understanding is criteria for taking action, and that is in the requirements and should be reviewed at that level, not at the code level.
Next thing they know Pilots will demand the ability to review the code for their cockpit management system and soldiers the ability to review the code for their Anti-Tank rockets!
DEMETRIUS: Villain, what hast thou done?
AARON: Villain, I have done thy mother.
Shakespeare invents 'your mom'
Even more so how many doctors or patients are going to have the knowledge to "examine the source code" and tell whether it is working properly?
It only takes one or two to achieve useful results.
The devices themselves are rigorously tested in clinical trials. If they pass those tests, what more do you want?
Software errors can (and in fact are most likely to) result in pathological behaviour in unusual circumstances. Example. "The failure only occurred when a particular nonstandard sequence of keystrokes was entered on the VT-100 terminal which controlled the PDP-11 computer: an "X" to (erroneously) select 25MV photon mode followed by "cursor up", "E" to (correctly) select 25 MeV Electron mode, then "Enter", all within eight seconds. This sequence of keystrokes was improbable, and so the problem did not occur very often [i.e. not in any clinical trials] and went unnoticed for a long time." An independent source-code audit could have saved three lives in that case.
I'm sure Therac-25 passed some sort of trials too. That didn't stop it from killing people, of course.
Sent from my PDP-11
Really? Let's hear your prosecution for a case of murder by hacking an implantable device? Even if someone was smart enough to look into the device to see it had been hacked, there would be no evidence of who did it. Pick an important enough target, ie Dick Cheney, and you have a perfect untraceable murder.
slashdot troll = you make a compelling argument I do not like the implications of.
OSX: soon to be ad supported, will only beat during approved activities, phones home with details about your liver.
rewriting history since 2109
No
WIth the exception of ATMs (and some radar guns) I wouldn't even bother with an OS
And that's GOOD. I DON'T want anything more complex than a couple (ok, 100) of lines of code in my pacemaker, thank you very much
It doesn't NEED to be more complex than that, and it SHOULDN'T
how long until
A source code audit would not necessarily have found it. Like with so many other obscure faults, most likely, you'd have to go through a full trial and error on an actually running system, since you do not always know beforehand if the error is introduced by the specific source code, the compiler or anything else.
"patients and doctors are blocked from examining the source code"
huh? are either qualified to do so?
Does a government agency examine...
How about the other entities mentioned in the summary (let alone TFA) -- patients and, more importantly, *doctors*? If not them -- who should review them?
After all, nothing can possibly be safe until it is certified as such by the government. Just ask hundreds of thousands of people who died while the drugs that could have saved them were waiting for the FDA approval. They are pretty safe now.
FDA approval works roughly about as well as "self-regulation" works, since the FDA more or less reviews studies provided by the industry.
Though it's worth noting this is probably at the upper bound of effectiveness of self-regulation, since under the FDA they're actually required to submit something that can convincingly pass for a study in order to receive approval.
Tweet, tweet.
....with the line "She hacked into my heart and crashed me."
// max_int should be enough for anyone
for(i = 0; i < max_int;i++){
sleep(1);
beat_heart();
}
// printf("hi!!!!!\n")
If I have seen further it is by stealing the Intellectual Property of giants.
I'm not trolling or flaming at all here, I'm genuinely surprised.
By my quick-and-dirty calculations:
I tend to feel rough after four or five beers. How is it you're drinking five to ten times that *a night* and still around to talk about it lucidly? I'd expect some serious delerium tremens in short order on that track...
Curious,
"What in the name of Fats Waller is that?"
"A four-foot prune."
Or maybe you might learn what "open source" is. It is not necessarily free. It is not necessarily part-time. It merely means that the source code is available. Such a long bout of rabid typing for such a small amount of understanding.
An independent source-code audit could have saved three lives in that case.
=Could have= saved 3 lives.
Would have cost 10s of thousands? millions?
Pretty much every time someone on the planet dies of accidental causes there is some procedure or process that "could" have saved them.
Life just isn't that safe. And I'd rather not spend every dime of the gdp trying to make it as safe as possible.
When people die its tragic. If its something simple to fix, we fix it. But lets not lay guilt trip down every time anybody dies. Life is dangerous and it wouldn't be worth living if we made it safe, because the only way it will ever be safe is if we lock everyone up in straight jackets in padded rooms.
Most of these devices don't spend all that long on the market. They keep getting better, having new features and lower power consumption. Proving the code would slow the pace of advancement. Irony of medical advances: an imperfect device that kills a few people may in fact be (from a public-health POV) better than a perfect device that takes an additional two years to develop.
The FDA requirements on software are strict. There are requirements for coding practices, testing, QA, etc. Inspectors show up, without notice, to check for compliance.
The code reviews are very thorough and require a manager and at least two other programmers.
All code has to be instrumented and scripts written to force execution of all code.
The output traces from instrumentation have to be fully documented. Everything that happens is documented.
They require the source code with all changes documented, test scripts, fully documented code intstrumentation output, full QA test documentation, etc. All these things must be signed by the programmer, reviewers and managers.
All this goes to the FDA along with a system for testing. They review the code, test the system and call with questions.
The FDA is interested in suggestions on improvements to the process.
That process adds a lot to the development time and cost for a project.
It can't guarantee perfection but they take a very good shot at it.
NEVADA GAMING COMMISSION has the code to slots games so why can't the FDA get the code to med systems?
It needs to be a great deal more complex if you want to do something more than just be alive.
Adaptable rates? You'll need a motion-detection routine in order to speed the heart up so that people can enjoy even the mildest exercise.
Pacing only when needed, not when it's not? You'll need more code to identify when a beat has occurred within the correct time interval.
How about automatic defibrillators? Those are the devices that will shock a heart back into a normal rhythm, which is far more than a regular pacemaker can do; of course, in order to do that, they have to be able to analyze an EKG in real time and get it right - and that takes code.