Embedded Systems Weekly – Issue 63
Issue 63 – 29 July 2016
Hardware
Share on Twitter ∙ Share on Facebook
Why better performance is back in vogue.Share on Twitter ∙ Share on Facebook
The Sonoff is an ESP8266 based smart switch by ITEAD which comes with a custom firmware that communicates with the manufacturer cloud to provide “smart” capabilities like remote switching or scheduling. The cool thing is that it has a line of pins that expose the VCC, GND, RX and TX pins of the ESP8266 and a buttons attached to GPIO0 so very soon it got hacked and there are a number of firmwares already available.Share on Twitter ∙ Share on Facebook
When hardware malfunctions in a single, specific way, software running on it usually fails in several different, seemingly random ways, so it sucks to debug it. Homing in on the cause is easier if you can guess which parts of the system are more likely to be buggy.
When hardware fails, nobody wants a programmer treating it as a lawyer or a mathematician (the hardware broke the contract! only working hardware lets us reason about software!) Instead, the key to success is approaching it as a pragmatic entomologist knowing where bugs live.Share on Twitter ∙ Share on Facebook
Software
Over the course of the past few months Elvis Collado have been traveling around educating people on exploiting embedded devices. His slides alone aren’t able to provide enough information, so he wanted to write everything out for people to digest online.Share on Twitter ∙ Share on Facebook
Dynamic allocation will always undermine determinism and performance of a system. Any call to malloc() requires at worst traversing a tree to find memory that fits. Calling free() can be equally expensive. And when resources are tight, dynamic allocation is a tax on your available memory. On top of this, paths where malloc() has returned NULL are not well tested. As a best case, this is where errors, instability and unreliable behavior creeps in. As a worst case, this becomes an exploitable flaw for attackers. But it gets scarier.Share on Twitter ∙ Share on Facebook
MSP430F5xx and MSP430F6xx devices have the ability to locate their bootstrap loader (BSL) in a protected location of flash memory. Although all devices ship with a standard TI BSL, this can be erased, and a custom made BSL can be programmed in its place. This allows for the creation of using custom communication interfaces, startup sequences, and other possibilities. It is the goal of this document to describe the basics of the BSL memory, as well as describe the TI standard BSL software so it may be reused in custom projects.Share on Twitter ∙ Share on Facebook
This repo contains the slides for a training course originally developed in 2012. It has been delivered to many students since its creation. It’s sold out at the Black Hat USA conference several years in a row. The content has gone through many iterations based on feedback from those classes. The original training focused mainly on browser vulnerability discovery and exploitation. This latest version still focuses on that but also covers more topics such as custom memory allocators, hardening concepts, and exploitation at a high level.Share on Twitter ∙ Share on Facebook
Misc
Share on Twitter ∙ Share on Facebook
Today, Asian countries are growing and it is clearly proved with success of Singapore. Today it is considered as one the digitized nation in Asia where one can find various opportunities and becomes technology freak. Demands of digital media is been growing and Singapore have made it possible to get a platform where one and get complete benefits of it. It has introduced and platform where international companies can come up with their concept and explore it. There are various factors that have made it possible for Singapore to achieve it and one of them is infrastructure, technology and most importantly society that can accept it.Share on Twitter ∙ Share on Facebook
Photo by Ian Southwell