image

Acesse bootcamps ilimitados e +750 cursos pra sempre

75
%OFF
Cristiano Costa
Cristiano Costa14/11/2026 13:07
Compartilhe

GuardAI — Agente Inteligente para Cibersegurança e Análise de Vulnerabilidades

    A Inteligência Artificial está ampliando as possibilidades de atuação em diversas áreas da tecnologia. Na Cibersegurança, ela pode ajudar a organizar conhecimentos, compreender vulnerabilidades e orientar profissionais na identificação e correção de riscos.

    Foi a partir dessa proposta que desenvolvi o GuardAI — Agente Inteligente para Cibersegurança e Análise de Vulnerabilidades, como parte de um desafio educacional da Digital Innovation One (DIO).

    Neste artigo, compartilho um pouco do desenvolvimento, das personalizações realizadas e de uma demonstração prática de vulnerabilidade que fez parte do projeto.

    1. A origem do GuardAI

    O ponto de partida foi o projeto-base DIO Agent, disponibilizado pela DIO.

    A proposta foi utilizar a estrutura existente e especializar o agente em um domínio específico.

    Escolhi a área de Cibersegurança, com foco em análise de vulnerabilidades.

    Assim nasceu o GuardAI, um agente com identidade, instruções e conhecimentos direcionados à segurança defensiva.

    2. Como o agente foi especializado?

    O desenvolvimento foi organizado em três componentes principais.

    Persona — Identidade do agente

    Personalizei as instruções do agente para que sua atuação fosse direcionada à segurança da informação, considerando autorização, identificação de riscos e orientação de correções.

    Skill — Análise de vulnerabilidades

    Desenvolvi uma habilidade específica para orientar o processo de análise, contemplando:

    • Identificação de possíveis vulnerabilidades.
    • Avaliação de riscos e severidade.
    • Análise de possíveis impactos.
    • Recomendações de correção.
    • Orientações para validação.
    • Organização dos resultados em relatórios.

    Base de conhecimento

    Criei uma base de conhecimento com fundamentos de segurança da informação, incluindo vulnerabilidades, ameaças, riscos, boas práticas e a tríade CIA:

    • Confidencialidade.
    • Integridade.
    • Disponibilidade.

    Essa estrutura permite que o agente tenha uma orientação especializada, em vez de atuar de maneira genérica.

    3. Na prática: demonstrando uma vulnerabilidade SQL Injection

    Uma das partes mais importantes do projeto foi desenvolver um laboratório prático utilizando Python e SQLite.

    O objetivo foi demonstrar como uma falha na construção de consultas SQL pode comprometer a autenticação de uma aplicação.

    O que é SQL Injection?

    SQL Injection é uma vulnerabilidade que ocorre quando dados fornecidos pelo usuário são incorporados diretamente a comandos SQL, permitindo que uma entrada modifique a lógica da consulta.

    Dependendo do contexto e das permissões da aplicação, essa falha pode permitir acesso indevido a informações, alteração de registros e outras operações não autorizadas.

    A vulnerabilidade está relacionada à classificação CWE-89.

    Como o problema foi demonstrado?

    No laboratório, criamos dois cenários:

    • Aplicação vulnerável.
    • Aplicação corrigida.

    No cenário vulnerável, a consulta SQL era construída utilizando interpolação de texto (f-string).

    Conceitualmente, o código apresentava este formato:

    query = f"SELECT * FROM users WHERE username = '{username}' AND password = '{password}'"
    

    O problema é que os dados fornecidos pelo usuário eram inseridos diretamente na consulta.

    Para demonstrar a falha, utilizamos a seguinte entrada no campo de usuário:

    admin' --
    

    E uma senha qualquer:

    qualquercoisa
    

    O trecho -- inicia um comentário SQL no SQLite. Com isso, a verificação da senha podia ser ignorada na consulta vulnerável.

    Resultado observado: ACESSO CONCEDIDO.

    Isso demonstrou que era possível contornar a autenticação sem fornecer a senha correta.

    4. Como a vulnerabilidade foi corrigida?

    Após identificar o problema, implementamos a correção utilizando consultas parametrizadas (prepared statements).

    A consulta passou a utilizar parâmetros:

    query = "SELECT * FROM users WHERE username = ? AND password = ?"
    cursor.execute(query, (username, password))
    

    Essa mudança é fundamental porque separa a estrutura do comando SQL dos valores fornecidos pelo usuário.

    Assim, uma entrada maliciosa passa a ser tratada como dado, e não como parte da instrução SQL.

    Repetimos a tentativa de exploração utilizando o mesmo payload:

    admin' --
    

    Resultado observado: ACESSO NEGADO.

    Também verificamos que o login legítimo continuou funcionando, enquanto senhas incorretas e as entradas utilizadas na tentativa de injeção eram rejeitadas.

    5. Antes e depois da correção

    CenárioResultadoConsulta com interpolação de textoVulnerável à injeção demonstradaPayload admin' -- no modo vulnerávelAcesso concedidoConsulta parametrizadaProtegida contra a injeção demonstradaMesmo payload no modo corrigidoAcesso negadoCredenciais legítimas no modo corrigidoAcesso concedido

    A principal lição foi compreender que a segurança não depende apenas de validar o que o usuário digita. É fundamental construir as consultas ao banco de dados de maneira segura.

    6. O que esse desenvolvimento representou?

    O GuardAI reuniu conhecimentos de diferentes áreas:

    • Inteligência Artificial e especialização de agentes.
    • Engenharia de instruções e organização de habilidades.
    • Fundamentos de Cibersegurança.
    • Python e SQLite.
    • Identificação e classificação de vulnerabilidades.
    • Correção e validação de falhas.
    • Documentação técnica.

    Também foi possível compreender a importância da tríade CIA na avaliação dos impactos de uma vulnerabilidade:

    Confidencialidade: possibilidade de acesso indevido a informações.

    Integridade: possibilidade de alteração não autorizada de dados, dependendo das permissões.

    Disponibilidade: possibilidade de interrupção ou comprometimento do acesso aos serviços, dependendo da exploração.

    No laboratório, demonstramos o contorno da autenticação. Os demais impactos foram avaliados como riscos potenciais, não como resultados diretamente executados.

    7. Tecnologias e estrutura utilizadas

    O projeto utilizou:

    • Python.
    • SQLite.
    • Hermes Agent.
    • Markdown.
    • Git e GitHub.

    Sua estrutura independente contém a persona do agente, a base de conhecimento, a skill de análise de vulnerabilidades, o laboratório prático e as evidências dos resultados.

    8. Considerações finais

    Desenvolver o GuardAI foi uma oportunidade de sair da teoria e aplicar conhecimentos em um projeto prático.

    Um dos principais aprendizados foi perceber que identificar uma vulnerabilidade é apenas o começo. É necessário compreender sua causa, avaliar os riscos, implementar uma correção e verificar se ela realmente resolveu o problema.

    No caso do SQL Injection, a utilização de consultas parametrizadas resolveu a falha demonstrada no laboratório.

    O projeto também mostrou como a especialização de um agente de Inteligência Artificial pode organizar conhecimentos e orientar atividades em um domínio técnico específico.

    Este é um passo importante na minha jornada de aprendizado em Inteligência Artificial e Cibersegurança.

    Agradecimentos

    Agradeço à Digital Innovation One (DIO) pela oportunidade de aprendizado e pelo projeto-base que possibilitou essa especialização.

    Meu agradecimento também à instrutora Isadora Ferrão, PhD, pela condução e compartilhamento de conhecimento durante essa jornada.

    Conheça o projeto

    O GuardAI está disponível no GitHub:

    https://github.com/adamasnegro/GuardAI

    GuardAI — Inteligência Artificial aplicada à Cibersegurança.

    #DIO #Cibersegurança #InteligênciaArtificial #CyberSecurity #Python #SQLInjection #SegurançaDaInformação #GitHub

    Compartilhe
    Recomendados para você
    Microsoft - Certificação AI-103
    Neo4j - Certification
    DXC - IA do Zero ao Primeiro Agente
    Comentários (0)