Usando Atalhos para Contornar os Avisos de Chamada do Chrome para iOS

A pesquisa demonstra uma forma de contornar o prompt de confirmação para iniciar aplicativos de terceiros. Ela usa o aplicativo Atalhos integrado e seus esquemas de URL shortcuts:// e o legado workflow://. A URL pode incluir os parâmetros x-error, x-success ou x-cancel, ou seja, outra URL que o Atalhos abrirá após o atalho falhar, ter sucesso ou ser cancelado. Isso pode ser, por exemplo, uma chamada via tel: ou facetime:. O sistema operacional a abre diretamente, contornando o Chrome, então o navegador nunca verifica o destino final.
A vulnerabilidade recebeu o identificador CVE-2026-13795. Ela permitia que uma página da web iniciasse um aplicativo instalado com um único toque, sem confirmação do navegador.
Primeiro: o Atalhos abria sem aviso. Antes de iniciar aplicativos de terceiros, o Chrome geralmente pede confirmação ao usuário. Ele tratava o Atalhos como um aplicativo confiável da Apple e o abria imediatamente. Segundo: o Atalhos pode abrir uma URL após um atalho terminar de executar. Os parâmetros x-success, x-cancel e x-error contêm URLs completas. O Atalhos as segue após uma execução bem-sucedida, cancelamento ou erro. O esquema de URL pode ser qualquer coisa, incluindo tel:. Terceiro: o Chrome verificava apenas a primeira URL da cadeia. O navegador permite um link de chamada direta apenas se o usuário tocou recentemente na tela. Mas uma chamada iniciada depois pelo Atalhos nunca chega ao Chrome.
Juntando tudo:
html
<a href="shortcuts://run-shortcut?name=nonexistent&x-error=tel%3A%2F%2FPHONE_NUMBER">Continue</a>```
1. A vítima toca no link no Chrome.
2. O Chrome abre o Atalhos sem aviso.
3. O Atalhos armazena a URL de chamada como a ação a executar em caso de erro.
4. O atalho solicitado não existe, e a execução termina com erro.
5. O Atalhos pede ao sistema para abrir a URL de chamada.
6. O iOS passa a solicitação telefônica para o manipulador registrado, normalmente o aplicativo Telefone.
O Chrome esteve envolvido na segunda etapa, mas não na quinta. Ele permitiu que uma página da web abrisse uma URL tratada por um aplicativo instalado com um único toque, contornando o prompt de confirmação do Chrome para o destino final.

Correção: o Chromium agora pede confirmação antes de abrir qualquer URL do Atalhos. A verificação é feita na primeira transição, então URLs aninhadas não precisam ser analisadas.

Artigo: https://blog.doyensec.com/2026/09/24/chrome-ios-policy-bypass.html
Vulnerabilidades
Fornecedor
Produto