安全風(fēng)險(xiǎn):Intent scheme漏洞
?URI Scheme 是統(tǒng)一資源標(biāo)識(shí)符(Uniform Resource Identifier )
1.URI(Uniform Resource Identifier) 和URL(Uniform Resource Locator )兩者名稱都不一樣,所以必然有區(qū)別,,前者是統(tǒng)一資源標(biāo)識(shí)符,,后者是統(tǒng)一資源定位符,后者是網(wǎng)絡(luò)上用于定位互聯(lián)網(wǎng)上Web資源的,,如HTML文檔,、圖像、視頻片段,、程序等,。
2.它是一個(gè)通用定義,不是“protocols”,,也不是URI protocols或者URL protocols,。
3.它經(jīng)常用于設(shè)計(jì)特殊的協(xié)議。如http scheme(HTTP協(xié)議),, XML namespaces,,文件標(biāo)示等等。
從上面的一些結(jié)論來(lái)看,,URI Scheme實(shí)際上一個(gè)概念性的東西,,是一個(gè)規(guī)范,所以符合它的規(guī)范的都可以稱之為URI Scheme,,當(dāng)然,,我們也可以設(shè)計(jì)我們自己的scheme,用來(lái)實(shí)現(xiàn)我們特殊的目的,。它一般具有如下的形式:
?以intent作為scheme的uri:
intent:
HOST/URI-path // Optional host
#Intent;
package=[string];
action=[string];
category=[string];
component=[string];
scheme=[string];
end;
<a href="intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;end"> Take a QR code </a>
示例演示
演示Intent scheme如何使用和相關(guān)風(fēng)險(xiǎn)
安全風(fēng)險(xiǎn):adb命令打開(kāi)組件
adb am命令是Android Debug Bridge(ADB)中的一個(gè)重要命令,,它允許開(kāi)發(fā)者或測(cè)試人員通過(guò)命令行界面與Android設(shè)備進(jìn)行交互,執(zhí)行各種操作,,如啟動(dòng)應(yīng)用程序,、撥打電話,、打開(kāi)網(wǎng)站等。am命令的全稱是Activity Manager,,即活動(dòng)管理器,,它提供了對(duì)Android設(shè)備上活動(dòng)(Activity)的精細(xì)控制。
打開(kāi)網(wǎng)站:類似地,,可以通過(guò)adb am命令打開(kāi)網(wǎng)站,。例如,打開(kāi)百度網(wǎng)站的命令是adb shell am start -a android.intent.action.VIEW -d https://www.baidu.com,。
啟動(dòng)帶有額外數(shù)據(jù)的應(yīng)用程序:如果需要在啟動(dòng)應(yīng)用程序時(shí)傳遞額外的數(shù)據(jù),,可以使用-es選項(xiàng)。例如,,啟動(dòng)一個(gè)帶有網(wǎng)站額外數(shù)據(jù)的Activity的命令是am start -n com.android.example/.MainActivity -es website www.baidu.com,。
[-a <ACTION>]
[-d <DATA_URI>]
[-t <MIME_TYPE>]
[-c <CATEGORY> [-c <CATEGORY>] ...]
[-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
[--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...]
[-e|--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...]
[-n <COMPONENT>]
[-f <FLAGS>] [<URI>]
-p packageName
安全風(fēng)險(xiǎn):Intent scheme漏洞
示例演示
演示adb am命令使用
安全風(fēng)險(xiǎn):activity打開(kāi)的另外一種方式
startActivityForResult(intent, 1);
安全風(fēng)險(xiǎn):隱式啟動(dòng)的風(fēng)險(xiǎn)
1.越權(quán)
2.任意文件讀寫造成代碼執(zhí)行
示例演示
演示startActivityForResult隱式啟動(dòng)安全風(fēng)險(xiǎn)
安全風(fēng)險(xiǎn):顯式啟動(dòng)的風(fēng)險(xiǎn)
1.信息泄露
2.任意文件讀寫造成代碼執(zhí)行
示例演示
演示startActivityForResult顯式啟動(dòng)安全風(fēng)險(xiǎn)