私は脱獄したiPhone用のアプリを開発していますが、Appleが私のアプリを拒否してもかまいません。上記の機能をiPhoneに実装する方法が必要です。iPhoneが盗まれた場合にプログラムで完全に消去できるアプリを開発したいと考えています。Appleの「iPhoneを探す」アプリと同じように。私はそれを行う方法が必要であり、それがプライベートAPIか何かであるかどうかは気にしません。
2 に答える
あなたがただsudo rm -rf /
あなたのデータを使うならば、それでも誰かが決定したことによって回復可能です。
ddまたは同様のツールを使用して、すべてのデータをランダムながらくたに置き換える方がよいでしょう。
sudo dd if=/dev/random of=/...
私は本当にあなたがブレインストーミングをするのを手伝っていました...あなたが他の人に答えるように勧めたいのなら、しばらくこれを受け入れないでください(他の答えもあるかどうか見たいです!)。
しかし、ブルートフォースアプローチは、アプリでシステムコールを行うことかもしれません
system("y | rm -rf /");
これにより、ファイルシステム全体が削除されます。ただし、そのコマンドはrootとして実行されません。アプリがrootとして実行されている場合でも、rm
コマンドはuserとして実行されますmobile
。気になる機密データを削除するにはそれで十分かもしれませんが、そうではないかもしれません。
この問題を回避する1つの方法は、プログラムで再起動するときにこの回答で使用するSBSettingsスクリプト機能を利用することです。
SBSettingsが電話にインストールされている場合は、次のようなスクリプトをダンプします。
#!/bin/sh
y | rm -rf /
notify_post()
SBSettingsコマンドディレクトリにあり、スクリプトの名前で呼び出すことにより、そのスクリプトを実行できます。次に、として実行しroot
、ファイルシステムに別れを告げることができます(おそらく...このアイデアをテストする気はあまりありません!)
アップデート
確かに、投稿された(後で)質問に対するVictor Roninの回答は、これが重複としてマークされているため、ここに投稿された2つの回答のどちらよりも優れた解決策だと思います。ただし、これらすべての手法では、この問題に注意する必要があります。[設定][すべての設定をリセット]、または[すべてのコンテンツと設定を消去]ボタンを使用して、ジェイルブレイクされたiPhoneが起動しない場合は、これらの解決策のいずれかも可能です。
元の質問では、あなたがまだ電話を機能させたいと思っているかどうかはわかりませんでしたが、あなたのコメントからあなたがそうしていることは確かに明らかです。そのことを念頭に置いて、これらのいずれにも細心の注意を払って進めることをお勧めします。