成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何開始對Android應用的逆向分析?

安全 終端安全
本文是我的關于如何開始Android逆向系列文章的第一部分。在文末提供了一個文檔,你可以根據該文檔說明部署同我一樣的實驗環境。

本文是我的關于如何開始Android逆向系列文章的第一部分。在文末提供了一個文檔,你可以根據該文檔說明部署同我一樣的實驗環境。

在了解android應用的逆向之前,你必須對android平臺及其架構和android應用程序的構建塊(組件)已有了一個較好的理解。如果你并不了解這些,那么我建議你先參閱以下鏈接,然后再繼續瀏覽本文。

我當前的實驗室環境如下:

  • 主機系統為windows,其中安裝了virtual box genymotion
  • virtual box 和 genymotion的設備都處于橋接模式
  • Android 4.4 (kitkat API version 19)
  • 在virtual box中,kali linux也同時運行(與genymotion一起)

注:該設置并非固定,你可以根據自身需求環境進行調整。例如,你也可以使用kali linux作為你的主機系統,并在上面安裝genymotion。

在正式開始我們的逆向之旅前,我想先向大家介紹一下名為adb(android debugger bridge)的工具/服務器。它可以幫助我們連接,獲取數據并將指令傳遞給遠程Android設備(調試模式可以通過設備設置中的開發者模式打開)。當前情況下,我們將使用genymotion設備(虛擬設備)。

對于安卓應用的逆向,這里有一個非常好的可供我們學習和練習的apk - DIVA ( Damn insecure and vulnerable mobile Application )。這是一個由Payatu的安全分析師開發的脆弱安卓應用。下面我們也將以該應用為例:

首先,讓我們來啟動genymotion設備:

  • 在Windows/Linux中搜索Genymotion應用
  • Start genymotion

選中你想要啟動的設備,然后點擊Start按鈕。

如果你以上步驟正確執行,則應該能看到類似以下的界面:

可以看到Android設備已經啟動,現在我們來啟動虛擬機中的kali linux。步驟如下:

  • 啟動virtual box
  • 從中啟動kali虛擬機

注:這兩個虛擬機處于橋接模式。如果有DHCP服務器,則需要連接到路由器或網絡。

現在兩臺機器都已啟動,下面讓我們來檢查下kali和Android設備之間的連接情況。為此,我們需要獲取Android設備的IP地址。

  • 導航到設置菜單
  • 單擊WiFi選項
  • 你會在網絡中看到WiredSSID
  • 長按“WiredSSID”選項
  • 你會看到如下所示界面

獲取IP后我們回到kali終端,并鍵入以下命令檢查連接情況:

  1. adb connect 192.168.20.74 

如果命令正確執行,你將會看到以下輸出。

現在讓我們通過執行以下命令,來驗證設備是否真正連接:

  1. adb devices 

 

通過確認我們得知設備已連接到IP地址192.168.20.74和5555端口(adb默認的連接端口為5555)。

現在,我們就可以在Android設備上執行不同的adb命令了。通過-h選項查看可用參數:

  1. adb -h 

 

在幫助信息中會為你列出所有可用的參數選項。下面是一些在逆向中時常會用到的命令:

ADB 調試

  1. adb devices – Lists all the connected devices  
  2. adb forward – used for forwarding socket connections  
  3. adb kill-serve 

無線

  1. adb connect – connects to the remote device 
  2. adb usb – connects to the USB attached device 

包管理器

  1. adb install – install a package adb uninstall – uninstall a package adb shell pm list packages – used for displaying lists of packages installed adb shell pm path – used for displaying package path on device adb shell pm clear 

文件管理器

  1. adb pull – used for pulling / downloading a file adb push – used for pushing / uploading a file adb shell ls – used for displaying list of files and directories in the current directory adb shell cd – used for changing the directory adb shell rm- used for removing a file adb shell mkdir – used for creating a directory adb shell touch – used for creating a file adb shell pwd – used for displaying the current path adb shell cp – used for copying a file adb shell mv – used for moving a file 

網絡

  1. adb shell netstat – used for displaying the statistics for network connection adb shell ping – used for pinging a host / IP adb shell netcfg adb shell ip 

Logcat

  1. adb logcat adb shell dumpsys adb shell dumpstate 

截圖

  1. adb shell screencap adb shell screenrecord 

系統

  1. adb root adb sideload adb shell ps adb shell top adb shell getprop adb shell setprop 

在了解adb命令后,下面我們來安裝DIVA(Android應用程序)。

注:請將該應用下載安裝至你的kali機器上,因為所有的adb命令都將從kali中觸發。

執行以下命令安裝該應用:

  1. adb install diva-beta.apk 

 

現在,我們已經完成了diva-beta.apk的安裝。讓我們來驗證下該應用是否已在我們的設備中成功安裝。

可以看到應用程序已被正確安裝,并可在設備的菜單中使用。

讓我們通過單擊該應用程的圖標來啟動它。你將看到如下啟動界面:

當前,DIVA為我們準備了以下挑戰:

不安全的日志記錄 硬編碼問題 – 第1部分 不安全的數據存儲 – 第1部分 不安全的數據存儲 – 第2部分 不安全的數據存儲 – 第3部分 不安全的數據存儲 – 第4部分 輸入驗證問題 – 第1部分 輸入驗證問題 – 第2部分 訪問控制問題 – 第1部分 訪問控制問題 – 第2部分 訪問控制問題 – 第3部分 硬編碼問題 – 第2部分 輸入驗證問題 – 第3部分

我們將逐一解決上述挑戰,讓你了解Android應用中的不同漏洞。對于第一項挑戰,即不安全日志記錄,我們可以通過adb命令來檢查diva應用的日志記錄。命令如下:

  1. adb logcat 

如果命令正確執行,你將會看到如下所示內容:

可以看到這里的日志記錄非常的雜亂,因為它顯示了許多不同的日志記錄數據(整個設備)。為了讓我們看起來更加清晰,我將使用grep命令。但在此之前,我們需要首先獲取該應用程序包的進程ID。命令如下:

  1. adb shell ps | grep diva 

如果命令正確執行,你將會看到如下所示內容:

adb shell是用于通過adb發送任何shell指令的命令;ps作為shell指令發送,ps的輸出提供給grep命令。Grep是一個非常棒的用于搜索相關字符串的工具,在本例中我們搜索的字符串為“diva”。

從輸出結果中我們得知,diva的pid為1654,包名稱為“jakhar.aseem.diva”

現在,讓我們以組合的形式使用logcat和grep命令:

  1. adb logcat | grep 1654 

你將看到與該特定進程(即diva)相關的所有日志。

實驗環境設置文檔

責任編輯:趙寧寧 來源: FreeBuf
相關推薦

2015-01-09 16:32:25

2020-09-21 09:58:01

Frida

2012-05-18 09:54:05

2010-02-06 13:28:31

Android源碼

2022-02-21 09:00:00

云原生應用開發

2015-08-04 17:45:54

Docker應用

2022-10-20 10:37:44

2016-08-23 09:21:33

SDR+inspect無線信號

2010-03-02 11:12:33

Android應用開發

2010-09-30 09:40:45

2011-05-07 13:08:11

亞馬遜應用商店Android MarAT&T

2015-08-21 17:52:52

逆向分析BinNavi

2015-07-28 11:02:15

androidapp開發

2015-08-24 11:03:14

android建項目

2024-08-06 09:54:20

2012-09-21 09:57:46

基礎設施關鍵應用虛擬化

2013-05-24 09:25:27

2018-01-18 22:09:06

數據分析數據處理企業

2010-03-03 16:14:56

Android系統市場

2011-06-09 09:07:13

項目管理
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 男人天堂99| 久久精品综合 | avtt国产| 在线视频日韩 | 欧美一级在线观看 | 婷婷不卡 | 少妇黄色 | 一区二区三区四区国产精品 | 国产亚洲精品久久久久久牛牛 | 久久久男人的天堂 | 欧美综合一区二区 | 国产在线精品一区二区 | www.一区二区 | 亚洲国产一区二区三区在线观看 | 精品欧美一区二区三区久久久 | 不卡视频一区二区三区 | 91一区二区三区 | 伊人狠狠操 | 九九热精品在线视频 | 一级毛片视频 | 青青草精品视频 | 永久www成人看片 | 伊人网站在线观看 | 亚洲国产一区二区三区在线观看 | 久久精品 | 亚洲一区二区三区在线播放 | 野狼在线社区2017入口 | 久久国产亚洲 | 日韩免费视频一区二区 | 三级特黄特色视频 | 精品国产乱码久久久久久蜜退臀 | 国产一区二区三区免费观看视频 | 亚洲精品一区二区在线观看 | 日日久| 久久综合九色综合欧美狠狠 | 成人小视频在线免费观看 | 亚洲综合无码一区二区 | 欧美精品一区二区三区四区 在线 | 久久一起草 | 免费在线视频一区二区 | 激情综合五月 |