Hacker News new | past | comments | ask | show | jobs | submit login
Android Anti-forensics: Modifying CyanogenMod (arxiv.org)
67 points by aburan28 on June 21, 2014 | hide | past | favorite | 37 comments



This reminds me of a feature that was on some Japanese flip phones.

You could set some contacts to be "secret", and any messages from them would not appear in the default app. The only notification you would get would be a small pixel embedded in the cell tower signal image in the corner of your screen. You would then go into some deeply hidden corner of your settings to get the "real" messaging app.

If you know about it, its useless, but (like this lying phone) , it can be very easy to overlook in a casual analysis of the phone (by your wife in one case, or by the police in the other). We should never discount how effective really simple things like these can end up being.


Japan's Philanderers Stay Faithful to Their 'Infidelity Phones': Cads Attracted to How Outdated Device Hides Calls, Texts; Juggling Three Girlfriends: http://online.wsj.com/news/articles/SB1000142405297020475540...


That reminded me of the secret SMS app I made once for Symbian S60: http://tiliman.wordpress.com/rei-secretsms/

It even had a duress mode, in which you could type in a secondary pin to open the app under duress, but the app, detecting the secondary pin, would wipe everything inside and start afresh.


I would install such a firmware in a heartbeat if I had confidence that there were a team of freedom-fighting hackers staying one step ahead of the authorities.

I don't keep anything incriminating or illegal on my phone (hell, I don't do anything illegal) but I'm terrified of the day where I'm in the airport, embarking on a £4k holiday (not insignificant in my salary bracket) and am asked to hand my phone and laptop/tablet over to confirm I'm not a terrorist. I'll be faced with acquiescing and compromising my principles or disappointing my girlfriend (who I almost always travel with) and having both of us taking a financial hit (and probably being added to a "list" or having my threat value increased).

It's not an unheard of situation in the UK, and is most often not intelligence-driven (more likely you are travelling through an airport where they are trialling some new counter-terrorist technology we've paid a small fortune to install).

I think a device with limited state (ROM-only?) which can give me reasonable assurances that no-one could tamper with it or install any government sponsored malware may be the solution. Although the utility of such a device is questionable, and it certainly wouldn't be fun to use.


I've mentioned this in NSA stories before, the US government, the UK, are hardly the only concerns. What happens at other borders? Your devices contain sensitive information -- logins, source code, server lists, archived email, customer data; perhaps not on the machine itself but accessible through it.

Corrupt countries are one problem, but so are first world countries. There are a number of stories about American execs being spied on by first world countries. Failing to protect your physical data when you leave the country (assuming your devices have work information on them) is negligent.


Absolutely. However I'm less well versed in international privacy laws than those of the UK. With RIPA, the mere act of protecting your data while transiting through the UK can be seen as incriminatory, with failure to decrypt data a serious criminal offence which can result in prison time.

I think that steganography and plausible deniability are vital. However employing such techniques can make life even more difficult if caught ("What are you going to such an effort to hide?").


There is a good solution: don't bring your data. It is a problem if the place you are going doesn't have broadband, but then again there may be little work that can be done in such a place.


I don't know if I'd say that's a good solution. If travelling for pleasure, that would mean wiping my personal data from my device - contacts, messages, emails. It would also mean logging out of all network services. Or just leaving that data at home. Being able to stay in touch while away, and retain access to my online accounts is really useful.

If travelling for business (even to a country with poor broadband access) I may still need access to vital business data. I can't always leave this at home.

Sure, I could VPN home but if I am to travel with no private data at all then that would preclude the possibility of using certificate based encryption and relying on less secure (and memorisable) passwords.

Travelling without data is very difficult today, unless you plan on being completely disconnected.


I would add that I'd be worried that if we weren't one step ahead, the discover of such digital forensics counter-measures would be used as evidence of wrong-doing. RIPA (Regulation of Investigatory Powers Act, 2000) has set a precedent where the unwillingness to acquiesce (for example, divulge encryption keys) is a crime in and of itself, effectively outlawing privacy.


>>hell, I don't do anything illegal

How exhaustive is your knowledge of the US tax code?


I don't live in the US, but it wouldn't surprise me if my activities have, at some point, contradicted US tax laws. I understand it's even more complex and ambiguous than that of the UK.


So the police have a tool. He writes a tool-fooler. No doubt they will return with a tool-fooler tool. Then he fools the tool-fooler tool. When will it ever halt?

Time for a drink.


It never ends. Counter measures, counter-counter measures etc.

Most of the time, though, the police will use another method, as the law has more than anti-forensics in their armoury.


In a world in which everything is monitored all the time, like the police State the government agencies dream about, lying is a necessity.

We need more of this. Our messenger app sending false data along with the valid one, but is automatically discarded by the app. This way, anyone intercepting the data is not certain of what it means.

Bandwidth is cheap.Just encrypting something does not make anything sure.

It is one of the earliest tricks on existence. You know someone spies on you, you act like you don't know anything but supply false information to your spies.


Exactly, this strategy has been known for a long time: http://en.wikipedia.org/wiki/Steganography


This makes me wonder just how open everyday Android phones are to forensic examination. I'm not sure how you would get much out of the phone without either manually installing an app with a lot of permissions or doing some kind of device-specific firmware hack. And the manufacturers often seem to be making this kind of hacking harder and harder, going by what the Android rooting community has experienced.


It's well-known that phones report our locations at all times, I'd like to see a phone that falsifies that data as well.


The only way I've figured out how to do that involves a complete mobile network reengineering - anonymous bearer tokens (so not bitcoin) to pay for network access tower-by-tower, and then something like TOR hidden services for the presence registry.

You could approximate it with a rotating prepaid data plan (can you actually obtain these without putting down an ID?) and actual TOR with heavily compensated VOIP (or forgo voice). You'd need to change the IMEI and any other identifying information of the network access device every time you refreshed the plan as well, or you could start a club of periodically exchanging them with likeminded people.


Kind of hard to fool triangulation. Software doesn't beat the laws of physics.


You can fool the towers trying to triangulate you by adding a small random delay to the ping responses. Of course, this would require a custom modem firmware and/or hardware level access to the phone. The authority trying to triangulate you would have an ability to track your approximate location, with in several square miles, but it would make it much more difficult to pinpoint your exact location.


you would also need highly directional antenna to make sure only one base station can hear your signal


Unfortunately, fuzzing your location enough to really make it appreciably harder for LEO to find you would also interfere with your ability to reliably make calls.


Trilateration, actually. The towers aren't measuring your angle, but your distance.


Being pedantic, it's neither. Both signal strength (approximating linear distance) and angle (with many, directional antennas per tower location) are used to calculate approximate position.

Triangulation, however, is an appropriate term with colloquial understanding.


Towers do measure angle. See: http://en.wikipedia.org/wiki/Sector_antenna


If the operating system provides an API for the actual/measured location, why can't that API just be changed to provide a fake location instead? It could be a user setting: location services - use fake location? yes/no


triangulation is performed by analysing response times from cell towers - the FBI doesn't just call yourphone.getLocation()


You're right, that's different, but it can also be foiled, at least in theory: you just have your cellphone add some time delay before responding. The delay could be different for each cell tower.

I realize that's a big ask (and is probably something the operating system can't do), but it doesn't violate any laws of physics.


Generally, each base station within range receives all messages from your phone. Even if you were to address different messages (with different response delays) to each station, they would all still "see" the other messages. They then record that message (or an identifier - akin to a TCP sequence number) and compare the (synchronised) time at which this message was received. This is used to calculate the difference (thus delay) of each tower's reception of that message.

I don't think what you're suggesting would actually work given the way mobile network infrastructure works (where multiple cell base stations may see each message at the same time).


I'd be wary of how this would affect call quality - if you were adding delays to sending call data to the tower you might end up with a laggy/glitchy phone call.


How often are you really on calls, though? Assuming this would be feasible, you could just have it turned off whenever you are not on calls or whenever you don't need your phone to tell you your location.

I'm not really sure it's feasible, though. I don't know the details of how phones interact with towers, but I would think that what's happening is that your phone broadcasts a radio signal, and that same exact signal is picked up by more than one tower. If you want to triangulate the location of the radio signal, you don't need to know how long it took to get to the tower, you just need to know how much longer it took to get to one tower than the other, and the locations of the two towers.

Additionally, I think you can make a similar calculation based on signal strength if you can account for anisotropies in the attenuation of the signal. This seems less reliable to me, but if this is how it is done you could potentially throw off your location by a little bit by putting your phone in a partially shielded case that increases the attenuation on one side relative to another.


Broadcasts not direct transmissions. Ping times wouldn't do anything.


But hardware definitely could. With a manually aimed antenna and proper tools exposed to the user, a phone could be made to communicate with only one cell tower at a time. This would make triangulation impossible.


You could look at which tower you connect to with which strength at which time. This would not give as exact results as triangulation for sure, but you could probably still infer a rough trajectory.


Wait for some prosecutor to determine that just having this capability on your phone makes you guilty.


This is just blogspam.

For actual details, see the arXiv paper "Android Anti-forensics: Modifying CyanogenMod": http://arxiv.org/abs/1401.6444





Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: