RomaDroid: A Robust and Efficient Technique for Detecting Android App Clones Using a Tree Structure and Components of Each App's Manifest File

There are various types of Android apps, such as entertainment apps, health and fitness apps, travel apps, educational apps, business apps, and so on. Android apps can contain business logic, maintain sensitive personal information, and act as a bridge between IoT devices and cloud servers. Since il...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE access 2019, Vol.7, p.72182-72196
Hauptverfasser: Kim, Byoungchul, Lim, Kyeonghwan, Cho, Seong-Je, Park, Minkyu
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 72196
container_issue
container_start_page 72182
container_title IEEE access
container_volume 7
creator Kim, Byoungchul
Lim, Kyeonghwan
Cho, Seong-Je
Park, Minkyu
description There are various types of Android apps, such as entertainment apps, health and fitness apps, travel apps, educational apps, business apps, and so on. Android apps can contain business logic, maintain sensitive personal information, and act as a bridge between IoT devices and cloud servers. Since illegal users frequently make a copy of a legitimate Android app and redistribute the plagiarized app for commercial or malicious purposes, many studies have been conducted to detect repackaged/cloned apps and make the Android ecosystem safer. A malicious attacker might apply code obfuscation to avoid app clone detection. Therefore, it is necessary to consider the effects of code obfuscation when detecting cloned apps. In this paper, we design and implement a tool called RomaDroid , which can detect efficiently cloned apps based on features inherent in each app's AndroidManifest.xml file. The manifest file is XML structure defined by tags or attributes and its XML document can be modeled as an ordered labeled tree. The RomaDroid creates a string from the hierarchical tree structure of tags as well as the class name of the components related to intent-filter tags in the manifest file, which are robust to code obfuscation. That is, we create a string from each manifest file of two apps to be compared and measure the similarity between the created two strings with the longest common subsequence (LCS) algorithm. If the measured similarity exceeds a certain threshold, the two apps are determined to be a clone pair (or similar app pair). To validate the RomaDroid, we perform various experiments with both non-obfuscated apps and their obfuscated versions generated by three obfuscation tools. The experimental results show that the RomaDroid detects accurately cloned apps even in the cases code obfuscation has been applied.
doi_str_mv 10.1109/ACCESS.2019.2920314
format Article
fullrecord <record><control><sourceid>proquest_doaj_</sourceid><recordid>TN_cdi_proquest_journals_2455642322</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>8727540</ieee_id><doaj_id>oai_doaj_org_article_0f935cfc9167458592053413b0631739</doaj_id><sourcerecordid>2455642322</sourcerecordid><originalsourceid>FETCH-LOGICAL-c408t-c4d281ea7beec09866edf5b0cc834edbd0eac0e972a4ba415feaba238973a1ed3</originalsourceid><addsrcrecordid>eNpNkc1u3CAUha2qlRqleYJskLroaqb82qY7y5m0kVJVykzWCMMlYTRjXMCLvkSfuTiOorIAdDnfueieqromeEsIll-7vt_t91uKidxSSTEj_F11QUktN0yw-v1_94_VVUpHXFZbSqK5qP4-hLO-icHbb6hDD2GYU0Z6tGjnnDcexowOYJ5H_3sG5EJEN5DBZD8-oW60C4e6aUL9KYyQ0GNaHjQ6RAC0z3E2eY7w4teH81Q0Y04oOLTT5nkBvyT0U4_eQel660_wqfrg9CnB1et5WT3e7g79j839r-93fXe_MRy3ueyWtgR0MwAYLNu6BuvEgI1pGQc7WAzaYJAN1XzQnAgHetCUtbJhmoBll9Xd6muDPqop-rOOf1TQXr0UQnxSOmZvTqCwk0wYZySpGy5aUSYsGCdswDUjDZPF6_PqNcVQppSyOoY5juX7inIhak4ZpUXFVpWJIaUI7q0rwWrJUa05qiVH9Zpjoa5XygPAG9E2tBEcs3-QNZkC</addsrcrecordid><sourcetype>Open Website</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2455642322</pqid></control><display><type>article</type><title>RomaDroid: A Robust and Efficient Technique for Detecting Android App Clones Using a Tree Structure and Components of Each App's Manifest File</title><source>IEEE Open Access Journals</source><source>DOAJ Directory of Open Access Journals</source><source>Elektronische Zeitschriftenbibliothek - Frei zugängliche E-Journals</source><creator>Kim, Byoungchul ; Lim, Kyeonghwan ; Cho, Seong-Je ; Park, Minkyu</creator><creatorcontrib>Kim, Byoungchul ; Lim, Kyeonghwan ; Cho, Seong-Je ; Park, Minkyu</creatorcontrib><description>There are various types of Android apps, such as entertainment apps, health and fitness apps, travel apps, educational apps, business apps, and so on. Android apps can contain business logic, maintain sensitive personal information, and act as a bridge between IoT devices and cloud servers. Since illegal users frequently make a copy of a legitimate Android app and redistribute the plagiarized app for commercial or malicious purposes, many studies have been conducted to detect repackaged/cloned apps and make the Android ecosystem safer. A malicious attacker might apply code obfuscation to avoid app clone detection. Therefore, it is necessary to consider the effects of code obfuscation when detecting cloned apps. In this paper, we design and implement a tool called RomaDroid , which can detect efficiently cloned apps based on features inherent in each app's AndroidManifest.xml file. The manifest file is XML structure defined by tags or attributes and its XML document can be modeled as an ordered labeled tree. The RomaDroid creates a string from the hierarchical tree structure of tags as well as the class name of the components related to intent-filter tags in the manifest file, which are robust to code obfuscation. That is, we create a string from each manifest file of two apps to be compared and measure the similarity between the created two strings with the longest common subsequence (LCS) algorithm. If the measured similarity exceeds a certain threshold, the two apps are determined to be a clone pair (or similar app pair). To validate the RomaDroid, we perform various experiments with both non-obfuscated apps and their obfuscated versions generated by three obfuscation tools. The experimental results show that the RomaDroid detects accurately cloned apps even in the cases code obfuscation has been applied.</description><identifier>ISSN: 2169-3536</identifier><identifier>EISSN: 2169-3536</identifier><identifier>DOI: 10.1109/ACCESS.2019.2920314</identifier><identifier>CODEN: IAECCG</identifier><language>eng</language><publisher>Piscataway: IEEE</publisher><subject>Algorithms ; Android manifest file ; Android platform ; Applications programs ; Bridge maintenance ; Business ; cloned app detection ; Cloning ; Cloud computing ; code obfuscation ; component with intent filter ; Detectors ; longest common subsequence (LCS) ; Robustness ; Similarity ; Smart phones ; Software ; Strings ; Structural hierarchy ; Tags ; tree structure of XML file</subject><ispartof>IEEE access, 2019, Vol.7, p.72182-72196</ispartof><rights>Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2019</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c408t-c4d281ea7beec09866edf5b0cc834edbd0eac0e972a4ba415feaba238973a1ed3</citedby><cites>FETCH-LOGICAL-c408t-c4d281ea7beec09866edf5b0cc834edbd0eac0e972a4ba415feaba238973a1ed3</cites><orcidid>0000-0001-9917-0429</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/8727540$$EHTML$$P50$$Gieee$$Hfree_for_read</linktohtml><link.rule.ids>314,777,781,861,2096,4010,27614,27904,27905,27906,54914</link.rule.ids></links><search><creatorcontrib>Kim, Byoungchul</creatorcontrib><creatorcontrib>Lim, Kyeonghwan</creatorcontrib><creatorcontrib>Cho, Seong-Je</creatorcontrib><creatorcontrib>Park, Minkyu</creatorcontrib><title>RomaDroid: A Robust and Efficient Technique for Detecting Android App Clones Using a Tree Structure and Components of Each App's Manifest File</title><title>IEEE access</title><addtitle>Access</addtitle><description>There are various types of Android apps, such as entertainment apps, health and fitness apps, travel apps, educational apps, business apps, and so on. Android apps can contain business logic, maintain sensitive personal information, and act as a bridge between IoT devices and cloud servers. Since illegal users frequently make a copy of a legitimate Android app and redistribute the plagiarized app for commercial or malicious purposes, many studies have been conducted to detect repackaged/cloned apps and make the Android ecosystem safer. A malicious attacker might apply code obfuscation to avoid app clone detection. Therefore, it is necessary to consider the effects of code obfuscation when detecting cloned apps. In this paper, we design and implement a tool called RomaDroid , which can detect efficiently cloned apps based on features inherent in each app's AndroidManifest.xml file. The manifest file is XML structure defined by tags or attributes and its XML document can be modeled as an ordered labeled tree. The RomaDroid creates a string from the hierarchical tree structure of tags as well as the class name of the components related to intent-filter tags in the manifest file, which are robust to code obfuscation. That is, we create a string from each manifest file of two apps to be compared and measure the similarity between the created two strings with the longest common subsequence (LCS) algorithm. If the measured similarity exceeds a certain threshold, the two apps are determined to be a clone pair (or similar app pair). To validate the RomaDroid, we perform various experiments with both non-obfuscated apps and their obfuscated versions generated by three obfuscation tools. The experimental results show that the RomaDroid detects accurately cloned apps even in the cases code obfuscation has been applied.</description><subject>Algorithms</subject><subject>Android manifest file</subject><subject>Android platform</subject><subject>Applications programs</subject><subject>Bridge maintenance</subject><subject>Business</subject><subject>cloned app detection</subject><subject>Cloning</subject><subject>Cloud computing</subject><subject>code obfuscation</subject><subject>component with intent filter</subject><subject>Detectors</subject><subject>longest common subsequence (LCS)</subject><subject>Robustness</subject><subject>Similarity</subject><subject>Smart phones</subject><subject>Software</subject><subject>Strings</subject><subject>Structural hierarchy</subject><subject>Tags</subject><subject>tree structure of XML file</subject><issn>2169-3536</issn><issn>2169-3536</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2019</creationdate><recordtype>article</recordtype><sourceid>ESBDL</sourceid><sourceid>RIE</sourceid><sourceid>DOA</sourceid><recordid>eNpNkc1u3CAUha2qlRqleYJskLroaqb82qY7y5m0kVJVykzWCMMlYTRjXMCLvkSfuTiOorIAdDnfueieqromeEsIll-7vt_t91uKidxSSTEj_F11QUktN0yw-v1_94_VVUpHXFZbSqK5qP4-hLO-icHbb6hDD2GYU0Z6tGjnnDcexowOYJ5H_3sG5EJEN5DBZD8-oW60C4e6aUL9KYyQ0GNaHjQ6RAC0z3E2eY7w4teH81Q0Y04oOLTT5nkBvyT0U4_eQel660_wqfrg9CnB1et5WT3e7g79j839r-93fXe_MRy3ueyWtgR0MwAYLNu6BuvEgI1pGQc7WAzaYJAN1XzQnAgHetCUtbJhmoBll9Xd6muDPqop-rOOf1TQXr0UQnxSOmZvTqCwk0wYZySpGy5aUSYsGCdswDUjDZPF6_PqNcVQppSyOoY5juX7inIhak4ZpUXFVpWJIaUI7q0rwWrJUa05qiVH9Zpjoa5XygPAG9E2tBEcs3-QNZkC</recordid><startdate>2019</startdate><enddate>2019</enddate><creator>Kim, Byoungchul</creator><creator>Lim, Kyeonghwan</creator><creator>Cho, Seong-Je</creator><creator>Park, Minkyu</creator><general>IEEE</general><general>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</general><scope>97E</scope><scope>ESBDL</scope><scope>RIA</scope><scope>RIE</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>7SP</scope><scope>7SR</scope><scope>8BQ</scope><scope>8FD</scope><scope>JG9</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><scope>DOA</scope><orcidid>https://orcid.org/0000-0001-9917-0429</orcidid></search><sort><creationdate>2019</creationdate><title>RomaDroid: A Robust and Efficient Technique for Detecting Android App Clones Using a Tree Structure and Components of Each App's Manifest File</title><author>Kim, Byoungchul ; Lim, Kyeonghwan ; Cho, Seong-Je ; Park, Minkyu</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c408t-c4d281ea7beec09866edf5b0cc834edbd0eac0e972a4ba415feaba238973a1ed3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2019</creationdate><topic>Algorithms</topic><topic>Android manifest file</topic><topic>Android platform</topic><topic>Applications programs</topic><topic>Bridge maintenance</topic><topic>Business</topic><topic>cloned app detection</topic><topic>Cloning</topic><topic>Cloud computing</topic><topic>code obfuscation</topic><topic>component with intent filter</topic><topic>Detectors</topic><topic>longest common subsequence (LCS)</topic><topic>Robustness</topic><topic>Similarity</topic><topic>Smart phones</topic><topic>Software</topic><topic>Strings</topic><topic>Structural hierarchy</topic><topic>Tags</topic><topic>tree structure of XML file</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Kim, Byoungchul</creatorcontrib><creatorcontrib>Lim, Kyeonghwan</creatorcontrib><creatorcontrib>Cho, Seong-Je</creatorcontrib><creatorcontrib>Park, Minkyu</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE Open Access Journals</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Engineered Materials Abstracts</collection><collection>METADEX</collection><collection>Technology Research Database</collection><collection>Materials Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><collection>DOAJ Directory of Open Access Journals</collection><jtitle>IEEE access</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Kim, Byoungchul</au><au>Lim, Kyeonghwan</au><au>Cho, Seong-Je</au><au>Park, Minkyu</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>RomaDroid: A Robust and Efficient Technique for Detecting Android App Clones Using a Tree Structure and Components of Each App's Manifest File</atitle><jtitle>IEEE access</jtitle><stitle>Access</stitle><date>2019</date><risdate>2019</risdate><volume>7</volume><spage>72182</spage><epage>72196</epage><pages>72182-72196</pages><issn>2169-3536</issn><eissn>2169-3536</eissn><coden>IAECCG</coden><abstract>There are various types of Android apps, such as entertainment apps, health and fitness apps, travel apps, educational apps, business apps, and so on. Android apps can contain business logic, maintain sensitive personal information, and act as a bridge between IoT devices and cloud servers. Since illegal users frequently make a copy of a legitimate Android app and redistribute the plagiarized app for commercial or malicious purposes, many studies have been conducted to detect repackaged/cloned apps and make the Android ecosystem safer. A malicious attacker might apply code obfuscation to avoid app clone detection. Therefore, it is necessary to consider the effects of code obfuscation when detecting cloned apps. In this paper, we design and implement a tool called RomaDroid , which can detect efficiently cloned apps based on features inherent in each app's AndroidManifest.xml file. The manifest file is XML structure defined by tags or attributes and its XML document can be modeled as an ordered labeled tree. The RomaDroid creates a string from the hierarchical tree structure of tags as well as the class name of the components related to intent-filter tags in the manifest file, which are robust to code obfuscation. That is, we create a string from each manifest file of two apps to be compared and measure the similarity between the created two strings with the longest common subsequence (LCS) algorithm. If the measured similarity exceeds a certain threshold, the two apps are determined to be a clone pair (or similar app pair). To validate the RomaDroid, we perform various experiments with both non-obfuscated apps and their obfuscated versions generated by three obfuscation tools. The experimental results show that the RomaDroid detects accurately cloned apps even in the cases code obfuscation has been applied.</abstract><cop>Piscataway</cop><pub>IEEE</pub><doi>10.1109/ACCESS.2019.2920314</doi><tpages>15</tpages><orcidid>https://orcid.org/0000-0001-9917-0429</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 2169-3536
ispartof IEEE access, 2019, Vol.7, p.72182-72196
issn 2169-3536
2169-3536
language eng
recordid cdi_proquest_journals_2455642322
source IEEE Open Access Journals; DOAJ Directory of Open Access Journals; Elektronische Zeitschriftenbibliothek - Frei zugängliche E-Journals
subjects Algorithms
Android manifest file
Android platform
Applications programs
Bridge maintenance
Business
cloned app detection
Cloning
Cloud computing
code obfuscation
component with intent filter
Detectors
longest common subsequence (LCS)
Robustness
Similarity
Smart phones
Software
Strings
Structural hierarchy
Tags
tree structure of XML file
title RomaDroid: A Robust and Efficient Technique for Detecting Android App Clones Using a Tree Structure and Components of Each App's Manifest File
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-19T13%3A03%3A58IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_doaj_&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=RomaDroid:%20A%20Robust%20and%20Efficient%20Technique%20for%20Detecting%20Android%20App%20Clones%20Using%20a%20Tree%20Structure%20and%20Components%20of%20Each%20App's%20Manifest%20File&rft.jtitle=IEEE%20access&rft.au=Kim,%20Byoungchul&rft.date=2019&rft.volume=7&rft.spage=72182&rft.epage=72196&rft.pages=72182-72196&rft.issn=2169-3536&rft.eissn=2169-3536&rft.coden=IAECCG&rft_id=info:doi/10.1109/ACCESS.2019.2920314&rft_dat=%3Cproquest_doaj_%3E2455642322%3C/proquest_doaj_%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2455642322&rft_id=info:pmid/&rft_ieee_id=8727540&rft_doaj_id=oai_doaj_org_article_0f935cfc9167458592053413b0631739&rfr_iscdi=true