00:00:00Obrigado por terem vindo.
00:00:01Obrigado por terem ficado.
00:00:03O meu nome é Alex.
00:00:04Trabalho para uma pequena empresa chamada Corridor.
00:00:08Estou aqui para falar um pouco sobre vibe coding.
00:00:11Algumas das coisas fascinantes que estão a acontecer do ponto de vista da segurança.
00:00:17Primeiro, sou um grande fã de usar IA para gerar código.
00:00:21Acho que esta é uma oportunidade incrível para as pessoas utilizarem os computadores de uma forma que nunca o fizeram.
00:00:29Há muitos programadores de software profissionais na sala.
00:00:32Aqueles de nós que cresceram a escrever código,
00:00:36que cresceram a usar computadores a partir de uma linha de comando ou a programá-los desde cedo,
00:00:42não percebemos realmente o que isto significa para as pessoas normais,
00:00:47mas pela primeira vez,
00:00:48as pessoas normais vão poder utilizar os computadores,
00:00:52como deveriam ter estado disponíveis para as pessoas há muito tempo.
00:00:57Programar é um superpoder.
00:00:58Ser capaz de pedir aos computadores para fazer coisas sem ter de comprar software,
00:01:04usar código aberto ou pedir a outras pessoas para programar por si,
00:01:09isso é um superpoder..
00:01:11O vibe coding está a levar isso a milhões de pessoas.
00:01:16Isso é algo incrível.
00:01:18Devemos estar super felizes por estarmos no início,
00:01:23no verdadeiro início desta revolução que vai trazer acessibilidade a todos.
00:01:30É também um tiro no pé incrível.
00:01:33E
00:01:34Há inúmeros exemplos de coisas más que estão a acontecer a pessoas comuns quando estão a criar aplicações com vibe coding,
00:01:41algumas das quais são apenas pequenas coisas divertidas como o calendário da liga infantil dos seus filhos ou coisas onde estão a colocar os seus dados pessoais.
00:01:50Algumas pessoas estão a criar sistemas de registos médicos ou sistemas de Bitcoin com vibe coding,
00:01:56ou coisas que contêm dados pessoais,
00:01:58ou que recolhem números de cartão de crédito das pessoas,
00:02:01ou armazenam cartas de condução das pessoas.
00:02:04Há muitos exemplos de pessoas a usar aplicações de vibe coding para criar coisas importantes.
00:02:09Talvez algumas plataformas concorrentes que não devem ser nomeadas,
00:02:13mas cujos nomes são muito visíveis e óbvios atrás de mim,
00:02:16estejam a tornar isto especialmente mau porque estão a usar configurações padrão muito fracas e não estão a facilitar as coisas para as pessoas.
00:02:25E a tornar muito fácil para eles usarem configurações padrão realmente más de coisas como o Superbase.
00:02:31O que não é culpa do Superbase..
00:02:33É apenas a forma como a plataforma de vibe coding,
00:02:36e algumas outras plataformas,
00:02:38não configuram estas coisas de forma segura por padrão.
00:02:41Isto não é bom.
00:02:42E isto não se limita ao vibe coding direto numa plataforma; mesmo profissionais que utilizam,
00:02:48na verdade,
00:02:49temos dados académicos empíricos sólidos sobre isto.
00:02:52Este é um excelente artigo que recomendo que leiam,
00:02:56chamado Backbench Academic Group.
00:02:58Eles criaram uma série de prompts que eles pensaram,
00:03:01'hum,
00:03:02aqui estão prompts para agentes de codificação que achamos que podem criar código de backend com vulnerabilidades de segurança'.
00:03:10E depois testaram estes prompts contra várias ferramentas de codificação e LMs para ver.
00:03:15E depois testaram,
00:03:16primeiro,
00:03:17se o código gerado estava correto.
00:03:19E, segundo, se tinha falhas de segurança.
00:03:22E para seu crédito,
00:03:23eles continuam a atualizar isto à medida que novos modelos são lançados e publicados..
00:03:29Podem ir verificar isto.
00:03:31E como seria de esperar,
00:03:33os LMs,
00:03:33por um lado,
00:03:34cometem muitos erros,
00:03:35mas também introduzem muitas falhas.
00:03:38Agora, isto está a ir na direção certa..
00:03:41E não precisam de tirar fotos disto.
00:03:43Podem ir a backspends.com e obter uma versão muito mais fácil de ler.
00:03:46Além disso, todo o código deles é de código aberto.
00:03:49Por isso, podem recriar isto vocês mesmos..
00:03:51Então, primeiro, isto está a ir na direção certa, certo?
00:03:54Se olharem mesmo dentro de uma família de produtos,
00:03:57se olharem para a família de produtos da OpenAI,
00:04:00está a ir na direção certa.
00:04:02O GPT-5 está a ter um desempenho muito melhor do que o GPT-4.1,
00:04:05GPT-4.0,
00:04:06e assim por diante.
00:04:07Menos vulnerabilidades usando os mesmos prompts..
00:04:10Agora,
00:04:10um dos problemas aqui é que estes prompts e os testes são agora de código aberto.
00:04:14Então, podem ter um problema de overfitting para os testes.
00:04:17Embora tenhamos visto a mesma coisa,
00:04:19o que fizemos na nossa empresa foi trazer isto para dentro de casa,
00:04:22e agora estamos a usar alguns dos nossos próprios testes.
00:04:25E vemos os mesmos resultados.
00:04:27Nos nossos próprios testes,
00:04:28na verdade,
00:04:29o vencedor é o Claude Sonnet 4.5,
00:04:30que eles ainda não lançaram publicamente.
00:04:32Mas a Anthropic assumiu a liderança,
00:04:34apenas um pouco melhor do que o GPT-5.
00:04:36Mas de qualquer forma, está a ir na direção certa..
00:04:39Mas ainda assim,
00:04:40mesmo no topo,
00:04:41das coisas que passam nos vossos testes de regressão do código realmente correto,
00:04:46se 20% deles tiverem algum tipo de vulnerabilidade de segurança,
00:04:50isso não é fantástico.
00:04:52Isso não é o que eu,
00:04:53como profissional de segurança,
00:04:54consideraria o que realmente gostaria de ver.
00:04:56Sou um grande fã da série Fallout.
00:04:59A guerra nunca muda, certo?
00:05:00E parece-me um pouco que o que estamos a fazer aqui é que a estes vibe coders,
00:05:06especialmente àqueles que nunca escreveram software profissionalmente,
00:05:10estamos a dar-lhes uma arma básica.
00:05:13Estamos a dar-lhes um estilingue e uma mochila.
00:05:16E depois estamos a empurrá-los para um mundo cheio de mutantes com paus afiados.
00:05:21E eles são devorados imediatamente, certo?
00:05:24Porque não é como se os vilões estivessem a inventar o seu código do zero.
00:05:29Há mais de 20 anos,
00:05:30temos atacantes profissionais a descobrir como invadir aplicações web,
00:05:35como invadir aplicações móveis,
00:05:37como fazer engenharia reversa destas coisas,
00:05:40e especialmente como construir modelos financeiros de como fazer coisas maliciosas.
00:05:46E assim,
00:05:46temos uma geração inteiramente nova de pessoas que agora têm,
00:05:50milagrosamente,
00:05:51acesso para usar computadores de uma nova forma,
00:05:55a enfrentar profissionais cujo trabalho é monetizar bugs em software.
00:05:59Isto reflete-se na indústria da segurança nas formas como qualificamos e quantificamos estas vulnerabilidades.
00:06:07Um desses frameworks que usamos é chamado MITRE ATT&CK.
00:06:11Em segurança,
00:06:12roubámos esta ideia da cadeia de ataque (kill chain) dos militares,
00:06:16mas é basicamente a ideia dos passos que tem de dar para ter uma intrusão eficaz como atacante.
00:06:22Esses são os passos aqui da esquerda para a direita: reconhecimento,
00:06:27desenvolvimento de recursos,
00:06:29acesso,
00:06:29execução,
00:06:30persistência e afins.
00:06:31E para baixo estão as diferentes categorias de técnicas aqui.
00:06:36E para cada uma destas,
00:06:37há por vezes dezenas ou centenas de técnicas diferentes para cada uma destas categorias.
00:06:43Este é apenas o nível superior do MITRE,
00:06:46que é uma organização que o governo dos EUA paga para criar este gráfico excessivamente complicado,
00:06:53para categorizar todas estas coisas para que possamos rastrear diferentes atores de ameaça na comunidade de segurança e ter uma linguagem padrão para falar sobre o que vemos na natureza.
00:07:05Então,
00:07:06temos os nossos queridos moradores de abrigo a quem damos estas ferramentas e dizemos,
00:07:11"Ei,
00:07:12boa sorte." E o que eles estão a enfrentar é um mundo cheio de vilões que fazem tudo isto.
00:07:18Se forem a attack.mitre.org,
00:07:20verão a lista de cadeias de exploração conhecidas,
00:07:23coisas conhecidas que aconteceram na natureza de diferentes grupos de ameaça,
00:07:29os AP-228s e 29s,
00:07:30UNC-3886.
00:07:30Então,
00:07:31isto é como o Ministério da Segurança do Estado da República Popular da China ou o SVR russo ou uma lista inteira de grupos profissionais financeiramente motivados como Lapsus e outros.
00:07:43E depois aqui estão as técnicas que eles usaram para atacar diferentes vítimas.
00:07:49A ideia de que os vibe coders vão entender tudo isto é simplesmente ridícula.
00:07:54Mas essa tem sido, efetivamente, a suposição até agora.
00:07:58Então, o que podemos fazer melhor.
00:08:00Bem,
00:08:00a primeira coisa que podemos fazer é começar a,
00:08:04sabem,
00:08:04quando queremos resolver problemas como engenheiros,
00:08:08começamos a dividir o problema em partes,
00:08:10certo.
00:08:11E a verdade é que temos duas categorias de problemas totalmente diferentes aqui.
00:08:16A primeira é que temos de dividir o uso destas ferramentas em duas categorias principais?
00:08:22A primeira é o verdadeiro vibe coding, certo?
00:08:25Quando falo de vibe coding,
00:08:27refiro-me a pessoas que não são engenheiros de software profissionais,
00:08:32pessoas normais,
00:08:33certo.
00:08:34Pessoas que têm hobbies normais.
00:08:36Então, isto seriam pessoas que não estão nesta sala, certo?
00:08:40Que fazem coisas como não vir a esta conferência numa quinta-feira à tarde,
00:08:45têm coisas melhores para fazer,
00:08:47sem ofensa,
00:08:48do que estar no Chip AI?
00:08:49E isto é bom.
00:08:50É ótimo estar aqui?
00:08:51Eu estou aqui.
00:08:52Mas, tipo, se estão aqui, não são um vibe coder, certo.
00:08:56Sabem,
00:08:57nós somos pessoas que trabalham,
00:08:59quando usamos IA,
00:09:00provavelmente estamos a fazer engenharia assistida por IA,
00:09:04certo?.
00:09:09Então,
00:09:09vibe coding seriam pessoas que,
00:09:11pela primeira vez,
00:09:12conseguem aceder a este tipo de capacidade com novas ferramentas construídas apenas para elas.
00:09:17Então,
00:09:18a primeira coisa que temos de fazer é separar as classes totais de problemas e a forma como as pessoas estão a usar estas ferramentas.
00:09:25E acho que temos de parar de chamar vibe coding à engenharia assistida por IA.
00:09:29Talvez a engenharia assistida por IA seja,
00:09:32podemos encontrar um termo melhor aqui.
00:09:34Mas isto varia desde pessoas a autocompletar,
00:09:36a completar com tab e cursor,
00:09:38até,
00:09:38sabem,
00:09:39agora um engenheiro profissional irá despachar quatro ou cinco agentes diferentes em segundo plano para fazer diferentes trabalhos enquanto ele faz o que quer fazer.
00:09:48E mesmo que esses agentes estejam a agir autonomamente,
00:09:51eles ainda estão no comando e sabem o que querem,
00:09:53o engenheiro sabe.
00:09:54Isso ainda é muito diferente do vibe coding.
00:09:57O vibe coder está muitas vezes,
00:09:59a depender de uma plataforma completa,
00:10:01certo?
00:10:01Então,
00:10:02eles precisam de uma plataforma que faz efetivamente tudo por eles de ponta a ponta.
00:10:06Eles não estão a montar as coisas peça por peça.
00:10:09Eles estão a descrever um resultado.
00:10:11Eles têm um resultado que querem.
00:10:13Podem fazer isso em inglês ou na língua que falarem.
00:10:15Podem estar a fazê-lo visivelmente, certo?
00:10:18Há várias destas plataformas que permitem que o organizem com GUIs e tal.
00:10:22Obviamente, o V0 é um ótimo exemplo disso.
00:10:24E então eles têm um resultado que querem.
00:10:26Eles não estão necessariamente,
00:10:28é improvável que estejam a descrever como estão a tentar chegar lá.
00:10:32Muitas vezes, estão a começar do zero..
00:10:34Então,
00:10:35eles têm o benefício de não ter de encaixar o que quer que a plataforma de vibe coding esteja a fazer num tipo de base de código existente ou num tipo de arquitetura existente,
00:10:44o que,
00:10:45do ponto de vista da segurança,
00:10:46é realmente ótimo.
00:10:47Podemos falar sobre isso num segundo.
00:10:49Mas isto dá muitos benefícios do ponto de vista da segurança à plataforma de vibe coding,
00:10:54pois não tem de se encaixar em algum tipo de AWS existente ou,
00:10:57Deus me livre,
00:10:58numa arquitetura auto-hospedada..
00:11:00A desvantagem aqui é que eles têm pouca capacidade por si próprios para proteger a saída.
00:11:05Então,
00:11:05é aqui que acabamos com aqueles problemas sobre os quais vemos as pessoas a tweetar,
00:11:10como 'porque estou a ver este erro?' ou 'para onde foi todo o meu Bitcoin?' Que,
00:11:14se pesquisarem no X por 'para onde foi o meu Bitcoin',
00:11:17encontram muitos tweets,
00:11:18certo?
00:11:19Porque isso acaba por ser,
00:11:20quero dizer,
00:11:21encontram isso por muitas razões,
00:11:23mas o vibe coding acaba por ser uma das razões agora para as pessoas tweetarem isso?
00:11:27Porque eles não têm a capacidade de olhar para a saída e depois descobrir se é segura ou não?
00:11:33Enquanto um engenheiro de software que por acaso está a usar IA para melhorar o seu trabalho,
00:11:38é um profissional que está a supervisionar um agente..
00:11:41E,
00:11:42novamente,
00:11:42isso pode ser tão simples como 'comecei uma função e quero que a termines para mim'.
00:11:46Pode ser tanto quanto 'tenho este bug e quero que trabalhes nele e o corrijas'.
00:11:50E isso pode ser que estejas a despachar um agente para trabalhar para ti durante 30 minutos.
00:11:55Mas,
00:11:55no final,
00:11:56eles provavelmente estão a descrever um componente que querem com um pedido muito mais específico.
00:12:00E assim,
00:12:01eles têm muito mais especificidade e não tanto a saída que querem,
00:12:04mas sim 'aqui está a camada de passos que quero'.
00:12:07E eles também podem definir, 'ok, primeiro dá-me um plano.
00:12:10Tu editas o plano e depois devolves o plano ao agente e deixas que ele execute passo a passo'.
00:12:14Agora,
00:12:15a desvantagem para estas pessoas é que muitas vezes estão a trabalhar com uma base de código existente e,
00:12:20depois,
00:12:20muitas vezes com requisitos,
00:12:22requisitos de conformidade,
00:12:23requisitos de arquitetura.
00:12:24Normalmente não estão a começar do zero se estiverem a fazer engenharia assistida por IA.
00:12:29Então,
00:12:29não é tão fácil para ti simplesmente criar algum tipo de plano de segurança se fores este tipo de pessoa.
00:12:34Mas,
00:12:35esperançosamente,
00:12:36tens algumas competências de segurança e podes até ter uma equipa de segurança dedicada em que podes confiar se fores esta pessoa.
00:12:42Então,
00:12:43estas pessoas têm requisitos de segurança muito diferentes com os quais podemos ajudá-los.
00:12:47Eles precisam das suas próprias soluções.
00:12:49Então,
00:12:50quais são algumas soluções que podemos fazer como grupo para ajudar estas pessoas,
00:12:54especialmente as que trabalham em plataformas de codificação de IA??
00:12:56Então, o que precisam os vibe coders?
00:12:58A primeira coisa é que precisam que as coisas sejam seguras por design..
00:13:01Então,
00:13:01quando falamos de segurança por design,
00:13:03muitas vezes estamos a falar do produto final,
00:13:04certo?
00:13:04Isto é muitas vezes,
00:13:05estamos a falar de uma plataforma SaaS que deve ter boas opções de autenticação por padrão,
00:13:10que todas as configurações devem ser seguras por padrão e que se tem de desativar intencionalmente essas configurações seguras e tal.
00:13:16Na perspetiva da codificação de IA,
00:13:18o que realmente queremos é que a configuração do vibe coding,
00:13:21a arquitetura e o código sejam com escolhas bem definidas.
00:13:23Que o agente de codificação de IA deve ter uma opinião muito clara sobre quais componentes devem ser usados e como devem ser configurados para fazer as coisas corretamente à primeira vez.
00:13:32Falei sobre o exemplo do Superbase ou qualquer tipo de base de dados.
00:13:36Deve ter uma opinião sobre a segurança ao nível da função..
00:13:39Deve ter uma opinião sobre,
00:13:40bem,
00:13:41por padrão,
00:13:41os seus utilizadores devem ter muito pouco ou nenhum acesso aos dados e depois devemos dar-lhes explicitamente acesso aos dados conforme precisarem,
00:13:50certo?
00:13:50Não deveríamos ter apenas uma base de dados de backend onde se pode aceder a tudo e depois bloquear o acesso.
00:13:57Deve ter uma opinião forte sobre isto e depois tomar essas decisões em nome do utilizador porque é improvável que um vibe coder neste cenário seja capaz de tomar essas decisões por si próprio.
00:14:08Provavelmente também deve detetar se um projeto que lhe é pedido para fazer está fora do âmbito do que se sente confortável em fazer.
00:14:16Há várias plataformas de vibe coding onde se pode pedir,
00:14:19'por favor,
00:14:20constrói-me um sistema de registos médicos' e ele fá-lo-á e depois dirá,
00:14:24'aqui está.
00:14:24Aqui está um sistema de registos médicos'.
00:14:27O nosso CEO,
00:14:28Jack Cable,
00:14:28que está aqui,
00:14:29fez isto numa plataforma de vibe coding e ela disse,
00:14:32'aqui está o seu sistema de registos médicos.
00:14:35É compatível com HIPAA'.
00:14:36Sim, então, novidade: isso não era compatível com HIPAA..
00:14:40Deixem-me dizer-vos como profissional,
00:14:42como CSO de uma empresa pública,
00:14:44que isso não era verdade.
00:14:45Apenas dizer que algo é compatível com HIPAA não o torna magicamente compatível com HIPAA.
00:14:49Não é assim que funciona.
00:14:50E ele apontou.
00:14:51'Não acho que isso seja compatível com HIPAA'.
00:14:53E eu disse, 'oh não, tens razão.
00:14:54Não acho que seja'.
00:14:55E fez algumas mudanças.
00:14:56'Agora é compatível com HIPAA'.
00:14:58Ainda não era, certo?
00:14:59Este é o tipo de coisa que,
00:15:00se eu estivesse a construir uma plataforma de vibe coding,
00:15:03se me pedissem para construir um sistema de registos médicos,
00:15:05eu provavelmente diria,
00:15:06'não,
00:15:07não vou fazer isso.
00:15:08Essa é uma má ideia.
00:15:09Está no lugar errado para isso, senhor'.
00:15:11O mesmo com,
00:15:11'por favor,
00:15:12constrói-me um sistema para armazenar o meu Bitcoin'.
00:15:14Eu diria, 'não, não vou fazer isso.
00:15:16Essa não é uma boa ideia.
00:15:17Não vou armazenar Bitcoin para si.
00:15:18Isso vai ser roubado.
00:15:19Esse Bitcoin vai direto para a Coreia do Norte e vai ser usado para comprar foguetes.
00:15:23Deve fazer outra coisa com o seu Bitcoin'..
00:15:26As plataformas de vibe coding devem conhecer os seus limites.
00:15:30E deveria haver algo no meio que,
00:15:31se lhe pedirem para fazer algo como armazenar informações pessoais,
00:15:35ele permitirá que o faça,
00:15:37mas irá ativar uma série de funcionalidades de segurança e,
00:15:40se possível,
00:15:41trazer agentes de segurança,
00:15:42tal como em várias plataformas de vibe coding.
00:15:45Se quiser armazenar dados,
00:15:46ele dirá,
00:15:47'ótimo,
00:15:47preciso de um servidor de base de dados'.
00:15:50Se quiser reproduzir vídeo,
00:15:51ele dirá,
00:15:52'ok,
00:15:52preciso de um CDN de vídeo',
00:15:54certo?
00:15:54Então,
00:15:55há coisas no meio,
00:15:56mas há algumas coisas que deveriam ser tipo,
00:15:58'sim,
00:15:59essa é uma má ideia.
00:16:00Simplesmente não vou fazer isso por si'.
00:16:02E,
00:16:03finalmente,
00:16:03o que eles precisam é de ter esse tipo de envolvimento com parceiros que lhes permitam fazer revisão de código,
00:16:09porque um vibe coder não vai dizer,
00:16:11'oh,
00:16:12eu já tenho uma relação com uma ferramenta de revisão de software'..
00:16:15Isso simplesmente não é algo que eles vão trazer.
00:16:18Então,
00:16:18queremos que isso seja incorporado no produto base,
00:16:21assim como se tem essa relação base com um parceiro de base de dados ou algo do género..
00:16:25Paternalismo ou maternalismo de segurança,
00:16:28se preferirem,
00:16:29é aceitável.
00:16:29É aceitável tomar decisões em nome de utilizadores que não têm a capacidade de o fazer.
00:16:34Acho que isto é algo que a indústria da segurança tem tido medo de fazer porque nós,
00:16:39como pessoas de segurança,
00:16:40temos medo de ser responsabilizados por decisões que tomamos em nome de outras pessoas.
00:16:45Este é apenas um problema comum com as pessoas de segurança é que o que faremos é criar uma corda bamba.
00:16:51E se alguém cair da corda bamba,
00:16:52dizemos,
00:16:53'oh,
00:16:53droga,
00:16:54desculpa.
00:16:54Acho que não sabes andar na corda bamba.
00:16:57A culpa é tua, certo?' Isso não é aceitável?
00:16:59É melhor fazermos o nosso melhor para dar às pessoas uma forma segura de atravessar esse abismo e assumir alguma responsabilidade se as pessoas caírem.
00:17:07Não é aceitável para nós tornar as coisas tão difíceis.
00:17:10É aceitável ser um pouco paternalista nestes casos e tomar decisões,
00:17:14especialmente se estiver a construir produtos que sabe que serão usados por não-especialistas.
00:17:19Agora, e se alguém for um especialista.
00:17:22E se estiver a construir um produto para especialistas?
00:17:25Então,
00:17:25isto seria mais como um cloud code ou um cursor,
00:17:28ou um produto para o qual espera que as pessoas sejam mais experientes?
00:17:32Agora,
00:17:32o cloud code é um desafio interessante porque é usado tanto por pessoas comuns como por pessoas aqui,
00:17:38certo.
00:17:38E então,
00:17:39se for um gestor de produto para a Anthropic,
00:17:41torna-se mais como 'queremos ter um modo,
00:17:44um modo de vibe code?
00:17:45Queremos detetar se queremos dar um teste de antemão?'?
00:17:48Não tenho a certeza de como querem abordá-lo,
00:17:50mas acho que há um desafio interessante do ponto de vista de um gestor de produto.
00:17:54Em que ponto se ativa um modo de vibe code onde se está realmente a fazer coisas em nome de um utilizador versus dar-lhes mais capacidades??
00:18:01Portanto,
00:18:02certamente,
00:18:02um cursor só deveria ser usado provavelmente por engenheiros profissionais.
00:18:05Então,
00:18:06os engenheiros profissionais também precisam de segurança por design.
00:18:10Agora, é de uma forma diferente, certo?
00:18:12Tipo,
00:18:13se estiver a fazer segurança por design para um engenheiro profissional,
00:18:17provavelmente não estará a tomar decisões arquitetónicas abrangentes e radicais.
00:18:22Mas o que está a fazer é não cometer aqueles erros de que acabámos de falar,
00:18:2720% das vezes no GPT-5 e 60% das vezes ou algo assim na situação do Grok,
00:18:32onde está apenas a cometer erros de segurança estúpidos,
00:18:35certo?
00:18:36Precisa de criar e escrever código que não tenha falhas por padrão.
00:18:40E precisa de,
00:18:41pelo menos,
00:18:42avisar o utilizador e questioná-lo,
00:18:44"Ei,
00:18:44posso fazer isto melhor para si por padrão?" Em vez de tentar tomar decisões padrão que não são uma boa ideia?
00:18:51Algo em que estes agentes são realmente muito maus é ter uma visão geral..
00:18:56Acho que todos já viram isto acontecer,
00:18:58onde se perguntam a um agente de codificação,
00:19:01"Gostaria de construir um sistema incrivelmente complexo que faça muitas coisas." E ele responde,
00:19:08"Ótimo,
00:19:08vou começar a escrever código agora mesmo." Não é assim que construímos software,
00:19:13certo.
00:19:14Tipo,
00:19:14não se juntam 20 pessoas para construir um sistema distribuído incrivelmente complexo e se começa apenas por abrir um ficheiro e escrever código,
00:19:23certo.
00:19:24Tem um PRD?
00:19:25Tem uma reunião de design.?
00:19:26Pensa nos nossos requisitos.
00:19:28Faz muita gestão de produto.
00:19:29Há algumas exceções,
00:19:31mas na maior parte,
00:19:32os agentes de codificação só querem começar a escrever código.
00:19:35É isso que eles sabem.
00:19:36Eles saltam para isso imediatamente.
00:19:38E então,
00:19:38acho que o que seria bom seria que estas coisas começassem a abrandar e tivessem os passos de planeamento e fossem muito mais ponderadas sobre,
00:19:46"Vamos definir uma arquitetura e um design,
00:19:48" e depois fazer coisas como documentar APIs,
00:19:51documentar como vamos fazer a validação de entrada.
00:19:54Como vamos prevenir falhas comuns neste tipo de arquitetura?
00:19:57Como vamos fazer a autenticação entre,
00:19:59"Está a projetar algo que definitivamente terá diferentes serviços.
00:20:02Como vamos autenticar esses diferentes serviços?" Este é o tipo de coisa em que quase nenhum dos agentes de codificação pensa e seria realmente sensato fazer de antemão quando se está a começar,
00:20:13mesmo que seja um engenheiro profissional.?
00:20:16E também precisamos da capacidade de ter agentes de segurança de IA.
00:20:20Uma das coisas engraçadas que está a acontecer é que,
00:20:23se trabalhar numa pequena startup ou tiver 22 anos,
00:20:26pensa que as únicas pessoas que escrevem software são engenheiros de software,
00:20:30mas vejo muitos profissionais nesta sala..
00:20:33Quando se é um profissional,
00:20:35e especialmente se se trabalha numa empresa regulada ou que faz algo importante como construir aviões ou algo assim,
00:20:41percebe-se que existem engenheiros de software,
00:20:44mas também engenheiros de segurança,
00:20:46e arquitetos de segurança,
00:20:48e engenheiros de privacidade,
00:20:49e pessoas de conformidade,
00:20:51e advogados.
00:20:52Eu sei.
00:20:52Não somos super fãs de todas estas pessoas,
00:20:55mas elas têm trabalhos importantes.
00:20:57Há uma razão para estas pessoas existirem,
00:20:59e há uma razão para influenciarem a base de código,
00:21:02porque coisas más aconteceram com o software,
00:21:05e por isso criámos todo o tipo de regras sobre por que escrevemos software e por que temos de ter regras de conformidade e por que temos gestão de produto,
00:21:14por que temos leis de privacidade e tal.
00:21:16O que fizemos foi pegar no trabalho do engenheiro de software,
00:21:20e pegámos numa semana de trabalho de 40 horas,
00:21:23e transformámo-la em 20 minutos de tempo de GPU.
00:21:26Bem,
00:21:26todas essas outras pessoas ainda trabalham 40 horas por semana e interagem umas com as outras em salas de conferência e não por MCP e não conseguem operar à mesma velocidade que um engenheiro de software que tem 10 agentes a operar em segundo plano,
00:21:41a cuspir código.
00:21:42O que também precisamos de fazer é construir mecanismos para que todas as outras pessoas que ainda têm trabalhos importantes possam ser tão eficientes quanto um engenheiro de software na era da codificação de IA,
00:21:54porque no final,
00:21:55ainda há humanos nas empresas que têm responsabilidades reais.
00:21:59De facto,
00:21:59algumas destas pessoas poderiam ir para a prisão se os engenheiros de software com os seus agentes de codificação fizessem um mau trabalho.
00:22:08Fui CISO de uma empresa pública três vezes.
00:22:10Esse é um trabalho aterrorizante,
00:22:12como uma piada que gosto de contar,
00:22:14e não é verdade,
00:22:15mas parece um pouco verdade que a palavra CISO é grega para o bode que é sacrificado primeiro,
00:22:20certo?
00:22:21Mas é realmente aterrorizante ser um CISO hoje em dia,
00:22:24porque se é culpado pelo que centenas ou milhares ou dezenas de milhares de outras pessoas podem estar a fazer sobre o qual não se pode realmente ter controlo ou sequer compreender,
00:22:35e isso era verdade antes de cada uma dessas pessoas ter cinco agentes em segundo plano a escrever código para si.
00:22:42E então,
00:22:42precisamos de encontrar formas de que estes humanos que têm trabalhos incrivelmente importantes em torno da conformidade,
00:22:49da privacidade,
00:22:50da segurança,
00:22:51sejam capazes de entender e ter alguma ideia de que as regras que têm de cumprir no mundo físico ainda estão a ser aplicadas.
00:22:58Então,
00:22:59na Corridor,
00:22:59acreditamos que há duas áreas para começar,
00:23:02haverá mais,
00:23:03mas há pelo menos duas áreas com as quais temos de começar onde precisamos de ter alguma padronização para tornar a codificação de IA pronta para empresas.
00:23:12Primeiro,
00:23:12telemetria,
00:23:13e depois no fluxo de trabalho de segurança.
00:23:15No lado da telemetria,
00:23:17vamos escrever uma publicação de blog sobre isto.
00:23:20Provavelmente sairá na próxima semana.
00:23:22Pensamos que os agentes de segurança precisam de enviar tudo o que estão a fazer,
00:23:27todas as suas interações com os utilizadores,
00:23:29que este é o tipo de coisa que,
00:23:31se for uma empresa,
00:23:32precisa de ser capaz de ver num local central o que as pessoas estão a fazer com os seus agentes,
00:23:38quem está autenticado como quem,
00:23:40ter total visibilidade nos prompts e total visibilidade nas ferramentas que o agente está a chamar,
00:23:46e depois especialmente no código que está a ser gerado.
00:23:49O nosso produto realmente nos fornece visibilidade,
00:23:52mas temos de o fazer por engenharia reversa de como todos os agentes de codificação funcionam.
00:23:57É um pouco 'hacky'.
00:23:58Não é muito divertido.
00:24:00Seria muito melhor se o agente de codificação suportasse isto..
00:24:07Então, a empresa que foi mais longe aqui é a Anthropic.
00:24:10O Claude Code suporta um padrão baseado em telemetria,
00:24:13por isso é um bom padrão aberto.
00:24:14É bastante limpo.
00:24:15Na sua versão atual, tem 70% do que precisam.
00:24:17Numa versão futura,
00:24:18parece que vão lançar 90% do que todos nós precisamos.
00:24:21Então,
00:24:22seria ótimo se,
00:24:23primeiro,
00:24:23a Anthropic lançasse tudo,
00:24:24e depois,
00:24:25segundo,
00:24:25se todos os outros os copiassem.
00:24:27Mas seria realmente ótimo se todos os agentes de codificação tivessem a capacidade de obter telemetria do que todos estão a fazer.
00:24:34Esse é apenas o primeiro passo.
00:24:35É o primeiro passo de qualquer solução de segurança,
00:24:38apenas para saber o que está a acontecer.
00:24:40E seria realmente ótimo se isto pudesse ser configurado por MDM,
00:24:43por gestão de dispositivos.
00:24:45Assim,
00:24:45como CISO de uma empresa,
00:24:46poderia simplesmente enviar,
00:24:48usando o seu provedor de MDM,
00:24:49para a máquina de todos,
00:24:51"Ei,
00:24:51enviem-me toda a telemetria para este lugar." Então não teria de ter agentes a ir a todas estas máquinas para tentar puxá-la.
00:24:57A segunda área,
00:24:58penso eu,
00:24:59mais importante e mais interessante é que precisamos de um mecanismo para padronizar essa conversa.
00:25:04Como falamos,
00:25:05engenheiros de software e engenheiros de segurança costumavam encontrar-se para tomar café e conversar..
00:25:10Bem,
00:25:11precisamos de formas padrão para os agentes de segurança e os agentes de software falarem uns com os outros para replicar o que aqueles humanos costumavam fazer.
00:25:19E precisa de ser meio que determinístico..
00:25:20Então,
00:25:21novamente,
00:25:21fazemos isto agora com o nosso produto,
00:25:24mas tivemos de o 'empurrar' para lá.
00:25:25E não é determinístico.
00:25:27Baseia-se em como o LM se está a sentir.
00:25:29E seria bom que,
00:25:30se pedir a um agente de codificação para fazer algo em segundo plano durante 30 minutos,
00:25:34ele fosse e falasse com o seu agente de segurança e dissesse,
00:25:38"Aqui está o meu plano".
00:25:39Recebes feedback sobre o plano.
00:25:41Ele diz, "Aqui está o meu código".
00:25:42O código é verificado.
00:25:44Todos os bugs são verificados.
00:25:45E depois ele corrige todos os bugs.
00:25:47E tudo isso é feito sem o envolvimento do engenheiro.
00:25:50E depois a equipa de segurança vê nesta lista de verificação,
00:25:53"Sim,
00:25:54tudo isto foi corrigido",
00:25:55o que seria incrível.
00:25:56Então, o que temos agora é um corredor.
00:25:58Lançámos isto hoje em GA.
00:25:59Tivemos clientes empresariais,
00:26:01mas o que lançámos hoje em GA é que nos ligamos com um plugin VR ID,
00:26:05e ligamo-nos via MCP ao seu agente de codificação que,
00:26:07quando lhe pede para fazer algo,
00:26:09nos envia um plano.
00:26:10E depois podemos usar isso para fornecer contexto de segurança específico para uma base de código.
00:26:15E isso fornece tanto conselhos de segurança genéricos,
00:26:18mas também permite que uma empresa tenha as suas regras de segurança específicas para essa empresa.
00:26:24Então,
00:26:24digamos que é um grande banco e tem,
00:26:26'é assim que lidamos com números de segurança social',
00:26:29ou 'é assim que tokenizamos números de cartão de crédito'.
00:26:32Esse é o tipo de contexto que podemos fornecer a esse agente de segurança para garantir que o agente de codificação faça o seu trabalho em primeiro lugar.
00:26:40E depois verificamos esse código no backend para garantir que essa regra foi fornecida.
00:26:45E depois também recolhemos telemetria dos nossos plugins IDE.
00:26:48Assim,
00:26:48podemos ver toda esta interação e garantir que o plugin está a fazer o seu trabalho.
00:26:53E depois também ver todas as ferramentas de codificação não autorizadas que todos estão a usar.
00:26:58Não que algum de vocês traga uma ferramenta de codificação para o trabalho que não foi autorizada pela vossa equipa de segurança.
00:27:05Vejo muitos cumpridores de regras nesta sala, com certeza.
00:27:08E por isso já estamos a fazer isto,
00:27:10mas seria super legal se isto se tornasse uma coisa padrão que muitos agentes de codificação diferentes suportassem,
00:27:16e depois muitas pessoas pudessem competir contra nós e copiar o nosso produto..
00:27:22Está tudo bem.
00:27:23Estamos felizes por ser o Kleenex do setor,
00:27:25com muitas pessoas a fazer este tipo de trabalho.
00:27:28Mas acho que este vai ser o futuro de ter agentes de codificação e agentes de segurança a ter uma relação aqui,
00:27:34assim como os engenheiros de segurança e os engenheiros de software têm uma relação totalmente amigável e nada competitiva ou difícil hoje em dia..
00:27:42Lançámos orgulhosamente isto em GA hoje,
00:27:45e disponibilizámo-lo no marketplace de agentes de IA da Vercel.
00:27:48Então, estamos lá no topo.
00:27:50Podem ir a corridor.dev para nos ver ou encontrar-nos no marketplace da Vercel.
00:27:54Somos o único produto de segurança lá.
00:27:56Então,
00:27:57agradecemos muito à Vercel pela sua parceria nisso e agradecemos por me darem este tempo hoje.
00:28:02Se quiserem conversar connosco,
00:28:04o Jack e eu,
00:28:05o nosso CEO e cofundador,
00:28:06estaremos no corredor para falar sobre isso.
00:28:09De qualquer forma,
00:28:10acho que há muito que podemos fazer juntos aqui para dar este superpoder dos agentes de codificação de IA a milhões de pessoas,
00:28:17ao mesmo tempo que os protegemos destes vilões que também estão por aí.
00:28:21De qualquer forma, sou o Alex, alex@corridor.dev.
00:28:24Se quiserem conversar,
00:28:25estarei no corredor ou enviem-me um email.
00:28:27Muito obrigado.
00:28:28Muito obrigado à Vercel.
00:28:30Tenham um ótimo resto de dia..