BLOG

Como os aplicativos modernos são criados e implantados

Miniatura de Frank Kyei-Manu
Frank Kyei-Manu
Publicado em 04 de outubro de 2022

Os aplicativos se tornaram essenciais para todos os aspectos da nossa vida diária. Para destacar alguns exemplos, eles nos permitem:

  • Peça comida — a maneira como comemos tem cada vez mais a ver com aplicativos.
  • Como nos locomover: a maneira como organizamos o transporte tem a ver com as aplicações.
  • Conheça pessoas — a maneira como nos conectamos geralmente é possibilitada e alimentada por aplicativos.

Embora essas mudanças tenham se originado antes da COVID-19, a pandemia sem dúvida acelerou nossa dependência de aplicativos.

A maneira como trabalhamos muda para sempre com equipes híbridas ou completamente virtuais. A forma como pagamos pelas coisas mudou com tecnologias de pagamento sem contato, como Apple Pay, Venmo, PayPal, etc. Além disso, a forma como obtemos acesso a serviços em muitos países hoje em dia — restaurantes, aviões, cinemas — exige cada vez mais que tenhamos certos aplicativos que (figurativa e literalmente) abrem portas. Como resultado, os aplicativos estão crescendo.

Vamos tirar um momento para quantificar. Em 2019, já havia 1 bilhão de aplicativos em uso no mundo. Até 2025, espera-se que esse número aumente cinco vezes (IDC, Workloads Forecast, outubro de 2021).

O risco crescente de ataques cibernéticos

À medida que dependemos cada vez mais de aplicativos, tornou-se essencial mantê-los protegidos contra ameaças e ataques cibernéticos. Isso ocorre porque até mesmo uma única exploração ou violação pode resultar em consequências terríveis com grandes custos pessoais, organizacionais e sociais.

Você já se sentiu frustrado com um aplicativo porque sua capacidade de resposta fica lenta a ponto de expirar ou ficar completamente sem resposta? Você já passou pela experiência infeliz de ter suas credenciais pessoais roubadas e monetizadas?

Exemplos recentes de ataques cibernéticos estão bem documentados. Vimos marcas globais como Microsoft, Facebook, Walgreens, T-Mobile e outras serem impactadas negativamente ou violadas, com milhões de seus clientes afetados.

Infelizmente, à medida que os aplicativos foram modernizados, protegê-los se tornou ainda mais difícil. Portanto, é importante entender a anatomia de um aplicativo, como ele evoluiu ao longo do tempo e por que o design moderno de aplicativos expande inerentemente a área de superfície de ataque.

Então, vamos embarcar coletivamente na jornada para aplicações modernas.

A jornada para aplicações modernas

Primeiro, volte mais de 25 anos para quando os aplicativos eram grandes, monolíticos e peças únicas de software. Eles foram instalados em um único servidor (um grande computador que fornece funcionalidade para o aplicativo) e um sistema operacional como o Windows NT.

Anos mais tarde, a virtualização tornou possível instalar e executar vários servidores de aplicativos em um único hardware e compartilhar seus recursos.

A próxima foi a ampla adoção da nuvem, que proporcionou disponibilidade de infraestrutura de computação ilimitada e sob demanda, evitando a necessidade de investimentos iniciais intensivos em capital em data centers.

Apesar de todos esses avanços, os desenvolvedores de aplicativos exigiam maior agilidade e recursos de desenvolvimento mais granulares. Isso levou ao nascimento dos contêineres — a próxima iteração da virtualização. Um contêiner fornece uma parte pequena e leve da arquitetura geral do aplicativo para controlar e modularizar a virtualização de aplicativos.

Vamos usar um aplicativo móvel de varejo típico como exemplo. Da perspectiva de um desenvolvedor de aplicativo, o desenvolvimento pode ser dividido em componentes distintos, por exemplo, informações de login e conta, inventário, pedidos e relatórios e análises. Isso ajuda o desenvolvedor a adicionar, trocar ou alterar uma parte do aplicativo sem precisar fazer alterações substanciais no aplicativo.

O aplicativo geral é modularizado com serviços — geralmente chamados de microsserviços — entregues em clusters. Além disso, o que vincula cada um desses componentes do aplicativo, incluindo sua conexão com aplicativos de terceiros, é uma interface de programação de aplicativos (API), que facilita a comunicação de serviço para serviço que conecta os aplicativos (mais sobre isso em nosso quarto blog desta série).

Figura 1: Arquitetura de um aplicativo de varejo de exemplo

Enquanto isso, no entanto, à medida que a tecnologia e a arquitetura evoluíram para permitir o desenvolvimento e a entrega de aplicativos mais ágeis, a complexidade se tornou um problema.

Protegendo aplicativos e APIs em um mundo distribuído

No último quarto de século, evoluímos de um mundo de aplicativos monolíticos vinculados a uma única peça de hardware em uma sala de servidores ou data center para aplicativos modernos baseados em contêineres e microsserviços que são criados e implantados em qualquer lugar — em um data center, em várias nuvens e na borda (para aproximar a computação do aplicativo de um usuário ou fonte de dados e minimizar a latência).

Obviamente, uma abordagem de perímetro para segurança não é mais viável. A computação que antes ficava confinada em um único servidor, agora acontece literalmente em qualquer lugar. E embora tudo isso precise de segurança (obviamente), aplicar uma ferramenta de segurança exclusiva para cada componente é igualmente inviável. Seria quase como se uma empresa global permitisse que cada funcionário comprasse sua própria apólice de seguro (e depois pagasse por cada uma individualmente) em vez de ter uma apólice de grupo flexível que os funcionários pudessem optar.

O enigma resultante é que proteger aplicativos e APIs nunca foi tão desafiador. É em parte por isso que hoje em dia a empresa média investe duas vezes mais dinheiro em segurança do que em TI convencional (IDC, Workloads Forecast, outubro de 2021). Além disso, os riscos nunca foram tão altos, pois as violações podem ter efeitos desastrosos tanto para as empresas quanto para os clientes. 

Assista ao vídeo abaixo para saber como a F5 está fornecendo às organizações tecnologia que garante que seus aplicativos favoritos estejam protegidos e que suas experiências digitais estejam sempre seguras.
 

A seguir, nesta série de quatro partes para o Mês de Conscientização sobre Segurança Cibernética, exploraremos mais ataques e esquemas de invasores para explorar aplicativos e APIs, e como organizações e usuários de aplicativos podem se manter protegidos.