IA que caça falhas de lógica antes dos invasores — Taylor Luttrell-Williams, Sonar
Autoria: AI Engineer · Assistir no YouTube
Vídeo de autoria do canal indicado, não da IANIA; todos os direitos pertencem ao criador. Transcrição, resumo e tradução gerados automaticamente; o conteúdo no idioma original é preservado na versão em idioma original.
Idioma original: inglês
Vídeo original: AI That Hunts Logic Bugs Before Attackers Do - Taylor Luttrell-Williams, Sonar · Canal: AI Engineer · 13:38 · Assistir no YouTube
Tópicos: Agentes de IA, Cibersegurança e segurança de software, Engenharia de software com IA
Taylor Luttrell-Williams apresenta o SonarQube Hunter Agent, um agente de segurança com IA voltado a encontrar vulnerabilidades de lógica que scanners tradicionais baseados em padrões, como SAST, podem não detectar. O agente mapeia o repositório, coordena agentes especializados e valida as descobertas antes de registrá-las no SonarQube. Na demonstração, a apresentadora mostra categorias de vulnerabilidades, detalhes para corrigir os problemas e opções de verificação sob demanda ou agendada. Ela também anuncia que as vulnerabilidades encontradas podem ser encaminhadas ao agente de remediação do SonarQube para correção automática.
Pontos-chave
Seção intitulada “Pontos-chave”- Vulnerabilidades de lógica podem ocorrer em código tecnicamente válido, quando seu comportamento contradiz as regras de negócio esperadas.
- O SonarQube Hunter Agent mapeia o repositório e aciona agentes especializados para investigar diferentes classes de problemas.
- As descobertas passam por validação adversarial e filtros para reduzir falsos positivos e problemas que sejam intencionais.
- O agente identifica problemas de controle de acesso, lógica de negócio, autenticação e sessões.
- Os resultados aparecem na mesma lista de issues do SonarQube, com severidade, localização no código e orientações de correção.
- As verificações podem ser iniciadas sob demanda ou agendadas por frequência e branch.
- O SonarQube Hunter Agent pode ser combinado com SAST e SCA para oferecer camadas complementares de verificação.
- As issues encontradas podem ser atribuídas ao agente de remediação do SonarQube para correção automática.
Capítulos
Seção intitulada “Capítulos”| Início | Capítulo | Resumo |
|---|---|---|
| 00:01 | Por que buscar vulnerabilidades de lógica | A apresentação explica por que scanners tradicionais podem deixar passar falhas de intenção e por que a velocidade dos ataques exige novas formas de detecção. |
| 03:36 | Como o Hunter Agent encontra e valida problemas | A apresentadora descreve a integração com o SonarQube, o uso de raciocínio avançado e as camadas de verificação complementares. |
| 06:40 | Demonstração da verificação do repositório | A demonstração percorre o processo de análise e apresenta as categorias de vulnerabilidades e os resultados encontrados. |
| 09:49 | Inspeção e tratamento das issues | A apresentadora mostra detalhes, severidade e opções de triagem das issues, além de um exemplo ligado à autenticação multifator. |
| 12:29 | Verificações agendadas e correção automática | A demonstração mostra como agendar verificações e anuncia a possibilidade de encaminhar problemas ao agente de remediação. |
Citações
Seção intitulada “Citações”O código pode estar correto, mas a intenção por trás dele pode estar falha. — 01:33
Recomendamos combinar SAST e Hunter Agent em uma única plataforma para oferecer duas camadas de verificação. — 05:38
Qualquer usuário autenticado pode passar pela verificação de acesso de administrador porque pode escrever o próprio campo de função. — 10:21
Encontre problemas antes que você mesmo seja caçado. — 13:38
Conceitos e entidades
Seção intitulada “Conceitos e entidades”- SonarQube Hunter Agent (ferramenta): Agente de segurança com IA que procura vulnerabilidades de lógica e outras falhas no código.
- SonarQube (ferramenta): Plataforma em que os resultados do Hunter Agent são exibidos junto a outras issues de análise de código.
- Sonar (empresa): Empresa que desenvolve o SonarQube e apresenta o Hunter Agent.
- Taylor Luttrell-Williams (pessoa): Criadora de conteúdo para desenvolvedores na Sonar e apresentadora da demonstração.
- SAST (conceito): Análise estática de segurança que procura problemas no código, mas pode não identificar falhas de intenção ou lógica de negócio.
- SCA (conceito): Análise de composição de software, citada como uma camada complementar ao Hunter Agent e ao SAST.
- OpenAI Daybreak Cyber Partner Program (conceito): Programa anunciado na apresentação que oferece acesso governado a modelos avançados de cibersegurança em produtos como o Hunter Agent.
Tradução completa (pt-BR)
Seção intitulada “Tradução completa (pt-BR)”00:01 [música] >> Olá, boa tarde e sejam todos bem-vindos à minha sessão sobre o SonarQube Hunter Agent. Ele é um agent de segurança com IA, desenvolvido para detectar as classes de vulnerabilidades que o SAST não consegue detectar, antes que os invasores consigam.
00:31 Meu nome é Taylor Luttrell. Crio conteúdo para desenvolvedores na Sonar. Somos os criadores do SonarQube. Hoje, estou muito empolgada para ajudar vocês a começar a usar o SonarQube Hunter Agent. Para começar, como todos sabemos, na era dos agents, o código está sendo entregue em velocidade e volume sem precedentes. Como resultado, um número sem precedentes de vulnerabilidades está chegando a ambientes de produção,
01:01 deixando as empresas expostas e vulneráveis. Se você conhece ou usa ativamente scanners tradicionais baseados em padrões, como SAST, talvez entenda que há classes de problemas para as quais eles simplesmente não foram projetados. São problemas relacionados à intenção, e não aos padrões que esses scanners sabem encontrar. Para explicar isso, basicamente, nem todas as vulnerabilidades são
01:33 bugs no seu código, pelo menos segundo o SAST. Isso quer dizer que nem sempre os problemas que ele consegue encontrar são contemplados. São problemas de intenção, relacionados a vulnerabilidades no nível da lógica, em que o código pode ser válido, mas a intenção em si não é. Ou seja, ele está tecnicamente ou funcionalmente correto, mas a intenção por trás dele é falha,
02:03 certo? Por exemplo, ele contradiz a lógica de negócios subjacente. Em muitas empresas, os testes de intrusão acontecem, no máximo, duas vezes por ano, talvez uma vez por trimestre. Mas, agora que os invasores contam com modelos melhores do que nunca e que o intervalo entre a entrega dessas alterações geradas por agents está diminuindo, precisamos de uma nova classe de agents para identificar,
02:33 detectar e corrigir essas vulnerabilidades. Por isso, apresento o SonarQube Hunter Agent, que vem preencher exatamente essa lacuna. Para fazer isso, primeiro há um agent que mapeia o repo inteiro. Em seguida, com base nesse mapa global, ele inicia três agents especializados, um para cada classe de problema que consegue encontrar. Esses agents analisam as relações entre todos os componentes e tentam
03:04 definir as expectativas de segurança, por assim dizer. Depois, fazemos uma validação adversarial para garantir que os problemas sejam realmente válidos e não falsos positivos. Também temos filtros para reduzir problemas com validade muito baixa ou problemas que seriam intencionais. Esses playbooks recebem um repo como entrada. Eles cuidam de toda a orquestração complexa dos agents e geram problemas de alta qualidade que você pode atribuir aos desenvolvedores. Com isso,
03:36 atribuímos uma severidade a esses problemas. Determinamos o impacto que podem ter na sua base de código como um todo e indicamos o local exato em que podem ser corrigidos diretamente. Para apresentar essas descobertas, se você já usa o SonarQube, esses problemas aparecerão junto com todos os outros que já procuramos com nossa ferramenta SAST. Como eu disse, você pode atribuir uma
04:07 severidade a todos eles. Na era dos agents, em que os invasores estão agindo mais rápido do que nunca, você precisa de uma solução capaz de acompanhar esse ritmo. O intervalo entre a descoberta de uma vulnerabilidade e sua transformação em arma está diminuindo, e agora diminui cada vez mais rápido. Por isso, temos o prazer de anunciar hoje — vocês estão entre os primeiros a saber —
04:37 que a Sonar está entrando no programa OpenAI Daybreak Cyber Partner. Isso vai proporcionar acesso governado a modelos avançados de ponta em cibersegurança, diretamente em produtos como o SonarQube Hunter Agent. Reconhecemos que as equipes de segurança também precisam de inteligência de ponta. Precisamos acompanhar o ritmo dos próprios invasores contra os quais lutamos,
05:07 e por isso achamos adequado incluir isso no próprio agent que identifica as classes de vulnerabilidades que podem estar passando despercebidas. Oferecemos raciocínio de ponta dentro do SonarQube Hunter Agent. Os playbooks são executados em toda a base de código. Cada indício é investigado e validado antes de aparecer, e esses raciocínios da classe Daybreak aprofundam o raciocínio por trás de cada playbook para garantir que todas as
05:38 descobertas sejam precisas, reproduzíveis e também auditáveis. Por isso, recomendamos combinar SAST e Hunter Agent, e fazemos isso em uma única plataforma para oferecer duas camadas de verificação, garantindo que nada passe despercebido. De um lado, SAST e SCA; do outro, o Hunter Agent cobrindo o que falta. Essa é uma segurança em camadas por concepção. É zero trust, tem várias camadas e é
06:09 independente, para garantir que possamos encontrar vulnerabilidades zero-day com precisão e de forma reproduzível. Esse é o SonarQube Hunter Agent, em poucas palavras. Agora vou mudar de assunto e demonstrar o produto diretamente, para mostrar a vocês como ele funciona em um ambiente de produção real. Na tela, tenho uma aplicação simples em Python
06:40 que criei e analisei com o SonarQube Hunter Agent. Já entrei no meu painel do SonarQube Cloud e, se eu acessar o Hunter Agent, vocês verão que, na mesma interface, é possível iniciar uma análise sob demanda clicando no botão “Analisar agora”. Isso vai estimar o número de unidades necessárias para fazer uma análise profunda de toda a base de código
07:11 do seu projeto no SonarQube. Vale observar também que isso funciona tanto com o SonarQube Cloud quanto com nossa versão autohospedada, o SonarQube Server. Se eu clicasse em “Analisar agora”, a análise do projeto começaria. Dependendo do tamanho e da complexidade do projeto, ela pode levar mais de uma hora. Por isso, já executei uma análise deste projeto, que vou apresentar agora. A análise levou cerca de uma hora para ser concluída
07:43 e, primeiro, a análise clona o repo de destino com segurança, para dar ao mecanismo de IA acesso direto ao código-fonte. Em seguida, analisa a arquitetura da aplicação para mapear possíveis superfícies de ataque e criar um modelo de ameaças abrangente. Depois, executa análises contextuais aprofundadas para detectar falhas críticas, como IDOR, falhas no controle de acesso e vulnerabilidades na lógica de negócios, e reúne e elimina duplicações nas descobertas de todos os
08:14 subagents de IA especializados em uma única lista unificada de problemas. Por fim, exporta e registra automaticamente as vulnerabilidades validadas diretamente na lista de problemas do seu SonarQube. Depois que a análise é concluída, posso clicar nos resultados da análise para ver todos os problemas encontrados pelo Hunter Agent. Aqui, vocês podem ver que há 46 problemas abertos neste projeto, distribuídos pelas três categorias de problemas
08:45 que mencionei antes: vulnerabilidades de controle de acesso, vulnerabilidades na lógica de negócios e vulnerabilidades de autenticação e sessão. Para recapitular rapidamente, as vulnerabilidades de controle de acesso incluem referências diretas inseguras a objetos, ou IDOR, verificações de autorização ausentes ou incorretas, elevação de privilégios, exposição de dados sensíveis e falsificação de requisições entre sites. Agora, passando à lógica de negócios,
09:16 isso inclui pular etapas obrigatórias de um workflow, abusar de ações que podem ser repetidas e não aplicar limites de taxa. Por fim, os problemas de autenticação e sessão que mencionei dizem respeito a falhas de controle de acesso ou, melhor dizendo, a falhas de autenticação, fixação de sessão, sessões que não expiram, recuperação de senha fraca, falta de autenticação multifator e brechas que permitem ataques de força bruta. Vou clicar em controle de acesso e escolher um problema aleatoriamente. Observem que eles aparecem na mesma lista de problemas que todos os outros
09:49 problemas analisados pelo SonarQube, então você não precisa acessar outro painel para ver e inspecionar todos eles. Vou clicar em controle de acesso. No topo, vocês podem ver um problema classificado como de alta severidade. Todos os problemas estão identificados com o nome Hunter Agent, pois foi esse o agent de IA usado para encontrá-los, e também com a classe de problema correspondente.
10:21 Para ajudar você a corrigir esses problemas, primeiro mostramos exatamente onde eles apareceram na sua base de código e explicamos por que são problemas. Neste caso, como vocês podem ver, o problema é que qualquer usuário autenticado pode passar pela verificação de acesso de administrador, porque pode definir o próprio campo de função. Então, explicamos por que isso é um problema e também indicamos como você pode
10:54 corrigi-lo também. Qualquer atividade relacionada ao issue em questão, e você pode atribuir o issue, como qualquer outro issue do SonarQube, aos desenvolvedores que escolher. Todos os issues começam no estado aberto por padrão, e você pode aceitar o issue, o que significa que ele é realmente válido, não é um falso positivo, mas não afetará seus gates de qualidade e, portanto, não impedirá que o código que você está tentando lançar entre em
11:25 produção. Você pode confirmá-lo, o que significa que o issue é válido e, de fato, terá impacto no gate de qualidade, ou pode marcá-lo como falso positivo se realmente acreditar que a correção está incorreta. Então, volte à análise que realizamos. Também temos cinco achados de lógica de negócios e vários achados relacionados à autenticação e à sessão. Vou clicar em um deles para mostrar mais exemplos.
11:56 Você pode ver aqui, bem no topo, outra vulnerabilidade de segurança de alta gravidade. Esta diz respeito a qualquer usuário que tenha apenas a senha da conta e consiga acessar todas as rotas protegidas, incluindo as funções de administrador, sem concluir a autenticação multifator. Mais uma vez, mostramos onde o problema está no seu código, por que é um problema, como corrigi-lo e, novamente, qualquer atividade relacionada a ele. Observe que, embora o Hunter Agent possa ser
12:29 executado sob demanda, ele também pode ser executado de forma programada. Então, se eu acessar o Hunter Agent aqui, posso configurar uma análise programada e executá-la na frequência que eu escolher. É altamente configurável: pode ser diária, semanal ou mensal. Também posso selecionar uma branch específica, caso não queira analisar especificamente a branch principal. Neste caso, analisei a branch principal.
13:08 E isso é o Hunter Agent em poucas palavras. Ao apontar essas classes de vulnerabilidades no nível da lógica de negócios e sugerir correções, tenho o prazer de anunciar que, a partir desta semana, esses issues também poderão ser corrigidos de forma automatizada. Vale ressaltar que, na verdade, você pode atribuir esses issues ao agente de remediação do SonarQube, que
13:38 pode cuidar da remediação dessas classes de problemas de segurança para você, também de forma programada. E esse é o SonarQube Hunter Agent, que permitirá detectar vulnerabilidades no nível da lógica antes de qualquer outra pessoa, para que você possa caçar problemas antes de ser caçado. Muito obrigado.
Transcrição original
[00:01] [music] >> Well, hello, good afternoon, and welcome all to my session on the SonarQube Hunter Agent. It’s an AI security agent and built to detect the classes of vulnerabilities that SAST cannot and before attackers
[00:31] can. My name is Taylor Luttrell. I create developer content at Sonar. We’re the makers of SonarQube. Today, I am very hyped to get y’all up and running with SonarQube Hunter Agent. So, to start, as we all know, in the agentic era, code is shipping at both agentic velocity and agentic volume, and as a result, an unprecedented number of vulnerabilities are reaching production environments,
[01:01] leaving companies exposed and vulnerable. And if you’re familiar or you actively use traditional pattern-based scanners like SAST, you may very well understand that there are classes of issues which it is simply not designed to account for. These are issues of intent rather than the patterns that it is adept at finding. And so, in explaining this, um basically, not all vulnerabilities are
[01:33] bugs in your code, at least according to SAST. And that’s to say that the issues that it can find are not always accounted for. These are issues of intent, issues related to logic-level vulnerabilities, wherein the code may very well be valid, but the intent itself is not. And that’s to say that it’s technically or it’s functionally correct, but the intent behind it is flawed,
[02:03] right? It contradicts your underlying business logic, for example. Now, in many companies, pentests happen at most twice per year, perhaps once per quarter. But, as attackers are now enabled with better models than ever, um and as the time between which these uh agent-generated changes are shipping, we need a new class of agents to suss out,
[02:33] to detect, and to fix these vulnerabilities. So, I introduce SonarQube Hunter Agent to fill that gap exactly. So, in order to accomplish this, there’s first an agent that maps the repository globally. And then, based on that global map, it starts three specialized agents, one per class of issue that it can find. And these issues look at relationships between all the components and try to
[03:04] define the security expectations, if you will. We then run adversarial validation to make sure that the issues are actually correct and not false positives. And we have noise gates as well to reduce the really low um validity uh issues or issues that would be by design. And so, these playbooks essentially take a repository as input. They handle all the complex agent orchestration, and they output high-quality issues that you can then assign to your developers. In doing so,
[03:36] we assign a severity to these issues. We determine the impact that it can have on your overall codebase, and we point you to the exact location where they can be addressed directly. So, in representing these findings, if you already use SonarQube, these issues will surface alongside all of the other issues that we already look for using our SAST tool. As I said, you can assign a
[04:07] um You can assign a severity to all of these. Um in the agentic era, where attackers are moving faster than ever, you need a solution that can keep pace with just that. As the time between a vulnerability being discovered and weaponized is shrinking, and it’s shrinking now ever faster. And so, we are very excited to announce today, y’all are among the first to hear
[04:37] this, that Sonar is joining the Open AI Daybreak Cyber Partner Program. This is going to bring you governed access to advanced cybersecurity frontier models directly in products like SonarQube Hunter Agent. Because we recognize that security teams need frontier intelligence, too. We have to keep pace with the very attackers that we are fighting against,
[05:07] and so we saw fit to include this as part of the very agent that susses out the classes of vulnerabilities that may be slipping through the cracks. We provide frontier reasoning inside SonarQube Hunter Agent. Playbooks run across the whole codebase. Every lead is investigated and validated before it surfaces, and these Daybreak class reasonings deepen the reasoning behind each playbook to ensure that all the
[05:38] findings are precise, they are repeatable, and are auditable, as well. In doing so, we recommend combining SAST and Hunter Agent and we do so in a single platform to provide two layers of verification so that nothing slips through the cracks. SAST and SCA on one hand and Hunter Agent picking up the slack. This is layered security by design. It’s zero trust, it’s multi-layered, and it’s
[06:09] independent to ensure that we can find zero-day vulnerabilities with precision and a repeatable manner. And that is SonarQube Hunter Agent in a nutshell. I’m now going to switch gears and I’m going to demo the product directly to give you all a sense of how it works in a real production setting. So, I have on screen a simple Python
[06:40] application of mine which I have scanned with SonarQube Hunter Agent. I’ve logged in to my SonarQube Cloud dashboard here and if I navigate to Hunter Agent you can see that within the very same UI you can trigger an on-demand scan by clicking the scan now button. This is going to give you an estimation of the number of units required to perform the deep whole code base
[07:11] reasoning pass over your project on SonarQube. You should also note that this works either with SonarQube Cloud or with our self-hosted variant SonarQube server. So, were I to click scan now, it would kick off a scan of the project. Depending on the size and the complexity of the project it can take upwards of an hour so I I went ahead and ran a scan on this project already which I’m going to walk you through now. The scan took about an hour to complete
[07:43] and then scanning the project at first securely clones the target repository to grant the AI engine direct access to the source code. It then analyzes the application architecture to map potential attack surfaces and build a comprehensive threat model. It next executes deep contextual scans to detect critical flaws like IDOR, broken access control, and business logic vulnerabilities and it aggregates and deduplicates findings from all
[08:14] specialized AI sub-agents into a single unified issue list before lastly automatically exporting and logging validated vulnerabilities directly into your SonarQube’s issue list. So after having completed, I can click into scan results to surface all of those issues that the Hunter agent found. You can see here that there are 46 open issues on this project broken across the three issue categories
[08:45] that I touched on earlier. Those being broken access control vulnerabilities, business logic vulnerabilities, and authentication and session vulnerabilities. So to quickly recap, these broken access control vulnerabilities relate to such things as insecure direct object references or IDOR, missing or incorrect authorization checks, privilege escalations, sensitive data exposure, and cross-site request forgery. Moving on to business logic,
[09:16] this relates to such things as skipping required workflow steps, abusing repeatable actions, and missing rate limits. And then lastly, those authentication and session issues as I had mentioned pertaining to broken access or broken authentication, I should say, session fixation, non-expiring sessions, weak password recovery, missing multi-factor authentication, and brute-force gaps. So, I’ll go ahead and click into these broken access control and I’ll pick an issue at random. Note that these surface in the same issues list as every other
[09:49] issue that’s scanned by SonarQube, so you don’t have to navigate to a new dashboard to surface um and inspect all of these. So, I’ll go ahead and click into broken access control. You can see at the very top we have a an issue which has been rated high in severity. All of the issues are tagged with Hunter Agent as this was the AI agent used to surface them in the first place, and then also the class of issue that it pertains to as well.
[10:21] In trying to help you remediate these issues, we first show you where specifically within your code base the issue has surfaced, as well as providing an explanation as to why this is an issue. So, in this instance, as you can see, the issue pertains to any signed-in user being able to pass the admin access check because they can write their own role field. So, you we walk you through basically why this is an issue and then also point you to how you can go about
[10:54] fixing it as well. Any activity as well related to the issue at hand, and you can assign the issue like you can any other SonarQube issue to the developers of your choosing. All issues um open uh are uh started in an open state by default, and you can either accept the issue, meaning that it is indeed valid, it’s not a false positive, but it will not affect your quality gates, and therefore it will not prevent the code you’re trying to ship from entering uh
[11:25] production. You can confirm it, meaning that the issue is valid and it will will fact have an impact on the quality gate or you can mark it as a false positive if you really and truly believe that the fix is incorrect. So, navigate back to the scan that we had conducted. We have also uh five business logic findings and a number of authentication and session findings as well. I’ll go ahead and click into one of these just for more breadth.
[11:56] You can see here at the very top, we have another high severity security vulnerability. This one pertaining to any user with only an account password being able to reach every protected route including admin functions without completing multi-factor authentication. Again, we point you to where in your code the issue resides as well as why it’s an issue, how you can fix the issue, and then again, any activity related to it. Note that while the Hunter Agent can be
[12:29] run on demand, it can also be run on a scheduled basis. So, if I navigate here to Hunter Agent, I can configure a scheduled scan whereby I can run it at the frequency of my choosing. It’s highly configurable. Uh be that daily or weekly or monthly. And I can also select a specific branch should I not want to scan the main branch specifically. [snorts] This case, I scanned the main branch.
[13:08] And that is Hunter Agent in a nutshell. In pointing you towards these classes of business logic level vulnerabilities, we suggest fixes, but I am excited to announce that as of this week these issues will also be able to be fixed in a remediated or in a automatic fashion. I should note. You can in fact assign these issues to the SonarQube remediation agent which
[13:38] can take care of remediating these classes of security issues for you and also on a scheduled basis. And that is SonarQube Hunter Agent which will enable you to catch logic level vulnerabilities before anybody else does so that you can hunt for issues before you yourself are hunted. Thank you very much.