題:
某些android應用如何記住這不是第一次安裝?
defalt
2016-09-25 20:07:01 UTC
view on stackexchange narkive permalink

某些android應用可以記住它們是否早先安裝在同一設備上。假設您在一年前卸載了一個應用程序。一年後,如果再次安裝同一應用程序,則該應用程序將能夠識別出該應用程序之前已安裝在同一部手機上。

在線應用程序使用此技術永久禁止用戶創建如果新帳戶已被禁止一次使用,請再次使用。當此類用戶通過稍後重新安裝應用程序來創建新帳戶時,這些應用程序將能夠檢測到“首次訪問”並將此信息發送到服務器,以便再次禁止該用戶。即使清除了它們的數據並完全卸載了它們之後?這意味著他們將某些文件保留在手機中的某個位置,卸載後不會刪除。如何禁用此檢測?

為什麼要刪除此信息?應用程序創作者有權利嗎?我不希望這是受歡迎的評論,但請考慮您是否花了時間和精力來創建應用。
今天,@S.Mitchell一些應用程序開發人員和大型廣告公司試圖從無辜的用戶那裡訪問不必要的詳細信息。他們不僅需要MAC地址,而且還想知道您的wifiSSID。Google通過在Android 6中實現您不想授予他們的權限,為他們提供了一個很好的教訓。但是廣告客戶並沒有在這裡停留,他們總能找到一個出行的方式。我想確保這個隱私系統。
@S.Mitchell你好Mitchell。您可能因為我的問題而判斷我錯了。不,我不禁止任何社交或在線服務,也不會禁止堆棧交換(如果您對此表示懷疑)。但是對我來說,知道就是學習。我在這裡收到的答案沒有做任何實際的工作。但是肯定他們可以幫助人們了解事情的發展。如果不知道如何破解,就無法創建反黑客安全性。同樣的比喻在這裡。如果我無法學習應用程序的工作原理,那我將無能為力。
@S.Mitchell:“應用程序創建者有權利嗎?”實際上,在_my_電話上,他們沒有權利。我可以讓他們運行代碼並將其數據存儲在我的手機上,但是他們沒有權限,因此我保留自行決定撤銷這兩項特權的權利。
@S.Mitchell我將鼓勵所有問題的答案,無論您為什麼認為它們存在​​。好東西,你不要經營這個網站!
五 答案:
GiantTree
2016-09-25 20:21:22 UTC
view on stackexchange narkive permalink

有多種方法來標識唯一的設備或其用戶:

  1. 將文件保留在某個(非默認)目錄中:您已經說過;應用程序通常可以寫入設備的內部存儲。這種方法很容易,可以離線使用,而且不是最容易發現的(將文件放在類似 system 的目錄中,沒有人會麻煩刪除它)。
  2. 跟踪唯一的設備 ANDROID_ID (每個全新安裝都是唯一的):此方法很簡單,但至少在首次使用時需要Internet訪問。它不是很麻煩,即使恢復出廠設置也不會持久。每個用戶也是唯一的。 查看此信息
  3. IMEI :侵入性強,不可更改,但需要具有SIM卡功能的設備。 IMEI對於每台設備來說都是唯一的,無法更改且不會跟隨用戶,這意味著如果您出售設備,則新所有者將看到一個屏幕,告訴他該應用程序已在手機上。
  4. 關注用戶的Google帳戶:這與 ANDROID_ID 方法幾乎相同,但需要用戶的顯式權限(Android 6.0+)訪問。因此,利用Google帳戶生態系統的應用程序(例如游戲中的高分和成就)可以關注特定用戶並獲得更多信息,而不僅僅是是否已安裝該應用程序。
  5. ol>

    2 ,3和4需要網絡連接,並且開發人員需要服務器。

我可以使用Xprivacy管理第2、3、4部分。我會欺騙他們每個人。但是第一個,不容易發現。無論如何,我可以檢測到此漏洞嗎?
這不是漏洞,只是濫用的功能。與將文件保存在註冊表中的應用程序非常相似。除了瀏覽手機內部存儲中的所有目錄並查找可疑文件外,您無能為力。
遍歷所有目錄將是不可能的,因為您將永遠不知道要搜索的文件名,文件擴展名和文件大小。即使找到一個文件並將其刪除,然後您意識到該文件不是您要查找的實際文件,也將導致系統崩潰。我希望是否有一個管理員應用程序可以檢測文件與哪個應用程序相關聯。
祝您好運,找到/製作此應用。由於內部存儲器上缺少某些文件,因此系統不會崩潰。通常,應用程序傾向於使用使用相同文件的相同框架,但是,正如您已經指出的那樣,這些文件是不可能找到的(並非總是如此,但大多數時候)。包含“ id”,“ user”或類似名稱的文件通常包含此類ID,而這些ID通常用於廣告。
@S.Mitchell不,我從未被禁止任何在線服務,Web應用程序和在線遊戲。但是我相信,了解系統如何在其界面背後工作是正確的步驟,是朝著Android開發前進的正確步驟。
@user334283“永遠不知道您要搜索的文件名”。這是錯誤的。作為Linux操作系統的Android具有`strace`實用程序,可用於跟踪所有系統調用。因此,您必須使用`strace`啟動應用,並檢查與設備上文件相關的所有系統調用,然後才能發現該應用讀取/檢查的文件是否存在。當然:在智能手機上可能很難做,但是絕對*可能*。
@Bakuriu Thnx添加了此內容。我可以在本機站點上找到android的strace命令的相關文章。 http://stackoverflow.com/q/12166917/6538535http://stackoverflow.com/q/16247565/6538535
另一種方式:還有android備份服務,不是還原以前安裝的應用程序的設置(至少,如果已啟用)?
@derobert Android 6允許以下操作:http://stackoverflow.com/a/36471154/6538535
@Bakuriu:如果您擁有一部紮根的手機和一部ssh服務器,這一點都不難。 SSHDroid使得如果可能的話,可以很容易地安裝以root用戶身份運行的程序。
Devin Ersoy
2016-09-25 20:21:32 UTC
view on stackexchange narkive permalink

它不連接到存儲,但是連接到雲。即使刪除了數據,它也能記住它。為了關閉此功能,請轉到設備的設置應用,在“個人”下點擊Google帳戶(如果您有多個帳戶,請點擊您想要的帳戶),然後關閉您不想自動同步的應用。

自動同步不是根本問題。第三方服務器確保其應用程序能夠收集您的MAC地址,IMEI,設備ID,廣告ID,並將其存儲到服務器,以便將來再次檢測該設備。欺騙這些細節將保護您的隱私,但是如果應用正在編寫“註冊表項”(如Windows),則將無法檢測到問題。
Neil
2016-09-26 22:33:29 UTC
view on stackexchange narkive permalink

GiantTree的答案最能說明問題,但還有另一點需要考慮。顯然是“ 深色圖案”,但也可以通過指紋某些用戶數據來完成此識別-這可以看作是他的第一點的變體(“保持一個文件”),但是很難檢測,並且避免的麻煩程度。

此文件的恢復能力取決於所選的數據。最明顯的方法是查看聯繫方式,並使用某種形式的指紋。另一種選擇是使用照片時間戳和其他元數據。顯然,這些隨著時間的推移會發生變化,因此,無論使用哪種方法,修改後仍然需要給出一個精確的答案(因此,它不同於傳統的哈希函數)。同樣,也不能保證用戶不會簡單地擦除跟踪的數據,但是在許多情況下,人們會寧願不這樣做。

您可能希望查看瀏覽器的指紋以了解如何即使行話會有所不同,因為電話硬件通常比PC硬件更統一,這仍然可行。就是說,添加某些電話詳細信息可能會幫助縮小指紋範圍。

這種方法無法解決的地方尤其是如果用戶切換電話並通過以下方式獲取其詳細信息將其連接到新手機-在這種情況下(除非手機詳細信息進入指紋中),可能會根據問題詢問新手機是否已安裝。但是,在應用程序試圖禁止用戶的情況下,這很有可能實際上是期望的結果(而不是禁止特定手機本身)

請注意:如果您正在編寫應用,我絕不是說這是正確的或“好的”操作方式,但是討論它似乎是合理的,因為只有通過討論,人們才會弄清楚他們是否在關注自己足以對它做些什麼以及可能是什麼。

David Bennett
2016-09-26 05:05:30 UTC
view on stackexchange narkive permalink

有一個SharedPreferences類- https://developer.android.com/reference/android/content/SharedPreferences.html-一些應用程序用於存儲首選項數據。卸載應用程序後,不會刪除此數據。如果以後重新安裝該應用程序,則以前保存的所有SharedPreferences密鑰仍然可用。

卸載應用後,實際上會“刪除”“ SharedPreferences”。開發人員可以通過多種方式來設置備份,但是默認情況下,它們會在卸載時被刪除。 (來源:作為開發人員,我卸載了我的應用程序以清除首選項。另請參見:http://stackoverflow.com/a/9815641/1438733)
computingfreak
2016-10-20 07:12:42 UTC
view on stackexchange narkive permalink

還有另一種可能性-使用具有很大“到期時間”的永久cookie 。我想這是同一位開發人員的多個應用程序過去習慣於傳統上共享憑據的方式,而通過帳戶功能存儲的憑據並不那麼公開/不為大眾所知。



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...