4 preocupações de segurança para desenvolvimento low-code e no-code

Low-code não significa baixo risco. Ao permitir que mais pessoas em uma empresa desenvolvam aplicativos, o desenvolvimento cria novas vulnerabilidades

Author Photo
4:26 pm - 21 de fevereiro de 2022
programador, programadora, mulher, códigos Imagem: Shutterstock

Há um impulso crescente para o que está sendo apelidado de “desenvolvedor cidadão”, juntamente com o desejo de capacitar o desenvolvimento e a criação de aplicativos por não desenvolvedores. Isso geralmente é facilitado usando estruturas de low-code ou no-code. Essas estruturas e ferramentas permitem que não desenvolvedores usem uma GUI para capturar e mover componentes para tornar os aplicativos amigáveis à lógica de negócios.

Capacitar mais amplamente a comunidade de TI e de negócios para criar aplicativos para gerar valor comercial tem um apelo óbvio. Dito isto, o uso de plataformas de low-code e no-code não deixa de ter suas próprias preocupações de segurança. Assim como qualquer outro produto de software, o rigor no desenvolvimento da plataforma e seu código associado é uma preocupação que não deve ser menosprezada.

O que é desenvolvimento low-code/no-code?

As ferramentas e plataformas no-code usam uma interface de arrastar e soltar para permitir que não programadores, como analistas de negócios, criem ou modifiquem aplicativos. Em alguns casos, a codificação real (low-code) pode ser necessária para integração com outros aplicativos, geração de relatórios ou modificação da interface do usuário. Isso normalmente é feito usando uma linguagem de programação de alto nível, como SQL ou Python.

Exemplos de plataformas low-code/no-code incluem Salesforce Lightning, FileMaker, Microsoft PowerApps e Google App Maker. Essas são as quatro preocupações de segurança mais importantes para o uso de tais plataformas.

1. Baixa visibilidade em aplicativos low-code/no-code

Usar uma plataforma que foi desenvolvida por uma parte externa sempre traz preocupações de visibilidade. Você está consumindo o software e, portanto, não sabe sobre o código-fonte, vulnerabilidades associadas ou potencialmente o nível de teste e rigor que a plataforma passou.

Isso pode ser mitigado aproveitando práticas como solicitar uma lista de materiais de software (SBOM) do fornecedor. Isso forneceria informações sobre os componentes de software que ele contém e suas vulnerabilidades associadas. O uso de SBOMs está em ascensão, com o último estudo da Linux Foundation indicando que 78% das organizações planejam usar SBOMs em 2022. Dito isso, o uso de SBOMs ainda está amadurecendo e há muito espaço para o setor normalizar práticas, processos e ferramentas.

2. Código inseguro

Alinhando-se com as preocupações de visibilidade está a possibilidade de código inseguro. As plataformas low-code e no-code ainda têm código; eles apenas abstraíram a codificação e permitiram que o usuário final usasse a funcionalidade de código pré-fornecida. Isso é ótimo, pois evita que o não desenvolvedor precise criar o próprio código. Onde fica problemático é quando o código usado é inseguro e é extrapolado entre organizações e aplicativos por meio das plataformas low-code e no-code.

Uma maneira de resolver isso é trabalhar com o fornecedor da plataforma para solicitar os resultados da verificação de segurança para o código usado na plataforma. Resultados de varredura como os de testes de segurança de aplicativos estáticos e dinâmicos (SAST/DAST) podem dar aos consumidores um nível de garantia de que eles não estão apenas replicando código inseguro. A ideia de código criado fora do controle de uma organização não é um conceito novo e é predominante no uso desenfreado de software de código aberto, que é usado por mais de 98% das organizações e também com ameaças da cadeia de suprimentos de software associadas a outros repositórios, como aqueles para modelos de infraestrutura como código (IaC).

Outro aspecto a ser considerado é que muitas plataformas low-code e no-code são entregues como software como serviço (SaaS). Isso coloca você em posição de solicitar ao fornecedor certificações do setor, como ISO, SOC2, FedRAMP e outras. Isso fornece mais garantia em relação aos controles operacionais e de segurança da organização aplicáveis ao próprio aplicativo/plataforma SaaS.

Os aplicativos SaaS apresentam muitos riscos de segurança e garantem governança e rigor de segurança adequados. Sem examinar adequadamente os aplicativos e plataformas SaaS que sua organização está usando, você pode estar expondo a organização a riscos indevidos. Isso é agravado ainda mais se as plataformas low-code e no-code forem usadas para desenvolver aplicativos que exporão dados confidenciais da organização ou do cliente.

3. Shadow IT fora de controle

Como as plataformas low-code e no-code permitem que os aplicativos sejam criados rapidamente, mesmo por aqueles sem experiência em desenvolvimento, isso também pode levar a uma shadow IT desenfreada. Shadow IT ocorre quando as unidades de negócios e a equipe criam aplicativos e os expõem internamente na organização ou externamente ao mundo. Esses aplicativos podem abrigar dados organizacionais, de clientes ou regulamentados confidenciais, o que pode ter uma série de implicações para a organização se esses aplicativos forem comprometidos em uma violação de dados.

4. Interrupção dos negócios

De uma perspectiva de continuidade de negócios, a dependência de plataformas low-code e no-code entregues como um serviço pode atrapalhar os negócios se essa plataforma sofrer uma interrupção. É importante que as organizações estabeleçam acordos de nível de serviço (SLAs) para aplicativos essenciais aos negócios, incluindo plataformas low-code e no-code.

Dicas para mitigar o risco do desenvolvimento com low-code/no-code

As melhores práticas de segurança comuns podem mitigar os riscos descritos acima, independentemente da tecnologia envolvida, incluindo:

  • Compre software e plataformas de fornecedores confiáveis ​​com reputação respeitada no setor.
  • Certifique-se de que esses fornecedores tenham certificações atestadas por terceiros para representar suas práticas e processos internos de segurança.
  • Considere as plataformas low-code e no-code em seus inventários de aplicativos e software, bem como os aplicativos criados por meio de seu uso.
  • Mantenha um bom controle de acesso; saiba quem está acessando as plataformas e quais atividades eles estão autorizados a realizar.
  • Implemente práticas de dados seguras para entender onde seus dados críticos residem e se os aplicativos criados usando plataformas low-code/no-code hospedam dados confidenciais.
  • Saiba onde as plataformas low-code/no-code estão hospedadas. As plataformas estão hospedadas em um provedor de serviços de nuvem (CSP) global em hiperescala, como AWS, Google ou Microsoft Azure? Ou eles estão hospedados em um data center local legado com controle de acesso limitado ou lógico?

Também é importante considerar a cultura de segurança da sua organização. Embora os usuários da plataforma possam não ser desenvolvedores ou profissionais de segurança de profissão, eles devem entender as implicações de segurança das plataformas e aplicativos low-code e no-code que estão usando e criando. Com grande poder vem grande responsabilidade como eles disseram, e isso é aplicável aqui com plataformas low-code e no-code.

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.