Android應用安全 | Android應用基礎知識和代理抓包
作者:1e0n
0x00 前言
由于作業需要,手里的專案有個APP應用需要測驗,但在此之前,我又沒有系統深入的去學習過移動應用安全,本著哪里不會學哪里的精神,我準備大致的學習一下,以下內容可以理解為是我個人的學習筆記,發布出來是希望能夠對感興趣的師傅有所幫助,還望各位師傅對文中不嚴謹的地方批評指正,共同進步,
0x01 什么是APK檔案?
APK是(AndroidPackage)的縮寫,也就是我們安卓軟體應用檔案標準擴展名,我們只需要在安卓手機或者安卓模擬器中安裝運行即可,APK實際上也是一個ZIP的檔案,最簡單的方式可以將檔案重命名為.zip,然后用解壓工具解壓查看,

1.1 APK檔案的基本內容
這里我們去隨便下載一個安卓應用程式打開看看,

如圖,這就是一個用解壓工具打開的APK檔案,它其中包含了以下內容;
(1)AndroidManifest.xml
AndroidManifest的官方解釋是應用清單,檔案中包括軟體的各種配置資訊,在每個應用的根目錄下必須包含它,并且名字得一模一樣,其中還有很多的應用組件描述、宣告、需要用到的庫等等資訊,如果覺得很難理解的話,可以暫時將它理解為類似網頁源代碼中包含的JS代碼(當然并不準確),
官方示例檔案代碼如下:

(2)assets檔案夾
assets檔案夾下包括應用程式可能需要的任何其他檔案,這些檔案最后會被原封不動的打包在APK檔案中,應用程式想要去使用它就必須要指定檔案路徑和檔案名,其中的檔案并不會被編譯,而是會直接部署,并且只能通過流的形式讀取;

(3)com檔案夾
com檔案夾也是一個包檔案,其實質上是一個檔案夾,在它之下的檔案夾也是包檔案,存放對應功能的類代碼;

(4)lib檔案夾
lib檔案夾下主要存放的是一些系統的庫檔案,如.so結尾的檔案,

(5)META-INF檔案夾
META-INF檔案夾下存放著程式入口的相關資訊,每個jar程式都會存在這個檔案夾,其中的MANIFEST.mf檔案,是jar打包時自動生成的,

(6)res檔案夾
res檔案夾下存放著專案中所有的資源檔案,安卓應用需要的資源檔案都會從這個檔案夾下的各個子檔案夾中去呼叫,具體的一些細節暫時不用太過關注,

(7)src檔案夾
src檔案夾下存放著所有的java源程式,(有java基礎的師傅可以研究下)
小結:這只是其中一部分檔案或檔案夾的粗略解釋,還有很多內容要系統的學起來比較耗時耗力,建議遇到的時候,現學,哈哈,
0x02 像網頁一樣使用burpsuite抓包
首先需要用到的是一個安卓模擬器,只要能夠成功運行安卓應用即可,我這里圖方便直接用的夜神模擬器,
模擬器的安裝程序可以自行百度,安裝完成后,本來是應該安裝一個APK檔案來進行測驗的,為避免相關問題,這里直接抓取瀏覽器的網頁內容,當然,APP同理,之后會專門準備一個測驗用的APP來專門寫一篇詳細的文章,
安裝好模擬器后,需要對幾個地方進行設定,
首先是burpsuite,需要按照下圖設定,IP選擇自己本機IP,埠自定義,我這里選擇的是8080,(等會模擬器中也要相同埠)

然后是模擬器,打開設定-無線和網路-長按修改網路-設定代理(設定為本機IP和上面的埠)-保存,

事實上這個時候已經可以抓到包了,但是遇到HTTPS協議的網站會彈出安全警告,

這種情況需要安裝證書,先關閉burp的攔截,在瀏覽器輸入http://burp,按照下圖操作,


接下來就可以像WEB一樣去抓包測驗APP了,
0x03 了解更多安全知識
歡迎關注我們的安全公眾號,學習更多安全知識!!!
歡迎關注我們的安全公眾號,學習更多安全知識!!!
歡迎關注我們的安全公眾號,學習更多安全知識!!!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/296851.html
標籤:其他
上一篇:HAPI使用方法總結(HITRAN資料庫,HITEMP資料庫)
下一篇:自動化測驗框架指南
