一部のアプリに自分でルート権限を追加するにはどうすればよいですか?


11

一部のアプリにroot権限を意図的に付与する方法はありますか?特定のアプリがルート権限を要求したときにSuperSUを介して自動的にではなく、何らかのツールを介してアプリを選択してルート権限を付与する方法。

たとえば、お気に入りのテキストアプリを承認済みリストに追加すると、そのアプリを介してルートファイルを開くことができます。

回答:


13

いいえ。アプリデベロッパーにリクエストする必要があります。

UNIXのようなシステムでは、パーミッションはUIDと呼ばれるもので管理されます。

すべてのプロセスには1つあり、アクセスできるものを決定します。さらに、メンバーが使用できる許可を持つグループもあります。アプリにこのような権限Write to SD cardを持つグループに入れられるような権限がある場合。

ルート権限は、アプリのマニフェストではなくコードで宣言されているため、例外です。Rootもグループではなく、個別のUIDであるため(個別のユーザーであるため)、アプリでの使用はそれほど簡単ではありません。 ルート権限を持つアプリは、そうするために明示的に書かれる必要があります。

これが機能する方法は、アプリがrootとして何かを実行しようとするたびに、su代わりにそれを実行するようにバイナリを要求する必要があることです。su次に、これらの権限を管理するアプリ(SuperSUなど)に、ルートアクセス権の取得を許可するかどうかを尋ねます。そうでない場合は、許可または拒否するように求められます。その後、アクションはrootアプリユーザーとしてではなく、として実行されます。これらのアクションはアプリの不可欠な部分ではなく、外部の実行可能ファイルです。

これをアプリに追加することは理論的には可能ですが、これは、Smaliコードの記述に関する知識を必要とする重要なプロセスです。これは、Dalvik仮想マシン(apkファイルを実行するシステムの一部)の内部フォーマットです。 smali。その場合でも、アプリが他のアプリにアクセスを許可すると、大きなセキュリティリスクが発生します。通常のアクセスとは別に特権ルートアクセスを維持する方法がわかりません。したがって、実際にはこれは実際には実現可能ではありません。


1
smaliが何であるかを知らない人のために:これは、Androidのdalvik仮想マシンコードのアセンブリ方言であり、dexリバースエンジニアリングファイルでよく使用されます。少し不明確かもしれませんが、アプリ自体がプログラムでrootなることに注意する必要があります。そのため、開発者はそれを含める必要があります。SuperSUに追加しても、アプリがルート権限を行使しない限り、効果はありません。
ce4

プログラマーがルートファイルのオープンを受け入れるようにアプリをコーディングしていない場合、お気に入りのテキストエディターでルートテキストファイルを開けませんか?
AnDroDroo

1
まったく正しい。例を挙げれば:アプリがrootで起動されず、「rootファイル」を開こうとすると、単に「許可が拒否されました」-ファイルへのアクセスは引き続きアプリのUID(それはうではない)、それを開くためにスーパーユーザ権限を求めます。一方、アプリがルートUID(つまりsu <app>)を使用して起動された場合、そのルートファイルにルートとしてアクセスし、権限を取得します。
イジー

そのため、他のテキストエディタを使用してルートファイルを読み取ることができませんでした:)。
AnDroDroo

1
@Izzy AFAIKでは、ルートUIDを使用して通常のAndroidアプリを実行したり、実行中のアプリのUIDを変更したりすることはできません。あなたができる唯一のことはsuでコマンドラインプログラムを実行することであり、したがって管理者権限でコマンドを実行します。
ロバート

1

あなたに役立つ方法を見つけました。これを使用して、Taskerに rootアクセスを許可しました。

ターミナルエミュレーターを使用して、フォルダーへの読み取りアクセスを許可するが書き込みアクセスを許可しない場合

  • su
  • chmod 775 /location/of/folder/

その後、テキストエディタはそのディレクトリを読み取ることができるため、フォルダにファイルを保存しようとすると、ルート権限を要求しようとします。

書き込みエラーが発生する場合もあります。


/location/of/folder/ルートからトップまでのすべてのディレクトリは、読み取り可能/通過可能でなければなりません。また、SELinuxはアクセスを拒否する場合があります。したがって、このアプローチが実用的であることはめったにありません。
Irfan Latif
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.