A group of University researchers has created a new method for detecting malicious apps running on an Android devices called MassVet. MassVet doesn't use the old method of signatures scanning, instead it compares legitimate Android frameworks to establish those that are malicious.
The architecture behind MassVet can be seen below:
The authors argue that MassVet is able to identify a malicious app in less than 10 seconds and with a low probability of false positives:
" Unlike existing detection mechanisms, which often utilize heavyweight program analysis techniques, our approach simply compares a submitted app with all those already on a market, focusing on the difference between those sharing a similar UI structure (indicating a possible repackaging relation), and the commonality among those seemingly unrelated. Once public libraries and other legitimate code reuse are removed, such diff/common program components become highly suspicious. This analysis is made scalable by its simple, static nature and the feature projection techniques that enable a cloud-based, fast search for view/code differences and similarities." wrote the researchers in the paper they published.
The researchers argue that this new method can help do find a Zero-day malware, but criticized Google for only ban a player that releases malicious payload, and not blocking a malicious payload, what leads to other people reusing the malicious payload:
"Another interesting finding is that we saw that some of these developers uploaded the same or similar malicious apps again after they were removed. Actually, among the 2125 reappeared apps, 604 confirmed malware (28.4 percent) showed up in the Play Store unchanged, with the same MD5 and same names. Further, those developers also published 829 apps with the same malicious code (as that of the malware) but under different names. The fact that the apps with known malicious payloads still got slipped in suggests that Google might not pay adequate attention to even known malware."
The MassVet implements a comparison algorithm, but on top of that uses a difference and similarities comparison mechanism, which allows it to be more efficient and "smart."
MassVet analyzed around 1.2 million apps deployed in 33 Android apps stores discovering 127.429 malicious apps, 30.552 are hosted in Google Play.
The disconcerting aspect of the story is that many of these apps weren't recognized by common antivirus solutions available in the market.
"We observed that most scanners react slowly to the emergence of new malware. For all 91,648 malicious apps confirmed by VirusTotal, only 4.1% were alarmed by at least 25 out of 54 scanners it hosts. The results are present in Figure 7. This finding also demonstrates the capability of MassVet to capture new malicious content missed by most commercial scanners. "
Projects like this one, are important and help the security community in discovering quickly the malicious apps that are deployed in app stores.