Segurança de painel admin no vibe coding: subdomínio e 2 fatores
Guilherme Saraiva respondeu ao vivo como proteger o painel admin de um cliente: subdomínio no lugar de /admin, senha forte e 2 fatores no primeiro login e banco sem dado sensível.
Antes de decidir como o painel de administração vai autenticar alguém, decida onde ele vai morar. Um painel que responde em /admin está no primeiro endereço que qualquer varredura automática testa, e mudar isso não custa código: o painel vai para um subdomínio próprio, admin ponto o domínio do cliente, e o site que ele administra continua onde estava.
Guilherme Saraiva montou essa resposta ao vivo, sem preparo, depois que um espectador que tinha acabado de mostrar na live o próprio catálogo de carros feito com vibe coding perguntou o que fazer "se eu faço um painel de admin para colocar dados do cliente". Ele parou para pensar antes de falar ("Pera aí, deixa eu pensar") e começou pelo endereço. Vale ver como isso terminou em vibe coding para checar se painel admin esta exposto direto na internet. Vale ver como isso terminou em backup wordpress. Foi o mesmo caminho de como fazer auditoria de segurança com vibe coding.
Tire o painel da barra e ponha num subdomínio
A primeira coisa que ele mudaria é o caminho, e o critério é o hábito de quem ataca:
eu usaria um subdomínio, tá ligado? Em vez de usar um barra
Uma rota previsível no domínio principal é, nas palavras dele, "qualquer coisa que a galera que é hacker já busca", e o site de um cliente pequeno costuma estar bem na rota mais previsível que existe. A separação que ele propõe é de host, com o painel fora do endereço público:
Eu já colocaria isso num outro domínio, mas que controla esse, saca?
O painel passa a atender em admin ponto o domínio do cliente e continua administrando o site público. Sozinho, o subdomínio não protege nada, e ele não vendeu isso como proteção. O que cai é o volume de tentativa automática que chega até a sua tela de login.
O dono recebe o login pronto, com senha forte e 2 fatores
Com o painel no endereço novo, ele passou para a porta, que no vocabulário dele é "um sistema aí de double check aí pro pro dono da empresa". Quem monta o primeiro acesso é você:
você faz o login para ele, manda uma senha forte para ele, manda um e-mail para ele, eh, mete um dois fatores
O segundo fator entra no mesmo movimento: você gera o QR code e manda junto, para o dono cadastrar o painel no aplicativo de autenticação do celular dele. Assim a senha nunca passa pela criatividade de quem vai usar o painel, e os 2 fatores deixam de ser um item opcional perdido numa tela de configurações, porque sem cadastrar o aplicativo ninguém entra na primeira vez. Numa entrega de vibe coding isso custa uma tela no projeto e um assunto na reunião com o cliente. Depois de montar esse acesso, entre no sistema com uma conta sem privilégio e confira o que ela enxerga: vibe coding para testar como usuario comum sem ser admin mostra esse teste de permissões feito na pele do cliente, e não na do administrador.
O dado que o painel não guarda
Resolvidos o endereço e a porta, ele foi olhar o que aquele painel ia armazenar:
não vai ter dado sensível, né? vai ter os valores só, porque ele não, ninguém fecha a compra online, né? a pessoa vai ter que ir lá na loja, vai ter que assinar contrato
Uma loja de carros fecha a venda no balcão, com contrato assinado na frente do vendedor. O painel fica com valor e estoque, sem motivo para guardar documento ou dado de pagamento. Foi por isso que ele encerrou a parte do banco dizendo que "já dá para dormir tranquilo, mano". O mesmo problema apareceu em vibe coding para proteger logica sensivel no servidor. Vale ver como isso terminou em vibe coding para uma missao por camada front back seguranca.
Rode essa pergunta no seu projeto antes de blindar qualquer coisa. Aquele campo de CPF que entrou no cadastro só porque o formulário ficava mais completo com ele vira responsabilidade sua no dia em que alguém conseguir entrar, e é o único risco que você elimina apagando código em vez de escrevendo. Isso aparece também em camadas de seguranca.
Segurança em vibe coding se arquiteta antes de virar prompt
A ordem importa mais do que a técnica escolhida, e ele descreveu a ordem:
arquitetar o que que você quer que esteja protegido, pensar em quais as possibilidades de proteger isso e depois executar isso
Primeiro você escreve o que precisa estar protegido naquele projeto, no caso o painel e os valores do estoque. Depois lista as formas possíveis de proteger cada um. Só então o pedido vira prompt, porque um pedido genérico de segurança devolve um resultado do tamanho do pedido. É assim que o vibe coding funciona na prática.
Na execução ele usa 2 assistentes. Monta o código com um, pede para a outra IA revisar e repete o ciclo, "Passa em duas, velho", "Faz isso umas duas, três vezes". Quem revisa é o modelo que não escreveu aquilo, e o custo de rodar mais uma volta é o tempo de colar o código na outra janela. Escolher qual IA vai executar cada passo do trabalho é decisão que você toma no começo: vibe coding para escolher modelo de ia por tarefa te mostra como o orquestrador distribui essas tarefas quando você dita a regra de roteamento.
Dificultar é o objetivo realista
Ele fechou o assunto sem prometer blindagem:
Nenhum sistema é impenetrável, tá ligado?
O exemplo que usou foi de quem tem orçamento para se defender: "Tem site de governo aí sendo hackeado, mas a gente consegue amenizar, né, que a gente consegue dificultar pelo hacker, velho." Nada do que ele listou torna o painel inviolável. O subdomínio tira quem varre rota óbvia e os 2 fatores tiram quem chegou só com a senha vazada. Se as duas camadas caírem, o que sobra para levar é uma tabela de preços de carro.
O que checar hoje no painel que você já entregou
Se você tem um painel rodando na casa de um cliente, as 3 verificações cabem numa tarde. Abra o endereço e veja se ele é uma barra do domínio principal. Depois descubra como o dono entrou na primeira vez, se a senha foi ele que escolheu e se existe segundo fator ligado naquela conta. Por último, leia a tabela do banco campo por campo e apague o que entrou ali sem ninguém precisar.
Responder uma pergunta de segurança ao vivo, parando para pensar no meio e terminando com a ressalva de que nenhum sistema é impenetrável, é o que o manifesto do movimento pede de quem constrói em público. Dá para assistir à live e ouvir o trecho inteiro, com a pergunta do espectador e a pausa antes da resposta.