Muitos aplicativos da OS App Store estão listados como "app" danificados e não podem ser abertos

11

Sem ter alterado nada, agora recebo esta mensagem quando tento abrir o aplicativo "Breeze" - Outros aplicativos falham da mesma forma em outros Macs:

insira a descrição da imagem aqui

Tentei me livrar dessa mensagem reinstalando-a na App Store, mas nada muda. Reiniciar e alterar as preferências de segurança do gatekeeper também não ajuda ao escolher "permitir o download de aplicativos de qualquer lugar".

Que diabos está acontecendo?

Corsin Pfister
fonte
Você acha que isso pode estar relacionado ao meu problema ? (Ironicamente, hoje é meu aniversário.)
geokavel

Respostas:

17

Quase todo mundo está no mesmo barco que você. A situação é bastante complicada, mas esta imagem mostra alguns dos detalhes das camadas de certificados envolvidas na criação de um arquivo "recibo":

insira a descrição da imagem aqui

Os engenheiros da Apple usaram um certificado marcado como Não é válido após: 11 de novembro às 21:58:01 2015 GMT para assinar aplicativos que foram baixados por um longo período este ano. Além disso, um dos certificados costumava ser assinado com o algoritmo de assinatura: sha1WithRSAEncryption e está em transição para sha256WithRSAEncryption, que não é totalmente suportado por todos os SO e desenvolvedores.

A melhor redação (de muitas boas) é de Ben Toms:

Em poucas palavras, uma das chaves que compõem o invólucro usado pelos aplicativos para verificar um download adequado da App Store expirou ontem. A Apple renovou esse certificado, mas você pode precisar executar agora para corrigir esse erro.

Estranhamente, os aplicativos que a própria Apple criou confiam em alguma outra cadeia de confiança de validação, uma vez que incluem esse mesmo certificado agora expirado e ainda rodam no OS X. Basicamente, esses aplicativos parecem usar outra (ou nenhuma) validação do recebimento para correção .

Se você estiver familiarizado com a linha de comando, tente reiniciar o processo que atende a esses recibos de aplicativos desatualizados agora:

killall -KILL storeaccountd

Se você desligar o Mac, isso também faz o ciclo do daemon de contas e deve corrigir as coisas, para que você não precise baixar novamente os aplicativos para o computador após o período em que o certificado da Apple expirou.

Nesse ponto, ao tentar executar o aplicativo, você deve ser solicitado a redigitar sua senha uma vez. Isso fornecerá a você um novo certificado da Apple, que pode ou não solucionar a quebra real, dependendo de como ou se o aplicativo usar o arquivo de recebimento.

Outra coisa que pode curar falhas de certificado falso é verificar as configurações de data / hora e tentar sair totalmente da Mac App Store. Se você ainda não conseguir executar o aplicativo após fazer login novamente, poderá ser forçado a excluir o aplicativo e fazer o download novamente após verificar sua data / hora e reiniciar o sistema operacional. Verifique os holofotes e exclua todas as cópias do aplicativo. Esvazie a lixeira antes de tentar restaurar o download.

Se tudo mais falhar, entrar em contato com o desenvolvedor do seu aplicativo específico e com o Suporte da Apple para obter orientação pode ser prudente, pois os programas que lidam com essa validação e geração de recibo não estão bem documentados.

Muito obrigado também a Craig Hockenberry e Paul Haddad pelas excelentes explicações técnicas sobre o que está acontecendo aqui. Sem a comunidade trabalhando juntos, podemos ficar no escuro por muito mais tempo quando surgem rupturas desconfortáveis ​​como essa.

bmike
fonte
Além disso, é um pouco doloroso para escolher distante as mensagens de erro relacionadas com storelegacy de CommerceKit, inofensivo de significativos sandboxderros, storeassetd, storeuid, storeaccountde storelegacyprocessar mensagens e erros para descobrir o que mudou após a reinicialização após o tempo de falha para OS X para atualizar o recibo que foi armazenado em cache no sistema de arquivos com uma data de validade mais recente. Seria bom ter um pouco disso documentado ou uma opção para ativar, para que você possa carregar um aplicativo quando a próxima cadeia de confiança falhar devido a erro do usuário ou previsão insuficiente dos desenvolvedores do sistema operacional.
bmike
Infelizmente isso não me ajudou. Reiniciar, reinstalar, interromper o processo acima, verificar a data / hora e sair e voltar à App Store não ajudou. Este é um Mac 10.10.5. A abertura no prompt de comando também não ajudou: $ open -a Breeze.app LSOpenURLsWithRole () falhou para o aplicativo /Applications/Breeze.app com o erro -10810
Andrew
Muito obrigado pela sua resposta. Infelizmente, nada disso ajuda. Mais detalhadamente, tentei o truque da linha de comando, reiniciei, digitei a senha novamente, mas continuo recebendo essa mensagem. As configurações de data / hora parecem boas para mim (o que devo verificar lá?) Depois de reinstalá-lo, ainda recebo a mesma mensagem. Alguma ideia?
Corsin Pfister
Acabei de receber uma ligação telefônica com o Suporte da Apple e usando algum compartilhamento de tela para experimentar algumas coisas. Isso inclui: verificação de data e hora, exclusão / movimentação de algumas coisas da Biblioteca, reinicialização, verificação de outros aplicativos de terceiros (que não foram afetados). Eu também fiz com que o pessoal do suporte estivesse ciente dessa pergunta aqui no AskDifferent. Depois de tentar várias coisas que não ajudaram, ele sugeriu entrar em contato com os criadores do Breeze (o que eu farei) e me deu o ID do caso, caso eu queira entrar em contato com o Suporte da Apple novamente.
Corsin Pfister
Eu adicionei mais um passo. @CorsinPfister - verifique se há várias cópias do aplicativo e exclua a lixeira. Também desconectaria minha unidade do Time Machine depois de fazer um backup para ter 100% de certeza de que o storeaccountsdprocesso recebe um novo recibo para o aplicativo em questão. É altamente improvável que este seja o problema do desenvolvedor. Todos eles não cometeram o mesmo erro ontem às 1800 GMT. Espero que a Apple documente melhor as coisas daqui para frente.
bmike
7

Parece que os recibos incorporados nos aplicativos baixados da Mac App Store estão sendo assinados com um certificado expirado.

Paul Haddad, do Tapbot, apontou a questão hoje cedo no Twitter.

https://twitter.com/tapbot_paul/status/664653066679906304

Para alguns usuários, a reinicialização é suficiente para solicitar que o sistema operacional recupere novos recebimentos da Loja. Outros usuários acham que estão sendo solicitados a fazer login na Mac App Store novamente para atualizar os recibos de aplicativos. Outros desenvolvedores como o C-Command Software sugerem que os usuários excluam aplicativos e os baixem novamente .

Alistair McMillan
fonte
Isso não é tudo o que há na história. Eu tenho aplicativos que ainda são iniciados, apesar de terem sido assinados com o certificado marcado para não ser válido após 11 de novembro 21:58:01 2015 GMT - Xcode, por exemplo, ainda é executado, então estou pesquisando o que pode ser feito antes da exclusão e reinstalar cada aplicativo que o OS X sente agora está "danificado".
bmike
2
Talvez o sistema operacional não verifique o recibo a cada lançamento do aplicativo. E / ou talvez apenas verifique após um período de inatividade. Você assumiria que isso foi documentado em algum lugar. :)
Alistair McMillan
1
Como é uma grande surpresa para a maioria das pessoas o fato de os aplicativos "expirarem" e será uma dor real para as pessoas que voam em um avião ou em uma viagem longe do WiFi continuar trabalhando no Mac OS, eu esperaria uma explicação pública do Apple sobre o que aconteceu, por que aconteceu e como corrigir / impedir que isso aconteça no futuro. Basicamente, o Gatekeeper precisa de uma função para relatar os aplicativos expirados antecipadamente e de uma alternância para substituir temporariamente essa verificação. Egg no rosto da Apple, com certeza, sobre como eles falharam em educar os usuários e cuidar deles.
bmike
2
Acho incrível que as empresas tenham problemas regularmente com a validade dos certificados. Se eles tivessem alguma maneira de se lembrar automaticamente de que certas coisas precisam ser renovadas em determinados dias.
Alistair McMillan