De qualquer forma para dividir aplicativos compartilhando um uid? -- settings campo com firewall camp android Relacionado O problema

Anyway to split apps sharing an UID?


4
vote

problema

português

Por um tempo, tive uma marca de exclamação em vez de um status de sinal na barra superior, e alguns aplicativos não perceberam que estavam conectados à Internet quando outros funcionavam perfeitamente. Graças a afwall + logs, encontrei o problema. Eu preciso permitir acesso a um aplicativo chamado com.android.engineeringmode .

Mas este aplicativo está amarrado (em oneplus 3) com alguns outros, como você pode ver nesta captura de tela: screenshot tirado em AFWALL +

Eu estou bem para permitir o acesso a engineermode , mas certamente não para todos esses bando de aplicativos (especialmente serviços de câmera ou impressões digitais).

Após pesquisar na web, descobri que todos os aplicativos estão vinculados em /data/system/packages.xml usando o shareduid 1000 . Mas é dito nunca mudar o uid de um aplicativo quando é compartilhado (eu realmente não consegui por que).

Eu estou usando o estoque rom ( oxygenos 3.2.8 ) do OP3, mas enraizado (obtido xposed um xPrivacy também), então é android 6.0.1 .

Existe alguma chance que eu possa permitir acesso à rede engineermode apenas?

english

For a while, I had an exclamation mark instead of a signal status in the top bar, and some apps didn't realize they were connected to Internet when other worked perfectly. Thanks to AFWall+ logs, I found the issue. I need to allow access to an app called com.android.engineeringmode.

But this app is tied (in OnePlus 3) with some others, as you can see in this screenshot : screenshot taken in AFWall+

I'm OK to allow access to EngineerMode, but certainly not to all this bunch of apps (especially camera or fingerprints services).

After searching the web, I found that all theses apps are linked in /data/system/packages.xml using the sharedUid 1000. But it is said to never change the UID of an app when it's shared (I didn't really get why).

I'm using the stock ROM (OxygenOS 3.2.8) from OP3, but rooted (got Xposed an Xprivacy too), so it's Android 6.0.1.

Is there any chance I can allow Network access to EngineerMode only ?

     
 
 

Lista de respostas

2
 
vote

A solução que dan hulme forneceu é certa e gostaria de tornar mais claro: você tem que re-compilar a ROM, mas espere! Abra a fonte para EngineerMode e procure algo em ABCDEFGHIJKLMNABCDEFGHIJKLMN3 como ABCDEFGHIJKLMNABCDEFGHIJKLMN4 e Alterá-lo Para outra coisa.

.

Esse é o fundamento de um ID de usuário compartilhado. Você deve modificar o aplicativo para que não exija mais um UID compartilhado.

 

The solution that Dan Hulme has provided is right and I'd like to make it clearer: You have to re-compile the ROM but wait! Open the source for EngineerMode and look for something in AndroidManifest.xml like sharedUserId="android.uid.system" and change it to something else.

That's the fundament of a shared user ID. You must modify the app so that it doesn't require a shared UID anymore.

 
 
 
 
2
 
vote

Eu não acho que seja possível mudar isso sem recompilar a ROM. Você não pode alterar o UID de aplicativos depois de instalar, porque eles não poderão mais acessar seus arquivos, e porque ele confundirá o sistema de permissões de aplicativos.

Talvez haja alguma outra maneira em torno do problema com Xposed, mas não sei sobre isso. Pode ser possível que um módulo Xposed detecte a chamada exata que o pacote está fazendo (para distingui-lo das chamadas feitas por outros pacotes no mesmo processo) e marque-a para a AFWALL para permitir. Dessa forma, você não precisaria dividir os aplicativos.

Uma alternativa pode ser para encontrar onde está tentando enviar tráfego para e Whitelist que se dirige para esse processo. Mais uma vez, isso resolveria o sintoma específico sem dividir os aplicativos. Se é a detecção de portal em cativeiro, é provavelmente http://client.android.com/generate_204 .

 

I don't think it's possible to change this without recompiling the ROM. You can't change the UID of apps after they're installed because they won't be able to access their files any more, and because it will confuse the app permissions system.

Maybe there's some other way around the problem with Xposed, but I don't know about that. It might be possible for an Xposed module to detect the exact call the package is making (to distinguish it from the calls made by other packages in the same process), and mark it for AFWall to allow it. That way you wouldn't need to split up the apps at all.

An alternative might be to find where it's trying to send traffic to, and whitelist that address for that process. Again, this would solve the specific symptom without splitting the apps. If it's the captive portal detection, it's probably http://client.android.com/generate_204.

 
 
         
         
1
 
vote
vote
Melhor resposta
 

Enquanto o comentário da ibag parece uma resposta melhor para a pergunta, minha verdadeira necessidade era ter uma detecção correta de acesso à Internet sobre o sistema.

Para corrigir o meu problema, tive que abrir um shell adb , digite

  settings put global captive_portal_detection_enabled 0    

Então reinicie. A marca de exclamação foi embora e os aplicativos problemáticos se comportam melhor agora.

Para o registro, isso impedir uma verificação nos servidores do Google. Esse cheque era impossível com as regras do meu firewall.

Graças a Dan Hulme e ibue por sua ajuda.

 

While iBug's comment seems a better answer to the question, my real need was to have a correct Internet access detection over the system.

In order to fix my issue I had to open an adb shell, type in

settings put global captive_portal_detection_enabled 0 

Then reboot. The exclamation mark went away and problematic apps behave better now.

For the record, this prevent a check on Google's servers. This check was impossible with my firewall's rules.

Thanks to Dan Hulme and iBug for their help.

 
 
 
 

Perguntas relacionadas

3  Como limitar o uso de dados de aplicativos individuais?  ( How to limit data usage of individual apps ) 
Existem muitos aplicativos para limitar o uso de dados do sistema inteiro . Usando o firewall, posso bloquear um aplicativo de acessar a Internet também. M...

7  Droidwall e tethering sem fio  ( Droidwall and wireless tethering ) 
Eu tenho um problema muito simples: quando eu executo Wifi Tether no meu galaxy s3 o computador não obterá o endereço IP a menos que eu desative abcdefghij...

4  Como usar hosts.allow ou hosts.deny no Android  ( How to use hosts allow or hosts deny in android ) 
Existe uma maneira de usar os hosts de arquivos.allow e hosts.deny no Android? Eu procurei pela Internet, mas não encontrei nada. Eu tenho que controlar o ace...

1  Como usar um firewall e uma VPN?  ( How to use a firewall and a vpn ) 
Estou usando o único firewall de código aberto para o Android: NetGuard e gostaria de usar uma VPN além disso. Isso é possível? Em caso afirmativo: como ? ...

2  Bloqueio 'Sistema Android, aviso de bateria, com.media tek, serviço de dados comum ...' De conectar à Internet  ( Blocking android system battery warning com media tek common data service fro ) 
Eu estou usando o Norot firewall para bloquear o acesso à Internet a alguns aplicativos. Recentemente me notificou que este / estes app (s) estão tentando ace...

0  Há algum "iptables como" firewall para Android? [duplicado]  ( Are there any iptables like firewall for android ) 
. Esta pergunta já tem respostas aqui : fechado 9 anos atrás . . Duplicado possível: Existem ...

0  Bloco 4G quando o WiFi está disponível e limita o acesso a programas  ( Block 4g when wifi is available and limit access to programs ) 
Qual é a melhor maneira de configurá-lo? Se o Wi-Fi estiver disponível, o 4G permanece bloqueado. Quando o WiFi não estiver disponível, use 4G, mas apenas p...

15  Quais métodos posso usar para bloquear conteúdo adulto?  ( What methods can i use to block adult content ) 
Estou procurando por algo ao longo das linhas de K-9 para o meu telefone. Será que tal coisa existe? meu objetivo: para ter todo o conteúdo adulto bloqu...

0  "Sistema" está tentando acessar a Internet  ( System is trying to access internet ) 
Eu estou usando o OnePlus 3T, Android 9. Recentemente, eu instalei um aplicativo chamado "NorOot Firewall" para impedir que os aplicativos acessem a Internet....

5  Existem bons firewalls disponíveis? [fechado]  ( Are there any good firewalls available ) 
. FECHADO. Esta questão é off-tópico . Atualmente não está aceitando respostas. Quer melh...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.