Prototyping Boards Make It Easier To Find Flaws in Specialized Hardware 56
wiredmikey writes "Author Robert Vamosi writes an interesting piece on how security researchers are using open source 'prototyping boards' and other open source tools now available via the Internet for rapid prototyping of tools used in hardware analysis. 'The days of saying it would take the resources of a nation-state to discover or exploit vulnerabilities in a particular piece of hardware in an industrial control system or a healthcare environment are rapidly fading,' he writes. Vendors who do not test their products before selling them into the field are doomed to be targets of future research and, perhaps, attacks."
Re:Not to worry - and take back open hardware! (Score:5, Funny)
of Arduino and the "open hardware" movement. What is the big deal? Yeah, schematics and documentation are free but the circuits they are using are closed.
Well it wouldn't do much of anything if the circuit wasn't closed.
Re: (Score:2, Funny)
Ever heard of a capacitor?
Re: (Score:2)
Touche!
Re: (Score:2)
Re: (Score:2)
I would say that you are not doing open hardware unless you at least have a FPGA and distribute the HDL for your design.
Does the FPGA have to be a part for which the complete schematics and documentation are available under an open license(if such a beast exists), or are blackbox chips running their toolchain's output from an OSS HDL file just better than blackbox chips running their toolchain's output from an OSS C file?
Re: (Score:2)
In that case, you don't need the FPGA either. Just use any microcontroller, and port your application to it. There are dozens of vendors to choose from, with thousands of different designs. Each of them just as open as the FPGA.
Re: (Score:2)
On the other hand, the microcontroller offers many advantages over the FPGA. They use a single power supply, while an FPGA may use 3 different ones. They have more package options, including small ones, with 6 or 8 pins, and a variety of DIP packages. Flash/EEPROM memory is usually included for microcontrollers, and usually not for FPGAs. Analog interfaces, such as ADC/DAC/comparator and brown-out circuitry are typically integrated, as well as semi-analog stuff such as USB PHYs. In addition, the microcontr
Re: (Score:1)
Speaking of Arduino and the "open hardware" movement. What is the big deal? Yeah, schematics and documentation are free but the circuits they are using are closed. It is a shame that all the Arduino people have taken the "open hardware" label and misused it.
Pretty much. Arduino does nothing the Atmel Studio already did such as interface with AVR-GCC. You just save on the ISP due to the bootloader, which other development boards have had anyways for a while. And its something Atmel has published, the specifications and methods to set up boot loader for the AVR.
Actually, AVR Studio 4/5 is over all better quality then the Arduino IDE GUI that looks like it was put together by a grade 10 computer science student. And the interface to AVR-GCC ain't all that great.
"security through obscurity" (Score:2)
that's funny, because only a few hours ago there was an article posted on slashdot saying how good "security through obscurity" is, with the author of the paper saying that ignorance of the hardware and software is a "good defense". now someone else is saying that the pace of research into hardware is accelerated, and as a Reverse-Engineer and Security Researcher and an intelligent person whom that "security through obscurity" paper clearly sees as a threat, i feel warm and fuzzy now.
Re: (Score:2)
Re: (Score:2)
And of course, "X has its advantages and downside", which regarding obscurity are a) that dedicated attackers will know less about your weaknesses, and b) that you lack the potential "many eyeballs" that _could_ help you if they know what to look for.
Big projects like Linux and Firefox attract said eyeballs, but smaller open-source projects may attract the eyeballs intent on harming you, while not being popular enough to attract helpful scrutiny.
Re: (Score:2)
ok - i may just be a very strange individual, then, because reverse-engineering, whilst time-consuming, is something that i can do pretty easily. and, just that one "eyeball" ok two i have binocular vision, it really didn't take long to "crack" NT Domains Security Logins - about 30 days - and immediately it was obvious that there was a serious problem (40-bit bottleneck). then, i had to tackle NTLMSSP later on: again, about 40 days, and again, immediately detected a serious problem or two.
the gnuradio guy
Another Arduino story... (Score:5, Insightful)
The article is just another extremely tired "This existed since the 80s, but now that the Arduino supports it, we can act as if it a new invention." And ABSOLUTELY nothing other than the Arduino. "other open source tools"? Not that I saw in the article.
Which is a pity, because I think a DP bus pirate would be way the heck more useful for this kind of work. I used a DP BP to debug the software for a I2C real time clock, but I'm sure it could be used for reverse engineering or nefarious purposes (much like a screwdriver is multi-purpose)
http://dangerousprototypes.com/docs/Bus_Pirate [dangerousprototypes.com]
The days of saying it would take the resources of a nation-state to discover or exploit vulnerabilities in a particular piece of hardware in an industrial control system or a healthcare environment are rapidly fading
Was anyone technical ever dumb enough to ever believe that? Anyone? Ever? Marketing P.R. BS doesn't count.
Re: (Score:2)
Exactly. Similar hardware that the Arduino uses has been available in different forms for decades. It just took a bit more effort by the user, but anybody skilled enough to reverse engineer existing hardware already has all the knowledge to build their own prototyping board.
Re: (Score:2)
Either you believe the "many eyes" theory or you don't. Or in this case, many hands. The reason Arduino is a game-changer is that it has really taken off. We could argue all day about why that is, but I suspect the answer is that it has a combination of features including C programming, open hardware, and pre-made shields that actually do stuff, while also being incredibly inexpensive. You could do all the same stuff with the STK500, but that was thirty bucks more than it will realistically cost you to get
Arduino deserves the popularity (Score:4)
I've been programming microcontrollers professionally for 30 years, and around 30 years ago I started making/using microcontrollers at home for hobby projects.
At that time I was using 68HC11 micros:
a) The 68HC11 is roughly equivalent to the arduino chip of today (ie - Atmega 168)
b) You could buy a 68HC11 dev board for $50, roughly equivalent to the Arduino
c) The programmer was $100
This is not a whole lot different from the Arduino of today, yet 68HC11 hobbyist development was rare.
The difference is in the software. At that time, you could get any number of chips made by several manufacturers. They almost gave away their development boards, because they wanted people to have familiarity with the units. They wanted people to recommend the micros to their employers, which might lead to a big sale.
The difference is in the software. You could get hardware for around $100, but the cheapest compiler you could get was $350 at the low end, topping out at $10,000. The assembler was free. You had to type assembly language into a text editor, use command-line tools to compile and download it, then debug it instruction-by-instruction.
The reason Arduino took off was not all because of the low price, it was because of the ease of use. Atmel gave out the IDE for free, and it was almost literally plug-and-play. You could get a "blink the LED" program up and running in under an hour, including installation of software. WinAVR (based on GCC) is a perfectly acceptable C compiler, also for free.
Atmel gave out the IDE for free, then someone noticed and came out with the Arduino. Bam! Instant market penetration.
That's why the Arduino became so popular: it's because Atmel took the trouble to make using/tinkering with the unit so easy. There was almost no learning curve associated with using the system - you could concentrate almost immediately on getting your work done.
Re: (Score:2)
Perhaps, but TFA is talking about hacking SCADA and other high value targets (stuff that 'nation - states' might be interested). Persons so interested are not going to be put off by a compiler or an IDE. Besides, BASIC STAMP and similar have been around for ages, have similar capabilities, dirt cheap boards and software.
Firstly, I don't see a huge attempt to reprogram every PLC or FPGA in existence. Secondly, much of said behavior is likely script kiddy level. It is now sexy to start talking about hackin
Re: (Score:2)
Firstly, I don't see a huge attempt to reprogram every PLC or FPGA in existence. Secondly, much of said behavior is likely script kiddy level. It is now sexy to start talking about hacking at hardware type things, even if not much comes out of it.
Well, the obvious reason (well, obvious to me, anyway; I'm an EE who does FPGA design for a living) there are very few attempts to reprogram every FPGA in existence is because the FPGAs are always installed on an application-specific circuit board, with application-specific I/O and peripherals. Modifying some product to do something else is a non-starter, simply because of the rework involved.
Re: (Score:2)
Also in the mix are the chips from Microchip [microchip.com] - there are no-cost C compilers for most of their line, and they've recently adopted Eclipse as their IDE platform.
I was hacking together projects using their CPUs before Arduino existed (IIRC). Before that, Z-80's. RAS/CAS, anyone?
Re: (Score:2)
I played with the 68HC11 back in the 90s, damn nice chip. Then a friend turned me on to Intel's 8052AH-BASIC and I don't think I ever burned another 68xx chip after that. Put a payphone into production using the 8052, not because it was cheaper (not by a very long shot) but because we were in a rush to market and an integer BASIC is so much faster to develop in than asm and converting the output to S-code.
Re: (Score:2)
a) The 68HC11 is roughly equivalent to the arduino chip of today (ie - Atmega 168)
b) You could buy a 68HC11 dev board for $50, roughly equivalent to the Arduino
c) The programmer was $100
This is not a whole lot different from the Arduino of today, yet 68HC11 hobbyist development was rare.
The difference is in the software.
$150 in 1980 dollars is $390 in 2010 dollars. But an Arduino is $20 (or less!) and a programmer is $0 (It's USB.) So even putting the software aside, you are just wrong. Even STK500 is only $50 and comes with a device, which is almost only an eighth of the price of a device and programmer for the Motorola solution, back in the day! And then there's the butterfly...
Re: (Score:2)
The reason Arduino took off was not all because of the low price, it was because of the ease of use. Atmel gave out the IDE for free, and it was almost literally plug-and-play. You could get a "blink the LED" program up and running in under an hour, including installation of software. WinAVR (based on GCC) is a perfectly acceptable C compiler, also for free.
I've programmed both the 68HC11 and the Atmel ATMega128, but without the Auduno cult. He's right about the 68HC11 - back in the 1980s, it was really hard to get a C compiler for the thing. At one point I used a commercial Forth interpreter.
For the ATMega128, which is a reasonably modern low-end microcontroller, the Atmel tool suite is free, and quite straightforward if you're a programmer and an electrical engineer. But if you give someone whose previous experience is limited to Javascript an ATMega dev
Re: (Score:1)
Atmel gave out the IDE for free, then someone noticed and came out with the Arduino. Bam! Instant market penetration.
Actually Wiring (http://wiring.org.co/) was first, then Arduino took the code to use it on cheaper chips. And Arduino keeps using code from Wiring, even today, without a proper attribution. It's true they stick to Wiring's license, but it would be nice if they let the world know it wasn't their idea.
Re: (Score:2)
The only really good thing about Arduino is the libraries.
Of course you need to agree to certain hardware standards to build a library around them. Which pin goes where etc. But other than that, it's like using a breadboard with predefined names for connectors...
Re: (Score:2)
The days of saying it would take the resources of a nation-state to discover or exploit vulnerabilities in a particular piece of hardware in an industrial control system or a healthcare environment are rapidly fading
Was anyone technical ever dumb enough to ever believe that? Anyone? Ever? Marketing P.R. BS doesn't count.
I guess you would need to be able to afford that piece of hardware/sensor setup. If you want to replicate the entire control system of chemical plant, nuclear reactor or CAT scanner, that's
Re: (Score:2)
Lattice sold their Brevia development board which has an instant on FPGA. It also has an I/O system that is remarkable. If there's a specification it can't do it's most likely obsolete. I've been able to use the free development software to hook it up to a 3.3v I/O source and record the digital signals. I bought it for 29.95. Unfortunately the 3.3v is hard wired and I've not checked if I can power the I/O with different voltages.
FWIW there is an atmega 168 FPGA core but I've not tried to make it work. It co
Re: (Score:2)
Lattice sold their Brevia development board which has an instant on FPGA. It also has an I/O system that is remarkable. If there's a specification it can't do it's most likely obsolete. I've been able to use the free development software to hook it up to a 3.3v I/O source and record the digital signals. I bought it for 29.95. Unfortunately the 3.3v is hard wired and I've not checked if I can power the I/O with different voltages.
FWIW there is an atmega 168 FPGA core but I've not tried to make it work. It comes with Lattice's micro8 core as a demo.
You do realize that Xilinx, Altera and Actel also offer pretty cheap development/starter kits with FPGAs, I/O headers and some peripherals? And they work with the free (as in beer) tools supplied by the vendors? Digilent also make a series of low-cost FPGA kits.
Re: (Score:2)
Yes and Lattice has 'faib' tools as well. The IDE is available at no cost though getting the Linux one to work is an interesting chore since they only support RHEL. I don't recall any of the other vendors offering an FPGA development kit for under 50. Digilent does not have favorable pricing unless you meet their rules as a student or other academic all but one is over 100. Is there an Altera board that matches the Brevia board available for under 100? Same for Actel but I'd not saddle anyone with Actel.
What? (Score:1)
No content in TFA (Score:1)
Re: (Score:1)
Re: (Score:2)
Yep. And sucker me, I'm giving /. page views by responding. But I read the "article" because I couldn't believe the summary described it accurately because, if it did, I was left scratching my head wondering why on earth this was posted.
Unfortunately (and quite remarkably, considering this is Slashdot, after all), the summary was quite accurate. It really is that worthless a story.
Re: (Score:2)
I think the thesis of the article is that because Arduino and other prototyping boards are so cheap, products based on these chips will become more widespread and popular. Once they are out there, reverse-engineering them will be easier because you can get the same hardware that was used to develop them.
The same is true for any FPGA or microcontroller, but since some of them had exorbitant costs for the development environment, the average man in the street will not really be able to hack their way through
Re: (Score:1)
Upon closer examination I conclude there is absolutely no thesis stated in the artic
Re: (Score:2)
There is no justification in the article for the thesis it states so boldly in its title, ergo, the article is completely worthless. Reads like an advertisement. Slow news day?
Wish I had mod points. I agree.
I Don't Get It (Score:2)
A few paragraphs about the latest Arduino developments and then a single paragraph bolted on the end talking about vulnerabilities in industrial control systems and healthcare environments. What's the link between the two?
Ganty
Re: (Score:2)
Payola.
I always use prototyping boards because... (Score:2)
...it makes it easier to get results here and now.
Sure, I can EAGLE it all, and print a result, 2 weeks later get a PCB and THEN fault find...suuuuure....but it sucks donkeysballs.
I'm an old guy by kids standards, and I love to get my results here and now, so I use prototyping boards, I've bought a bunch of these from eBay suppliers, and I'm as happy as a kid on christmas or a kid in a candy store about these, it's cheap, it's just solder and go...and I've got instant results here and now!
Now that...to me..
Re: (Score:2)
What model router do you use?
thanks (Score:1)
Article Says Nothing (Score:2)
P.S. Of course there have been examples. The malicious mouse which contained a mass storage device and a HID emulator to run malware from