アプリケーション開発者はユーザーの安全性を気にせず、データ漏洩を引き起こします(Javaコードの例を使用)

私のAndroid携帯電話を掘り下げて、/ storage / sdcardディレクトリにディレクトリとファイルがあることに気付きました-かなり前に削除したアプリケーションなので、toster.ruで尋ねました1つのAndroidアプリケーションは別のアプリケーションの一時ファイルを読み取ることができますか?



これらの一時ファイルはどのようなもので、なぜ注意する必要があるのですか? これらはあなたの写真、電話での会話の記録、日記のデータベースです。



Androidには、共有ディレクトリ/ storage / sdcardがあります。 すべてのアプリケーションはそこに一時ファイルを書き込みます。アプリケーションを削除しても、開発者がそれらを削除しない場合、アプリケーションからのデータはそこに残ります。



そのため、toster.ruで次の質問をしました。



1)設計上、システムはこれらの一時ファイルをこのディレクトリから削除しませんか?

2)Androidはどのファイルがどのアプリケーションに属しているかを知りませんか?

3)あるアプリケーションは、このディレクトリから別のアプリケーションからデータを読み取ることができますか?



ユーザーNeiroNxの書き込み:
/データは権利によって非常に明確に分割されています-ルートアクセスなしでは、アプリケーションはどのファイルが存在するかさえもわかりません。
NeiroNxと答えます 。ちょっと待ってください。google.playからファイルマネージャーをダウンロードし、人気のメッセンジャーのディレクトリから一時ファイルを読み取ります。送信された写真は暗号化されておらず、デバイスはルート化されていません。



ユーザーdobergroupの書き込み:
これらのファイルのパスは何ですか? fat32にあるパーティションの任意のディレクトリにある場合、共有アクセスはそれらに適用できません。 したがって、「一時ファイル」の意味を明確にする必要があります
私はドーベルグループに答えます :パス/ストレージ/ SDカードは/ストレージ/ extSdCardと混同しないでください、ここに私のデバイスにインストールされているすべてのアプリケーションの「一時ファイル」があります。プレイリスト、ソーシャルネットワーク、日記、緊急事項の個人的な記録。



一時ファイルというのは、1つのことを意味します。33,000,000の視聴者を持つwhatsappメッセンジャーの開発者が暗号化されていない写真と暗号化された通信をそこに保存する場合、アプリケーション開発者はおそらく異なります。 Whatsappは単なる例であり、ほとんどすべての一般的なアプリケーションは個人データを/ storage / sdcard /%appName%に保存し、他のアプリケーションはこのディレクトリにアクセスします。



たとえば、このメッセンジャーは、送信された写真を、デバイスのすべてのアプリケーションがストレージを操作する許可を持っている場合にアクセスできるディレクトリに保存します。





* Creative Commons CC0でライセンスされている無料の写真ホスティングからの写真。 1、2、3、4



しかし、人気のあるsipクライアントは、sipアカウントの設定を同じ場所に保存します。







他のアプリケーションは一時ファイルを読み取ることができますか?



つまり、誰かがgoogle.playにゲーム「2048-友達とネットワークで遊ぶ」を入れて、携帯電話から半裸の女の子の写真を運ぶことができますか?



私はこれをチェックアウトすることにし、Android用の小さなJavaプログラムを作成しました。 彼女はディレクトリ構造/ストレージ/ SDカードをメールで送信します。



ソースコード。 ディレクトリ構造/ストレージ/ SDカードをメールで送信します:

package android.com.testapp; import android.content.Intent; import android.os.Environment; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import java.io.File; import java.util.Date; public class MainActivity extends AppCompatActivity { Button emailButton; EditText email; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); email = (EditText) findViewById(R.id.email); emailButton = (Button) findViewById(R.id.emailButton); emailButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { getFileStrucure(); } }); } protected void getFileStrucure(){ Filewalker fw = new Filewalker(); fw.walk(new File(Environment.getExternalStorageDirectory().getAbsolutePath())); } private class Filewalker { private int count = 0; private String sked = ""; public void walk(File root) { count++; File[] list = root.listFiles(); for (File f : list) { if (f.isDirectory()) { sked += "time: " + new Date(f.lastModified()) + ", dir: " + f.getAbsoluteFile() + "\n"; walk(f); } else { sked += "time: " + new Date(f.lastModified()) + ", size: " + f.length() + ", " + f.getAbsoluteFile() + "\n"; } } count--; if (count == 0) { sendMail(sked); } } } protected void sendMail(String sked) { Intent i = new Intent(Intent.ACTION_SEND); i.setType("message/rfc822"); i.putExtra(Intent.EXTRA_EMAIL, new String[]{email.getText().toString()}); i.putExtra(Intent.EXTRA_SUBJECT, "android storage structure"); i.putExtra(Intent.EXTRA_TEXT, sked); try { startActivity(Intent.createChooser(i, "Send mail...")); } catch (android.content.ActivityNotFoundException ex) { Toast.makeText(getApplicationContext(), "There are no email clients installed.", Toast.LENGTH_SHORT).show(); } } }
      
      











電子メールを入力すると、ディレクトリ構造だけでなくファイル自体も電子メールを送信せずに送信できるため、アプリケーションはディレクトリ構造/ storage / sdcardを送信します。 google.playがそこにあるアプリケーションを徹底的にチェックすることはほとんどありません。 残念ながら、これはレイアウトの専門家にとって非常に優れたツールであり、彼らは常にユーザーについてできる限り知りたいと思っています。この方法で個人データを取得できるという事実についても話しません。



しかし、コンテンツ/ストレージ/ SDカードでどんな手紙が届くのか、デバイスにインストールされているアプリケーションのすべてのファイルとディレクトリがあります:





*毎日使用するモバイルデバイス上にあるgoogle.playのディレクトリとアプリケーションファイルはありません。これは、Androidエミュレータのsdcardディレクトリです。



情報目的でgithubリポジトリにリンクします。



/ storage / sdcardディレクトリをAndroid用のファイルマネージャで表示します。また、私の意見では、デバイスを/電話のようなPCに接続するときに利用できます、インスタントメッセンジャー、ソーシャルネットワーク、タスクスケジューラを使用すると、誰でも理論的に見ることができるものを見るマニフェストandroid.permission.READ_EXTERNAL_STORAGEに書き込むAndroid開発者。



この記事の意味は、多くのアプリケーション開発者がソーシャルであるということです。 ネットワーク、インスタントメッセンジャー、SIPテレフォニークライアント、毎日のログは、ユーザーのセキュリティを気にしません。



All Articles