<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>android Archives -</title>
	<atom:link href="https://barriersec.com/tag/android/feed/" rel="self" type="application/rss+xml" />
	<link>https://barriersec.com/tag/android/</link>
	<description></description>
	<lastBuildDate>Mon, 14 Sep 2020 03:01:09 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.2.15</generator>

<image>
	<url>https://barriersec.com/wp-content/uploads/cropped-Monochrome-on-Transparent-32x32.png</url>
	<title>android Archives -</title>
	<link>https://barriersec.com/tag/android/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Android Application Security Testing checklist</title>
		<link>https://barriersec.com/2019/01/android-application-security-testing-checklist/</link>
		
		<dc:creator><![CDATA[goutham madhwaraj]]></dc:creator>
		<pubDate>Mon, 14 Jan 2019 23:12:23 +0000</pubDate>
				<category><![CDATA[android app security checklist]]></category>
		<category><![CDATA[mobile pentest]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[pentest]]></category>
		<category><![CDATA[security]]></category>
		<guid isPermaLink="false">https://barriersec.com/?p=488</guid>

					<description><![CDATA[<p>Hello! This post contains few major checklists that are collated from my experience in penetration testing android mobile applications. This&#8230;</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/01/android-application-security-testing-checklist/">Android Application Security Testing checklist</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Hello! This post contains few major checklists that are collated from my experience in penetration testing android mobile applications.</p>
<p>This post also helps you to push in right direction to setup your android pentest environment too.</p>
<p>And please note that this list is non exhaustive and made for fellow pentesters to give a quick checklist for android mobile app pentesting.</p>
<p>I use Android virtual device(AVD) from android studio to perform business logic / functionality security test.</p>
<p>download latest android studio followed by SDK for the same from here :</p>
<p><a href="https://developer.android.com/studio/">https://developer.android.com/studio/</a></p>
<p>you can find many tutorials online on how to setup android studio. so i will skip that part.</p>
<p>Once done, open the apk file in android studio , and look at <strong>androidManifestFile.xml</strong> for major mis-configuration checks.</p>
<p><strong>permission checklist :</strong></p>
<ol>
<li><strong>android.permission.WRITE_EXTERNAL_STORAGE</strong> should be <strong>false</strong>. if it is set to true, allows an application to modify/delete SD card contents .</li>
<li><strong>debuggable</strong> flag should be set to <strong>false</strong> in a production system. if it is set to true, sensitive information can be extracted by an attacker with physical access to mobile .</li>
<li><strong>android.permission.GET_TASKS</strong> should be <strong>false</strong>.  if it is set to true, application will be able to retrieve information about other currently running tasks.</li>
<li><strong>android.permission.WAKE_LOCK</strong> should be <strong>false</strong> in most cases unless there is a huge data sync between app and the back end service . if set to true, it Allows an application to prevent the phone to goto sleep.</li>
<li>backup flag <strong>android:allowBackup</strong> should be explicitly set to <strong>false</strong> in the manifest file. by default , it is set to true and this results in , anyone can backup data through ADB shell. cmd : <strong>adb backup -f app_backup.ab -apk &lt;&lt;com.myapp&gt;&gt;</strong></li>
</ol>
<p><strong>Decompile/reverse apk file using apktool :</strong></p>
<p>cmd :</p>
<p><strong>apktool d &lt;&lt;myapkfile.apk&gt;&gt;</strong></p>
<blockquote><p>check for any interesting library files or source files that are exposed.</p>
<p>check for any platform specific config files ( example : for apps developed using apache cardova  check for config.xml) and verify its permissions</p>
<p>for example, apps developed using cardova ,</p></blockquote>
<ol>
<li>check if whitelist plugin is enabled to prevent against cross site scripting attacks(XSS)</li>
</ol>
<p><strong> &gt;&gt; check for SSL pinning , to verify if we can intercept SSL traffic using an user generated cert.</strong></p>
<p>(note : android API &lt; 23 accepts user generated certs , for building a test environment for dynamic analysis , generate a burp CA certificate and install it on android and verify if you are able to intercept SSL traffic.)</p>
<p><strong>steps to intercept SSL traffic ( API &lt; 23 ) using user generated SSL certificate on an android device</strong> :</p>
<p>1 . get CA cert from burp</p>
<p>2. move the cacert.cer to android virtual device</p>
<p>3. go to settings &gt; security &gt; set up screen lock using pin and set up pin.</p>
<p>4.  go to <strong>settings</strong> &gt; <strong>security</strong> &gt;<strong> install certificate from SD card </strong>and install the copied certificate.</p>
<p>5. now setup a burp proxy to listen to on <strong>all interfaces</strong> on a specific port ( ex:  port 8081 )</p>
<p>6. now go to launched android virtual machine proxy setting and set the listening burp proxy . now you should be able to intercept SSL traffic from your mobile application for further dynamic analysis.</p>
<p><strong>Dynamic analysis :</strong></p>
<p>Every application is unique and has its own business logic. critical issues come from improper business logic , so understanding of application flow is the main key for further security analysis. here, from parameter manipulation to privilege escalations , everything is in valid scope and dependent on application logic..however,in addition to that, here are the few things to check</p>
<blockquote><p><strong>&gt; check for unauthenticated API service calls and resource calls which leads to easy privilege escalations and sensitive data exposure.</strong></p>
<p><strong>&gt; check for any juicy contents from extracting db file(if present) which may reveal credentials and other sensitive data</strong>.</p>
<p><strong>(</strong>note : normally appln specific db files are stored at <strong>/data/data/apppackagename/databases/databasename.db)</strong></p>
<p>once you get the database file , copy it to host system and analyse using <strong>db browser for SQLite   </strong>for  juicy info . (<strong> adb pull &lt;&lt;dbfile&gt;&gt;.db</strong> )</p>
<p>(note : adb file location : Android\Sdk\platform-tools\adb.exe)</p>
<p><strong>&gt; monitor and look out for juicy debugging logs, sensitive information with the help of ADB logcat.</strong></p>
<pre class="prettyprint"><span class="pln">$ adb shell
</span><span class="com"># logcat</span></pre>
<p>you can also write or log only specific logs to your application , check out android dev community for proper syntax.</p>
<p>And finally last but not least , you can install and  run awesome tools such as <strong>MobSF (https://github.com/MobSF/Mobile-Security-Framework-MobSF) </strong> for automated static and dynamic analysis and neat  reports for the same.</p>
<p>(Note : this list is non exhaustive and I am in no way responsible for using the above information in any unlawful way. )</p>
<p>Hope you enjoyed the quick checklist . Thats it for today! Shubha dina! <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p></blockquote>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/01/android-application-security-testing-checklist/">Android Application Security Testing checklist</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
