協議分析總結

Android app 協議分析小結
 
導語:
如今,大量數據在網絡中上傳輸中,數據事關你我他的的隱私,行爲, 這些數據若是被不法分子利用的話,是一件很糟糕的一件事情。如今網上流通的數據基本都是加密的,可是有的時候也是沒有加密,因此咱們使用一塊聯網的App,咱們不只要考慮的App的美觀,方便, 還要考慮其的數據的加密強度, 加密策略。否者你的數據很危險, 你很危險,如今網絡安全並不安全。 可是這些都和這篇文章不要緊,這篇文章是介紹你們如何分析網絡數據的,這就是咱們所說的協議分析。 協議分析的對象是網絡中傳輸的數據包。筆者分析一些android app,總結了關於協議分析的一點當心得, 分享各位。
 
 
協議分析的基本步驟
1.  數據在發送前,加密; 接收後,進行解密, 因此協議分析的第一步就是找到發送/接收函數。
2. 基於第一步,咱們順着數據加解密這條線索,咱們分析數據的如何加密算法,密鑰,和 數據的意義,  這就是逆向分析的活。
3. 咱們根據加密算法,咱們就能找到密鑰, 而後順着密鑰條線索,咱們分析密鑰的生成過程。根據密鑰的生成過程,咱們就知道,咱們數據可否利用。
因此協議分析的第一步也是最關鍵的一步就是找到應用層數據的發送、接收函數啦
 
 
發送/接收函數的定位
協議是分層, 並且每一層都有本身的發送函數,接收函數。  這裏咱們關注的數據的應用層數據,咱們關注的應用層的數據的發送、接收函數, 對於android 代碼實現有兩種,基於java層和Native層。
因此數據的發送、接收函數既可能出現Java層, 也有可能出如今Native 層。  本文會持續更新...... 以實際案例分析如何定位發送函數, 下文是指協議分析的大綱。
Java層:
1. TCP/UDP協議傳輸:
2. HTTP協議 傳輸
3. 其餘協議
方法: 找到對應協議使用類,而後搜索,排除,定位。
 
Native層:
1. TCP/UDP協議傳輸: 函數writev/readv
2. Http協議 傳輸:  
3. mmtls協議 傳輸 :
4.  RTP協議 傳輸
5. SRTP協議 傳輸
6. xmpp協議傳輸
6. 其餘協議傳輸
 
方法:找到相應協議的發送,接收函數,找到相應方法。
相關文章
相關標籤/搜索