The sky is falling! The sky is falling! A lot of Chicken Littles are running around warning about the endof the world, brought about by the insecurity of mobile devices.There’s a kernel of truth there, and I myself have bemoaned the state of mobile security . But there’s also a good deal of exaggeration, born of (oftenvendor-fanned) fear, uncertainty and doubt. So, what’s a user todo? Let’s explore that a bit. Broadly speaking, you have three choices: Avoid mobile devicesaltogether, carefully select the apps you install and use, or diveright in and hope for the best.
The one sure bet is to avoid smartphones and other modern mobile devices, but that doesn’t sound like a lotof fun to me. There are a lot of really useful and ingenious appsout there, so you’d be robbing yourself of some greatopportunities. Nonetheless, using a dumb phone may well be areasonable course of action for some people. If all you seek fromyour mobile phone is the ability to send and receive voice calls,and perhaps an occasional text message, then you should find noshortage of free, carrier-subsidized dumb phones.
You would indeedhave fewer security worries, and more money in your pocket. I just don’t think that option is going to appeal to a lot ofpeople. At the other extreme, diving in without regard for safetyseems reckless. If you are hell-bent on maximizing the convenienceof your smartphone, you’ll be tempted by apps that help you manageyour money, make payments, receive payments, transfer funds — thelist just keeps going. But what sort of person does that withoutthinking about the danger of exposing sensitive information on adevice that is easy to steal or lose? Personally, I’ve taken a middle road. Carbon Steel Seamless Pipe
I do have a smartphone, butI’m careful about the apps I install. What does it mean to becareful? Since I’m in the security field myself, it means that Ivet the apps myself. But a lot of what I do can be done by justabout anyone who knows a little bit about applications. Here are acouple of things you can try. Static analysis. Duplex Stainless Steel Pipe
Maybe you didn’t realize it, but you can pokearound an app’s sandbox and take a look at what’s in there foryourself. All you need are your mobile device, a USB cable and freesoftware such as iExplorer that lets you look at the files in each app on your device. (Note:These examples are primarily for Apple ‘s iOS, but similar tools and methods can be used on Android as well.) Connect your device to your computer (Mac or Windows) and useiExplorer to peek into its files. In each app’s ~/Documents folder,you’ll find files used by the app. Some common file extensions are.plist, .db, .xml and .txt. China Alloy Steel Seamless Pipe
The first are “properties files,” whichare in an XML format and can be viewed using any text editor. Next,db files are database files — likely SQLite3 files that can beviewed using sqlite3 on the command line. The other files aremostly text files as well. Drag them onto your main computer’sdesktop (or folder) and look at them one at a time. Look, forexample, in the plist files for usernames, passwords and otherapplication credentials.
For SQLite files, try opening a commandshell and typing “sqlite3 [filename.db]”. Next, at the sqliteprompt, type “.tables” and you’ll see whatever tables are presentin the database. You can view those tables by typing “.dump[table_name]”. Again, look for usernames, passwords, etc.
Look also in each app’s ~/Library folder. In there, you’ll find aCaches folder and a bunch of other stuff. Poke through there andlook at the files. Again, look for properties files and databasefiles, as well as image files. Depending on when you last ran theapp, you may find some .jpg or .png files containing screenshots ofyour last session.
View them all. What you’re looking for are some fundamental mistakes thatdevelopers commonly make. Storing usernames and passwords inproperties files, database files, etc., is sloppy programming.(There are keychains that do a far better — though not perfect –job at securing that sort of data.) If the app you’re considering using makes such simple mistakes, youmight want to avoid it. You could contact the vendor and ask it tofix it. You could also write a review for the app store you use andlet other people know about the problems.
I have done both, becauseI’m not willing to let such easily avoided mistakes go byunchallenged. If enough people do this sort of thing, I’m convincedthat app security will improve. Dynamic analysis. This one is a bit trickier, though still nottough to do. Use a network proxy tool such as Burp Suite or OWASP’s Zap on your main computer (Windows, Mac or Linux ).
Turn on the proxy on your active Ethernet connection. Next, configure your mobile device to point its network proxy tothe IP number of the computer running the proxy testing tool. Nowyou’ll be intercepting all of your mobile device’s network traffic,and you can look inside it. Some common mistakes to look for here are sending usernames,passwords, session tokens or hardware identifiers through a networkwithout encrypting them.
Believe it or not, this is not uncommon.Another mistake that many apps make is to trust self-signed SSLcertificates (which both Burp Suite and Zap can automaticallygenerate). By not properly verifying a server’s SSL certificate,mobile apps open their users up to man-in-the-middle attacks. Thistoo is sadly not uncommon in today’s apps. If you find any of these things, they should give you pause. Ofcourse, not finding any of these mistakes is no guarantee ofsafety, but that doesn’t mean it’s not worth exploring the apps youwant to use.
Oh, and if any of the apps you want to use do make any of thesecommon mistakes, think about pointing the developers to OWASP’siGoat (for iOS developers) or OWASP’s GoatDroid (for Androiddevelopers). Both are free learning tools to help expose developersto common problems and their solutions. With more than 20 years in the information security field, Kennethvan Wyk has worked at Carnegie Mellon University’s CERT/CC, theU.S. Deptartment of Defense, Para-Protect and others.
He haspublished two books on information security and is working on athird. He is the president and principal consultant at KRvWAssociates LLC in Alexandria, Va. Read more about security in Computerworld’s Security Topic Center.