BR102015015270A2 - Method for providing a safety mode for mobile device applications - Google Patents

Method for providing a safety mode for mobile device applications Download PDF

Info

Publication number
BR102015015270A2
BR102015015270A2 BR102015015270A2 BR 102015015270 A2 BR102015015270 A2 BR 102015015270A2 BR 102015015270 A2 BR102015015270 A2 BR 102015015270A2
Authority
BR
Brazil
Prior art keywords
applications
safe mode
user
application
kernel
Prior art date
Application number
Other languages
English (en)
Publication date

Links

Description

Relatório Descritivo da Patente de Invenção para: "MÉTODO PARA FORNECER UM MODO DE SEGURANÇA PARA APLICAÇÕES DE DISPOSITIVOS MÓVEIS".
Campo da Invenção [0001] A presente invenção refere se a um método para fornecer um novo modo de operação para dispositivos móveis: um modo de segurança (similar à operação de modo avião, já presente nos telefones inteligentes atuais) que adiciona uma camada de segurança para proteger a aplicação importante do usuário (tal como aplicações bancárias) e informação sigilosa (por exemplo, senhas, números de cartão de crédito, informação de conta bancária, fotos/videos privados, etc.).
Antecedentes da Invenção [0002] Hoje em dia, os dispositivos móveis (por exemplo: smartphones, tablets) estão cada vez mais sendo usados para realizar transações eletrônicas sigilosas, e também para armazenar uma quantidade considerável de informações privadas e confidenciais.
[0003] Enquanto os sistemas e serviços oferecidos através de dispositivos móveis de transação tornaram-se mais valiosos, sofisticados e de uso generalizado, a incidência de softwares maliciosos (malwares) e transações fraudulentas também aumentaram. Há muitas ameaças de segurança associadas aos dispositivos móveis, que foram invadidos com sucesso, tornando possível a um terceiro (invasor) obter de forma fraudulenta a senha do usuário e/ou qualquer outra informação sigilosa (por exemplo, números de cartões de crédito, informações de conta bancária, fotos/videos privados, etc.).
[0004] A maioria dos telefones inteligentes atuais usa o sistema operacional (OS) Android. Portanto, é compreensível que a maioria dos ataques de malware seja destinada ao OS Android. E também é conhecido que o modelo de segurança do Android tem vulnerabilidades. As aplicações mal escritas/ codificadas (isto é, uma falha de programação) podem permitir um possível vetor de ataque na comunicação entre aplicações e, consequentemente, um malware pode obter acesso não autorizado aos dados de aplicações para Android, mas esta não é a única razão para as vulnerabilidades de segurança do Android. Além de aplicações mal escritas/ codificadas, há outras maneiras de atacar aplicações e explorar essas vulnerabilidades se um invasor (cracker) tem um controle "ringO" ou tem acesso/ privilégio suficiente ( "ptrace" é um exemplo simples, onde um processo pode controlar e manipular o estado interno de outro processo).
[0005] Na verdade, o número crescente de malwares e ataques cibernéticos nos últimos anos ilustram essas vulnerabilidades da Internet e de segurança no sistema operacional Android: recentemente, a Interpol (Organização de Policia Criminal Internacional) e Kaspersky Lab (uma empresa de software de segurança da Internet) realizou a pesquisa "Mobile Cyber Threats" (publicado em outubro de 2014), que revelou que mais de 588.000 usuários do Android em todo o mundo foram atacados por malware financeiro entre agosto de 2013 e julho de 2014, que é seis vezes mais (600% de aumento) que o número do período equivalente a 12 meses anteriores (ou seja, agosto 2012 a julho de 2013) . Além disso, o estudo estima que 98,05% de todo o malware móvel existente tem como alvo os usuários de dispositivos Android; e somente no primeiro semestre de 2014, foram detectados 175.422 novos malwares exclusivos para Android. Mais detalhes podem ser encontrados no mencionado relatório "Mobile Cyber Threats", disponibilizado on-line em: http://media.kaspersky.com/pdf/Kaspersky-Lab-KSN-Report-mobile-cyberthreats-web.pdf.
[0006] Por essas e outras razões, é possível perceber claramente que a grande maioria das ameaças cibernéticas móveis é destinada para o sistema operacional Android e, infelizmente, os invasores ainda tem elevadas taxas de sucesso (indesejáveis).
[0007] Portanto, há uma necessidade de fornecer uma maneira de impedir o funcionamento de malwares, enquanto aplicações criticas estão em execução, evitando, assim, a fraude/ comprometimento da transação, minimizando as ameaças cibernéticas e roubo de informações pessoais/ confidenciais sendo usadas pela aplicação durante a sua execução.
[0008] O documento de patente US 7,849,311 B2, intitulado "Computer System with Dual Operating Modes", publicado em 07 de dezembro de 2010, descreve o método e sistema para criar um modo de segurança de computador. O sistema descrito implementa um sistema de arquivos seguro e não-seguro, em seguida, um ou outro sistema de arquivos é montado, de modo a determinar o modo de operação. Uma vez que o sistema de arquivos é montado, somente as aplicações presentes nele serão autorizadas para execução. Em resumo, ele implementa um tipo de Container que contém aplicações que terão permissão para executar em um modo especifico. A desvantagem desta solução é que o método não pode proteger contra o ataque simples de usuário privilegiado, uma vez que o sistema de arquivos seguro pode ser montado em qualquer altura e uma aplicação mal-intencionada pode estar incorporada/inserida. Além disso, esta não é uma boa solução para usuários não corporativos, uma vez que há uma boa chance de ter o código/programa malicioso de aplicação vulnerável instalada dentro do modo de segurança, tornando-o vulnerável como o modo não seguro.
[0009] O documento de patente US 8,499,171 B2, intitulado "Mobile Security System and Method", publicado em 30 de julho de 2013, divulga um sistema e método para fornecer um ambiente seguro para telefones móveis e outros dispositivos. O sistema e o método podem utilizar zoneamento de confiança, em camadas de memória, e um modelo de matriz segura que tem, por exemplo, um módulo de proteção de memória para proteger a memória; um módulo de depuração de segurança para garantir a segurança do módulo de depuração; um módulo de sistema de arquivo seguro para proteger o sistema de arquivos seguro; e um módulo de fonte de tempo confiável para proteger componentes. Este conceito já está presente no mercado, a solução Samsung KNOX o utiliza. A solução revelada na patente US 8,499,171 B2 é robusta, mas um equipamento especial é necessário, aumentando o custo do produto. Além disso, aplicações no mercado devem ser reescritas para usar uma API especial para ser autorizado a executar no ambiente seguro, isto torna a adoção de tal tecnologia muito difícil por usuários não corporativos.
[0010] No atual estado da técnica, temos encontrado soluções e tecnologias que usam o conceito de containers para criar ambientes diferentes no mesmo dispositivo, isolando grupos/agrupamentos de aplicações. No entanto, as soluções existentes não protegeríam as aplicações dentro do Container se este for infectado por um malware. Na verdade, se o Container já está infectado por um malware com alto privilégio, a interceptação de dados é possível: por exemplo, o malware poderia realizar um "despejo de memória" na aplicação que está executando e manipulando os dados (por "ptrace", ou em "controle ringO"). Neste caso, mesmo que os dados e/ou aplicações sejam armazenados num Container, não se pode garantir que ele está completamente "seguro". Em outras palavras: enquanto o malware puder executar/operar no ambiente do sistema operacional, existe um possível risco de atacar outras aplicações em execução (seja em um Container ou não).
[0011] Além disso, tecnologias e soluções existentes não conseguem melhorar a segurança de dispositivos sem tecnologia TrustZone. A tecnologia TrustZone é totalmente integrada em processadores Cortex®-A, presente em alguns aparelhos celulares, tablets, dispositivos portáteis e sistemas corporativos. As aplicações disponibilizadas pela tecnologia atual são extremamente variadas, mas incluem a tecnologia de proteção de pagamento, gerenciamento de direitos digitais, "Traga seu Próprio Dispositivo" (BYOD), e uma série de soluções empresariais de segurança. A maioria das soluções baseadas em containers usando TrustZone/ETE, como a Samsung MyKnox, não são adotadas por usuários não corporativos, uma vez que a maioria dos dispositivos no mercado não suportam MyKnox. TrustZone/T exige especificações/ requisitos superiores de equipamento (processador, memória, etc.), o que restringe o uso desta tecnologia apenas para modelos de telefones inteligentes principais/de alta qualidade. Assim, existe uma necessidade de fornecer uma solução "leve", que seja capaz de melhorar a segurança e também seja suportada pela maioria dos dispositivos.
[0012] Outra observação importante sobre o uso de soluções baseadas em containers: às vezes as aplicações a serem utilizadas no interior do Container devem ser reescritas para usar a API TrustZone. Isso significa que, mesmo usando a tecnologia TrustZone/T, não é uma garantia de que todas as aplicações de usuário importantes (como mensageiros, aplicações bancárias, etc.) são protegidas (a menos que elas estejam usando a referida API, soluções baseadas em TrustZone/T não conseguem realmente proteger estas aplicações).
[0013] É também importante diferenciar a solução proposta do conceito bem conhecido "lista branca de aplicações" (Application whitelist) . As técnicas tradicionais de "lista branca de aplicações" apenas especificam as aplicações a serem executadas. Dito isto, essas aplicações ainda podem atacar uma à outra (uma vez que não há nenhuma outra restrição de segurança aplicada à "lista branca de aplicações").
[0014] Diferentemente, a solução proposta na presente invenção exige que as aplicações devem ser pré-aprovadas para executar em "modo de segurança" e, para produzir o efeito desejado, essas aplicações também devem ser executadas em "modo de segurança" habilitado, em que muitas restrições de segurança são aplicadas (mais detalhado a seguir). Dito isto, mesmo com um grupo de aplicações que funcionam juntas em "modo de segurança", elas são protegidas entre si por restrições de segurança (o que não ocorre no conceito de "lista branca de aplicações").
[0015] Assim, uma pessoa versada na técnica pode notar que a solução proposta vai além do conceito já conhecido de "lista branca de aplicações", oferecendo não somente uma maneira de configurar uma "lista pré-aprovada de aplicações para serem executadas" (em uma maneira semelhante do conceito de "lista branca"), mas, adicionalmente, fornecendo meios para aplicar restrições de segurança nestas aplicações.
[0016] Neste cenário, é necessária uma solução que pode ser facilmente utilizada por usuários, a fim de evitar ataques cibernéticos que exploram as vulnerabilidades de segurança existentes do OS Android, com o objetivo de adicionar mais capacidade de resistência ao sistema operacional atual, mesmo se ele está infectado e não importando se o usuário está usando uma solução de Container ou não.
[0017] Nossa solução proposta não exigirá modificação de hardware, alteração ou aplicação de um novo sistema de arquivos seguro. O usuário irá usar o dispositivo como ele foi originalmente concebido. O novo modo de segurança proposto para celular permitirá que os usuários executem aplicações criticas selecionadas apenas quando o modo é ativado e irá impor permissões de acesso quando ele está desativado. Dito isto, mesmo se o ambiente estiver infectado, o malware não pode executar e não pode modificar arquivos benignos de aplicações criticas, mesmo se o modo de segurança está desativado.
Sumário da Invenção [0018] A presente invenção refere-se a um método para proteger aplicações móveis através da aplicação de um modo de operação seguro, o que acrescenta uma camada adicional de segurança para proteger aplicações do usuário importantes/ criticas (tais como aplicações bancárias, mensageiros, etc.) e informações sigilosas (por exemplo, senhas, números de cartão de crédito, informações de conta bancária, fotos/videos privados, mensagens de texto, etc.).
[0019] A informação suficiente dada a partir da aplicação a ser protegido e do sistema, o kernel do sistema operacional (SO) estabelece as regras e privilégios para estas aplicações, permitindo-lhes (e somente a elas) serem executadas sob muitas restrições de segurança em um determinado modo de operação do dispositivo móvel, que, no contexto da presente invenção, é chamado "modo de segurança".
[0020] O kernel é o núcleo central de um sistema operacional. Ele tem controle sobre tudo que ocorre no computador ou dispositivo móvel. É geralmente carregado em uma área protegida de memória, o que impede que ele seja substituído por outros programas de aplicações. Para a implementação do método da presente invenção, é necessário um novo módulo de kernel que fornece uma interface com as chamadas do Sistema de Arquivo (File System) , Agendador (Scheduler) e de Sistema (System). As modificações nos componentes do espaço do usuário (user-space) do sistema operacional Android também são necessárias.
[0021] Uma vez que o kernel do sistema operacional estabelece as regras e os privilégios para as aplicações escolhidas/selecionadas (ou seja, o kernel "sabe" - ou "foi informado pelo usuário" - quais são as aplicações que serão executadas em "modo de segurança") , cada vez que o usuário alterna (ativar ou desativar) o modo de funcionamento do dispositivo móvel, o kernel do sistema operacional irá aplicar restrições/paradas/suspensões ou vai liberar restrições/continuações/reinicios para as outras aplicações. Mais especificamente, quando o usuário habilita o "modo de segurança" do dispositivo móvel, o kernel do sistema operacional irá aplicar restrições/paradas/suspensões de todas as aplicações que não foram previamente escolhidas/selecionadas pelo usuário (incluindo eventuais malwares já presentes no ambiente do OS) ; analogamente, quando o usuário desativa o "modo de segurança" do dispositivo móvel, o kernel do sistema operacional irá liberar restrições/continuações/reinicios de todas as aplicações que foram interrompidas/suspensas no "modo de segurança". Além disso, muitas restrições de segurança (descritas a seguir) são aplicadas a fim de atenuar os riscos de segurança.
[0022] Mais especificamente, o objetivo da presente invenção é alcançado através de um método para fornecer um modo de segurança para aplicações de dispositivos móveis compreendendo as etapas de: configurar quais aplicações devem estar disponíveis no modo de segurança; definir no kernel do sistema operacional do dispositivo móvel as regras e privilégios para as aplicações definidas para o modo de segurança; verificar continuamente se o modo de segurança é ativado pelo usuário; caso o modo de segurança esteja ativado pelo usuário, então o kernel do sistema operacional procura os processos e aplicações em execução no sistema operacional, suspende as aplicações de sistema não configuradas para estarem disponíveis no modo de segurança, oculta a aplicação protegida, restringe comunicações entre processos,impede a escalação de privilégios e permite acesso aos arquivos de aplicação protegida pela Id de usuário de aplicação protegida; e caso o modo de segurança não esteja ativado pelo usuário, então, o kernel libera todos os processos e aplicações que foram parados pelo modo de segurança e nega qualquer acesso aos arquivos de aplicação protegida.
[0023] De acordo com o método proposto, enquanto o "modo de segurança" está ativado, os eventuais malwares existentes não estão autorizados a executar/operar no ambiente do OS (juntamente com todas as outras aplicações confiáveis/conhecidas que não foram previamente escolhidas/selecionadas pelo usuário para executar em "modo de segurança"), minimizando assim o risco de ataque de malware a aplicações criticas (sejam mal escritas/codifiçadas ou não; ou seja, em um Container de TrustZone ou não).
[0024] A fim de ser executado em "modo de segurança", o método da presente invenção deve ser iniciado a partir de um painel de configuração. O painel de configuração executa a aplicação e passa suas informações para o kernel, tais como a identificação do processo (process ID) . Antes de executá-lo, o kernel cessa quaisquer IPC/Sinais desnecessários e perigosos das aplicações de espaço do usuário para a aplicação protegida (ou seja, "ptrace", "SIGKILL", etc.) e também a esconde do espaço de usuário. Ambas as ações diminuem o risco de ataques/comunicação com a aplicação protegida.
[0025] Na próxima etapa, o kernel suspende/para todos os processos do espaço de usuário em execução desnecessários. Além disso, apenas os processos do sistema necessários e a aplicação protegida são capazes de criar novos processos e executar novos binários. Esta ação reduz o risco de um malware continuar a ser executado a partir de um novo processo malicioso.
[0026] Finalmente o kernel impõe restrições de privilégios durante o "modo de segurança", reduzindo o risco de um malware obter privilégios suficientes para tentar contornar todas as proteções.
[0027] Além disso, mesmo se o "modo de segurança" estiver desativado, o kernel restringirá operações de abrir/ler/escrever contra arquivos de aplicações criticas por binários e processos desnecessários. Assim, ele reduz o risco de modificações mal-intencionadas por um malware.
[0028] O método proposto supera as soluções existentes no estado da técnica, tendo em vista que: (i) não exige modificação de hardware ou um novo sistema de arquivos seguro; (ii) protege as aplicações em execução no ambiente do sistema operacional, mesmo que esteja infectada por um malware; (iii) também é capaz de melhorar a segurança dos dispositivos sem tecnologia TrustZone (ou similar). Portanto, o método da presente invenção difere das soluções existentes, como máquinas virtuais (VM), containers e elementos seguros TEE (Trust Execution Environment) .
Breve Descrição das Figuras [0029] Os objetivos e vantagens da presente invenção se tornarão mais claros através da descrição detalhada a seguir de uma concretização preferida, mas não limitativa da invenção, tendo em vista as figuras anexas, em que: [0030] A Figura 1 é um fluxograma do método proposto, que fornece um "modo de segurança" para dispositivos móveis.
[0031] A Figura 2 é uma breve ilustração de como um ataque pode ser realizado contra uma aplicação de usuário quando o dispositivo móvel foi infectado por um malware.
[0032] A Figura 3 é uma breve ilustração de como o usuário ativa e desativa o "modo de segurança".
[0033] A Figura 4 é uma breve ilustração do painel de configuração do "modo de segurança".
[0034] A Figura 5 é uma breve ilustração das consequências para o ambiente de sistema operacional quando o "modo de segurança" está ativado.
[0035] A Figura 6 é uma breve ilustração da execução de uma aplicação do usuário importante no "modo de segurança".
[0036] A Figura 7 é uma breve ilustração das consequências para o ambiente de sistema operacional quando o "modo de segurança" está desativado.
Descrição Detalhada da Invenção [0037] O método da presente invenção fornece uma nova funcionalidade de segurança para telefones inteligentes, tablets, televisões inteligentes, dispositivos vestiveis e outros dispositivos inteligentes executando um sistema operacional (preferivelmente, o sistema operacional Android). Portanto, o método para fornecer um modo de segurança para aplicação de dispositivos móveis podería, por exemplo, ser implementado através de uma atualização do kernel do sistema operacional Android.
[0038] A Figura 1 é um fluxograma que representa cada etapa do método proposto (1000) descrito na concretização preferida da presente invenção.
[0039] Inicialmente, o usuário pode configurar/escolher previamente e executar as aplicações disponíveis no "modo de segurança" (etapa 1050) . Geralmente, nesta etapa de pré-configuração, o usuário escolhe as aplicações mais importantes/críticas, que lidam com transações sigilosas e dados pessoais/confidenciais. Esta etapa/configuração pode ser executada a qualquer momento pelo usuário, a fim de adicionar ou excluir as aplicações a estarem disponíveis no "modo de segurança".
[0040] Após a confirmação da etapa anterior, o kernel do sistema operacional (OS) recebe a configuração, somente o painel de configuração será permitido a apresentá-la, e estabelece as regras, uma vez que o painel de "modo de segurança" executa a aplicação protegida (etapa 1100) . O painel de configuração envia a ID do processo de aplicação e localização binária de sistema (para os processos do sistema) para o kernel do sistema operacional, e elas são usadas para selecionar as aplicações a serem executadas no "modo de segurança" e isolá-las.
[0041] O método verifica continuamente se o "modo de segurança" foi ativado ou desativado pelo usuário (etapa 1200) .
[0042] Se o "modo de segurança" estiver ativado, o kernel do sistema operacional procura por todos os processos e aplicações em execução no Sistema Operacional (etapa 1300). Threads do kernel e apenas processos de sistema necessários estarão disponíveis para serem executados em conjunto com aplicações escolhidas/ selecionadas/configuradas. Uma lista de binários de sistema importantes será submetida ao kernel do sistema operacional, a fim de permitir os processos do sistema em "modo de segurança".
[0043] O kernel do sistema operacional suspende todos os processos/aplicações de sistema desnecessários, que não foram configurados para estarem disponíveis em "modo de segurança", oculta a aplicação protegida, restringe as comunicações entre processos e impõe restrições de escalação de privilégios. Além disso, somente a aplicação executada pelos processos do painel e do sistema é capaz de criar novos processos e executar binários.
[0044] Uma vez que a aplicação é iniciada a partir do painel de modo em "modo de segurança", o kernel do sistema operacional recebe a ID da aplicação e (etapa 1400) : - Oculta a aplicação protegida de outras aplicações da área de usuário; - Encerra quaisquer IPC/sinais desnecessários de processos do sistema e de aplicações (que não foram previamente configurados para estar disponível em "modo de segurança") para aplicações protegidas e os processos importantes do sistema; - Recusa que novas aplicações sejam iniciadas; somente as aplicações protegidas são capazes de chamá-las; - Recusa eventos de escalação de privilégios por: (i) recusar modificações de Id de usuário de processo em execução dentro do diretório de aplicações; (ii) recusa de qualquer execução binária a partir de processos com privilégio administrativo originados a partir do diretório de aplicações (ou seja: /data); (iii) recusar qualquer chamada para abrir chamadas do sistema a partir de processos com privilégio administrativo originados a partir do diretório de aplicações para diretórios do sistema raiz (ou seja: /system).
[0045] Além disso, o kernel do sistema operacional permite o acesso/privilégio (abrir, ler, escrever, executar) aos arquivos da aplicação protegida (etapa 1500), mediante a ID de usuário da aplicação protegida.
[0046] Se o "modo de segurança" está desativado, o kernel do sistema operacional libera/continua/reinicia todos os processos/aplicações que antes de serem paradas/suspensas pelo kernel do próprio sistema operacional durante o "modo de segurança" (etapa 1600). Por exemplo, o kernel do sistema operacional pode manter uma lista de todos os processos/aplicações que foram interrompidos/suspensos em "modo de segurança" (isso impediría o kernel do sistema operacional de, eventualmente, liberar/continuar um processo/aplicação que foi parado/suspenso por outra razão). Além disso, o kernel do sistema operacional nega qualquer acesso/privilégio (abrir, ler, escrever, executar) aos arquivos de aplicações protegidas e binários de processos de sistema importantes (etapa 1700), que adiciona alguma proteção contra modificação de dados, mesmo quando o "modo de segurança" está desativado.
[0047] Após as ações de proteção mencionadas acima serem tomadas pelo kernel do sistema operacional (etapas 1400 e 1500), torna-se muito difícil para o malware estabelecer comunicação com os processos do sistema e aplicações protegidas, substituir binários do sistema e arquivos da aplicação, e até mesmo ser capaz de executar, altera seus privilégios horizontalmente e verticalmente, em seguida, executar ataques. Na verdade, neste contexto onde o método proposto 1000 está operando como descrito acima, até onde se sabe, a única maneira de tentar um ataque seria substituir/repor um binário original do sistema por um binário modificado do sistema (capaz de executar as mesmas tarefas/ínstruções que o original, e, adicionalmente, executar o código malicioso). Mas realizar esta substituição em tempo de execução iria danificar o sistema. E, além disso, o método proposto 1000 iria proteger os binários de sistema fora do modo de segurança (etapa 1700), de modo que o invasor teria que acessar o kernel do sistema operacional e de alguma forma desabilitar todas essas proteções.
[0048] Como descrito acima, o método proposto pode ser implementado através de um novo módulo do kernel (patch) no sistema operacional Android, instalado/atualizado nos dispositivos alvos.
Visão geral do uso/operação do método proposto para proteger os dispositivos móveis com a funcionalidade de "modo de segurança": [0049] Para uma melhor compreensão do método proposto 1100, uma ilustração da sua utilização/operação é apresentada, de acordo com as Figuras 2 a 7.
[0050] De acordo com a Figura 2, uma aplicação maliciosa ou malware 100 pode ser inadvertidamente instalada pelo usuário durante uma transação/realização de download através da Internet, e em seguida, comprometer o dispositivo móvel 10. Muitas vezes, o malware 100 pode estar "escondido" dentro de uma aplicação de software "supostamente inofensiva" que foi instalada pelo usuário. Depois disso, o malware 100 continua a execução como qualquer outro processo de aplicação ou para o sistema operacional 101, esperando que uma aplicação importante 102 seja iniciada para atacá-la 103. Um ataque comum é chamado man-in-the-middle, em que o malware 100 intercepta 103 a aplicação 102, tentando modificar ou roubar dados importantes.
[0051] Neste cenário, quando o dispositivo móvel 10 é infectado por um malware 100 instalado em seu sistema operacional 101, qualquer aplicação do usuário 102 podería ser atacada. A presente invenção propõe uma solução eficaz para este cenário indesejável. Além disso, também é uma solução fácil de usar. De acordo com a Figura 3, o usuário pode ativar ou desativar o modo de operação de segurança a partir da tela inicial do dispositivo móvel, tocar e arrastar a barra de notificações para baixo e então pressionar o botão/ícone "modo de segurança" 104 [relacionado à etapa 1200 do método proposto]. Este é exatamente o mesmo procedimento que os usuários já usam para ativar ou desativar o "modo avião", GPS, Wi-Fi e algumas outras características dos atuais dispositivos móveis.
[0052] De acordo com a Figura 4, o usuário pode configurar o "modo de segurança" de operação (o que corresponde à etapa 1050 do método proposto). Há muitas maneiras possíveis para acessar o painel de configuração de "modo de segurança" 105, por exemplo: ao pressionar e segurar o ícone/botão de modo de segurança 104; ou através de uma opção extra no painel de configuração padrão dos atuais sistemas operacionais móveis. Uma vez no painel de configuração de "modo de segurança" 105, o dispositivo móvel muda para o modo de segurança e o usuário pode então selecionar quais aplicações são importantes para serem executadas em modo de segurança 106, por exemplo "Aplicação MeuBanco". Depois de escolher todas as aplicações sigilosas para estarem disponíveis em "modo de segurança", então o usuário digita uma senha para autenticar e aplicar/ confirmar a configuração 107 [etapa 1050]. Depois que a aplicação é executada pelo "modo de segurança", a configuração é enviada para o kernel do sistema operacional [etapa 1100] que irá aplicar as regras quando o "modo de segurança" está ativado: apenas as aplicações escolhidas e executadas pelo painel de "modo de segurança", processos de sistema necessários e threads de kernel encontram-se disponíveis (com privilégio) para execução, todos os outros processos e aplicações são interrompidos/suspensos/ "congelados", IPC/sinais restringidos, aplicação protegida é ocultada e modificações de privilégios são negadas [etapas 1300-1500]. Como mencionado, muitas vezes, o malware 100 pode estar "oculto" dentro de uma aplicação de software "supostamente inofensiva" que foi instalada pelo usuário, por isso é fundamental parar/suspender qualquer aplicação supérflua/desnecessária durante o "modo de segurança" (por exemplo, se o usuário deve utilizar somente a "Aplicação MeuBanco" enquanto em "modo de segurança", ele/ela pode pedir para parar/suspender todas as outras aplicações, a fim de evitar possíveis ataques de malware).
[0053] A Figura 5 apresenta uma situação onde o "modo de segurança" foi habilitado pelo usuário, e assim o kernel aplica as regras (pré-configuradas) : todos os processos e aplicações (por exemplo: Appl, App2 App3, App4, etc.) estão parados/suspensos/"congelados" 108 [etapas 1300 e 1400], a exceção é a "Aplicação MeuBanco" 102, que foi configurada e/ou escolhida anteríormente para executar em "modo de segurança". Por esta razão, o kernel do sistema operacional permite o acesso aos arquivos das aplicações escolhidas/ protegidas (abrir, ler, escrever, executar) pela ID de usuário de aplicação protegida [etapa 1500] . Além disso, não é permitida a criação de qualquer nova aplicação e qualquer aplicação não tem permissão para interagir com aplicações protegidas/escolhidas. Neste cenário, onde o "modo de segurança" está ativado, mesmo se o dispositivo móvel 10 é infectado por um malware 100 instalado em seu sistema operacional 101, o kernel irá parar/suspender/ "congelar" o malware 100 e ele não pode atacar 109 a "Aplicação MeuBanco" 102, ou qualquer outra aplicação crítica protegida. De preferência, um "ícone de modo de segurança" 110 aparece na barra de notificação do topo da tela/visor do telefone inteligente (assim como outros ícones existentes, como por exemplo: Bluetooth, Wi-fi, nível de batería, etc.), a fim de informar ao usuário que o "modo de segurança" está ativado.
[0054] Depois de habilitar a opção "modo de segurança" do dispositivo móvel 10, o usuário agora tem um modo de segurança para executar e usar as aplicações sigilosas, por exemplo, "Aplicação MeuBanco" 102, como mostra a Figura 6. Neste momento, a execução somente desta aplicação é permitida, reduzindo o risco de ataques contra a mesma.
[0055] De acordo com a Figura 7, depois de finalizar de forma segura a operação de "Aplicação MeuBanco", o usuário pode desativar a opção "modo de segurança" pressionando o respectivo botão/ícone 104, da mesma maneira como apresentado na Figura 3. Uma vez que o "modo de segurança" está desativado, todas as aplicações são liberadas pelo kernel do sistema operacional [etapa 1600]. Além disso, qualquer acesso (abrir, ler, escrever, executar) aos arquivos das aplicações protegidas é negado, o que adiciona alguma proteção contra a modificação de dados quando o "modo de segurança" é desativado [etapa 1700] . O sistema operacional 101 retorna ao modo de operação normal/padrão, onde todos os processos/aplicações podem ser executados.
[0056] Embora a presente invenção tenha sido descrita em conexão com certa concretização preferencial, deve ser entendido que não se pretende limitar a invenção àquela concretização particular. Ao contrário, pretende-se cobrir todas as alternativas, modificações e equivalentes possíveis dentro do espírito e do escopo da invenção, conforme definido pelas reivindicações em anexo.
REIVINDICAÇÕES

Claims (6)

1. Método (1000) para fornecer um modo de segurança para aplicações de dispositivos móveis (10) caracterizado pelo fato de que compreende as etapas de: configurar (1050) quais aplicações o usuário deseja que estejam disponíveis em modo de segurança; definir (1100) no kernel do sistema operacional do dispositivo móvel as regras e privilégios para as aplicações definidas para o modo de segurança; verificar (1200) continuamente se o modo de segurança é ativado pelo usuário; caso o modo de segurança esteja ativado pelo usuário, então: o kernel do sistema operacional procura (1300) todos os processos e aplicações atualmente em execução no sistema operacional; o kernel suspende (1400) todas as aplicações de sistema desnecessárias ou não configuradas para estarem disponíveis no modo de segurança, oculta a aplicação protegida, restringe comunicações entre processos e impõe restrições de escalação de privilégios; o kernel permite (1500) acesso/privilégio aos arquivos de aplicação protegida pela ID de usuário de aplicação protegida; e caso o modo de segurança não esteja ativado pelo usuário, então: o kernel libera (1600) todos os processos e aplicações que foram parados/suspensos pelo modo de segurança; o kernel nega (1700) qualquer acesso/privilégio aos arquivos de aplicação protegida.
2. Método (1000), de acordo com a reivindicação 1, caracterizado pelo fato de que a etapa de configurar (1050) as aplicações disponíveis em modo de segurança compreende selecionar em uma interface gráfica de usuário ou painel de configuração, as aplicações em uma lista de aplicações (106) do dispositivo móvel (10), e informar uma senha de usuário para confirmar (107) a configuração de modo de segurança.
3. Método (1000), de acordo com a reivindicação 2, caracterizado pelo fato de que um ícone de modo de segurança (110) é exibido na barra de notificação superior da tela de um dispositivo móvel (10) para indicar que o modo de segurança está habilitado.
4. Método (1000), de acordo com a reivindicação 1, caracterizado pelo fato de que somente processos de sistema necessários e a aplicação protegida criam novos processos e executam novos binários.
5. Método (1000), de acordo com a reivindicação 1, caracterizado pelo fato de que a aplicação do dispositivo móvel (10) compreende informação pessoal e sigilosa do usuário, tal como senha, número de cartão de crédito, informação de conta bancária, videos/fotos privados, mensagens de texto, entre outras.
6. Método (1000), de acordo com a reivindicação 1, caracterizado pelo fato de que os dispositivos móveis (10) compreendem telefones inteligentes, tablets, televisões inteligentes, dispositivos vestiveis e outros dispositivos inteligentes executando um sistema operacional.

Family

ID=

Similar Documents

Publication Publication Date Title
BR102015015270B1 (pt) Método para fornecer um modo de segurança para aplicações de dispositivos móveis
US11599650B2 (en) Secure computing system
US10162975B2 (en) Secure computing system
US10061928B2 (en) Security-enhanced computer systems and methods
EP2973171B1 (en) Context based switching to a secure operating system environment
WO2010123565A1 (en) System and method for protecting against malware utilizing key loggers
Mannan et al. Unicorn: Two-factor attestation for data security
Atamli-Reineh et al. Analysis of trusted execution environment usage in samsung KNOX
Zaidenberg Hardware rooted security in industry 4.0 systems
RU84594U1 (ru) Накопитель с защитой от несанкционированного доступа к памяти
ES2951417T3 (es) Procedimiento y sistema para proteger un archivo informático ante un posible cifrado de software malicioso
Michalska et al. Security risks and their prevention capabilities in mobile application development
Yan et al. SplitDroid: isolated execution of sensitive components for mobile applications
WO2022254330A1 (en) Zero vulnerability computing (zvc) for the next generation internet devices
Philip et al. A Formal Overview of Application Sandbox in Android and iOS with the Need to Secure
BR102015015270A2 (pt) Method for providing a safety mode for mobile device applications
Khalid et al. Hardware-Assisted Isolation Technologies: Security Architecture and Vulnerability Analysis
WO2011007017A1 (es) Dispositivo electrónico de generación de entorno seguro
EP3454508A1 (en) Method for internet transactions
Brasser et al. Regulating smart personal devices in restricted spaces
Schwendemann ERNW NEWSLETTER 55/SEPTEMBER 2016
Wurster et al. System configuration as a privilege
Fekolkin Securing Windows Embedded 8.1: Lockdown features and BitLocker
Lau et al. Accessing Trusted Web Sites from Low-Integrity Systems without End-Host Snooping