簡體   English   中英

Android APK-應用程序如何在沒有DNS查詢的情況下連接到服務器

[英]Android APK - How do applications connect to their servers without DNS queries

我想了解Play商店中的應用程序(大多數)如何在不執行顯式DNS查詢的情況下連接到其服務器。 我下載了APK文件並對代碼進行了反向工程,但找不到任何IP。 可能是IP通過某種混淆而隱藏在代碼中,例如.so文件等。但是我不清楚的是,這些IP是永久性的,而且永無止境,因此硬編碼的可能性非常小,因為每天我嘗試使用同一部手機啟動該應用程序的相同版本,然后收集.pcap文件,我看到該應用程序正在與其他服務器通信。 我知道這可能是通過某種雲服務器進行的,其中子網范圍內的IP很大,但是這些IP來自不同的雲服務器。

那么,應用程序如何每天無需更新軟件就了解這些新IP?

第一次查找后,域名的IP地址可能會在本地緩存。

設備重新啟動后,DNS緩存將被刷新。 但是,您正在分析的應用程序可能會在設備啟動后立即啟動,這使您難以監視DNS查詢的網絡流量。

我建議將連接配置為使用您控制並可以監視的DNS服務器。 僅刪除DNS服務器,以使查找失敗並且永不緩存,可能會更容易。 這樣,當您運行應用程序時,您應該會看到查詢。

您應該對IP地址進行反向DNS查找,以查看與它們關聯的域,然后grep這些域的代碼和應用程​​序資源。

如果先前的建議沒有幫助,我還建議您搜索與網絡相關的API調用,並分析該區域周圍的代碼以獲取包含主機名的文字。

應用程序也可能使用一個或多個硬編碼IP地址來獲取其他地址。 這可以解釋為什么IP地址列表似乎總是在變化。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM