00:00:23
tá aí pessoal o repo aí beleza aí o
00:00:27
bertu aí o Bruno aí vão comentando né tá
00:00:30
um resumo aqui né do que que a gente vai
00:00:33
falar inclusive esse material aqui de
00:00:35
uma apresentação que eu fiz no devops
00:00:38
Experience que é um evento que acontece
00:00:40
aí mensalmente não acontecerá agora em
00:00:43
dezembro né dezembro é a velha filosofia
00:00:48
esse restinho de ano não dá mais nada né
00:00:50
mas e acompanha aí pesso um evento
00:00:54
gratuito aí sempre tem bastante conteúdo
00:00:56
bacana e tá aqui pessoal Por que
00:01:00
analisar a segurança do do código quem
00:01:03
pode começar aí o bertus que o bertzi
00:01:06
hoje é o cara que passa o dia
00:01:08
aí caçando vulnerabilidade Ô até esqueci
00:01:12
de fazer um jabazinho mas faço no final
00:01:14
depois aí mas quiser fazer agora é não
00:01:18
eu eu ia só mandar um link aí porque a
00:01:20
gente depois de muita muitos
00:01:22
atendimentos muitas coisas tomando a
00:01:24
chicotada aí nós pro 2025 agora temos
00:01:28
uma área nova na nes que está ali
00:01:29
liderada por esta pessoa aqui que vos
00:01:31
fala vou deixar o link aqui para os
00:01:32
interessados uma questão Empresarial
00:01:34
aqui que é a nossa nest Dev Arc que
00:01:36
agora é a área totalmente voltada para
00:01:39
as empresas que quiser contratar para
00:01:41
segurança de código processos mais
00:01:43
seguros de sslc implantado na empresa
00:01:46
consultoria de arquitetura de software e
00:01:48
todo o acompanhamento do processo de
00:01:49
vocês então a gente já vem fazendo isso
00:01:51
há uns anos mas agora a gente
00:01:52
centralizou numa área em específico
00:01:55
totalmente voltada a ajudar quem tiver
00:01:57
aí equipes toda parte de ti tanto do
00:02:00
levantamento de arquitetura modelagem qu
00:02:01
remodelar seu sistema Seu banco e tudo
00:02:03
mais tudo com uma visão de segurança e
00:02:05
uma visão de melhores práticas aí então
00:02:07
essa é um Jabá Empresarial mas já que
00:02:10
estou falando de segurança a a primeira
00:02:13
pergunta é por que analisar a segurança
00:02:15
do código aí minha primeira pergunta por
00:02:18
que me preocupar com segurança o pessoal
00:02:19
não se preocupa nem com teste né porque
00:02:21
é triste para caramba né na vida da da
00:02:23
maioria de desenvolvedor o que acontece
00:02:25
pessoal que eu sempre falo muita gente
00:02:27
fala que segurança é responsabilidade de
00:02:30
infraestrutura né do final lá do
00:02:32
ambiente de quem cuida do ambiente ah
00:02:33
não mas vai invadir por ali né o
00:02:35
ambiente a questão é que se algo que
00:02:39
possa ser invadido na sua aplicação
00:02:41
independente do ambientea ambiente bem
00:02:43
configurado é porque a sua aplicação
00:02:45
pode apresentar a brecha de segurança
00:02:47
para que aquilo seja causado então a
00:02:49
ideia da gente como deve se prevenir
00:02:51
para isso é garantir que o nosso código
00:02:53
minimize ou não tenha o que não vou me
00:02:55
enganar ninguém né que a história do não
00:02:57
ter aí sempre uma vulnerabilidade
00:02:58
explorada mas a ideia você Minimizar
00:03:01
problemas que o seu código possam ter
00:03:02
para que alguém faça invasão que alguém
00:03:04
roue dados sensíveis que alguém se passe
00:03:06
pela sua aplicação para aplicar um golpe
00:03:08
e tudo mais ou para que alguém derrube e
00:03:10
quebre uma empresa né sua aplicação ela
00:03:12
pode invadir um servidor botar um huner
00:03:14
lá e derrubar uma empresa então quando a
00:03:17
gente se preocupa do lado da segurança
00:03:19
de código a gente sempre minimiza esses
00:03:22
erros aí a ideia é Minimizar para tentar
00:03:25
evitar esses problemas futuros que podem
00:03:29
ocasionar um ambiente entrada em
00:03:31
produção é com isso você reduz custo
00:03:34
também né porque se você tem um
00:03:36
incidente sério com certeza você vai ter
00:03:38
que correr vai ter que contratar coisas
00:03:40
as pressas vai ter que pagar para uma
00:03:43
empresa externa de repente te ajudar né
00:03:45
Isso é tudo despesa Extra que num
00:03:49
primeiro momento sequer estava previsto
00:03:51
né sim eh a ideia eu eu sempre falo
00:03:55
assim pro pessoal pensa com segurança
00:03:59
não aumenta de verdade não aumenta o seu
00:04:01
tempo de desenvolvimento praticamente de
00:04:03
diferença do que tá lá é você pensar se
00:04:05
o que você tá fazendo pode ocasionar
00:04:06
algum problema e são coisas rotineiras
00:04:08
cara muita da sua regra de negócio é
00:04:10
você olhar ah URL se alguém trocar um ID
00:04:13
na URL trocar um identificador lá em
00:04:14
cima ele vai poder acessar uma outra
00:04:15
pagem né coisas básicas que a gente já
00:04:17
devia se preocupar desde o início do
00:04:19
desenvolvimento né então esses pontos
00:04:21
assim de segurança Ah uma pessoa pode
00:04:24
autenticar uma página uma pessoa pode
00:04:25
não autenticar uma pessoa tem permissão
00:04:27
depois que ela autentica não tem
00:04:28
permissão são coisas que se você parar
00:04:30
para olhar elas fazem parte da regra do
00:04:32
seu negócio só que elas são uma questão
00:04:33
de segurança né porque você tem que se
00:04:35
preocupar junto sabe que você falou uma
00:04:38
coisa também eh a gente vai acabar
00:04:41
focando bastante na nas ferramentas aqui
00:04:43
daí até se o Bruno puder comentar também
00:04:47
eh você pega aplicação né aplicação é um
00:04:50
exemplo clássico eh você vai mantendo o
00:04:53
projeto vira um legado e chega um ponto
00:04:56
que o pessoal sequer atualiza eh
00:05:01
dependência né e parece que não mas isso
00:05:05
é uma porta de entrada para bastante
00:05:08
tipo de de ataque né eu tô num eu tô num
00:05:12
projeto aqui que a gente teve que fazer
00:05:13
o que tá passando a empresa tá passando
00:05:16
por por auditoria de segurança
00:05:19
e E aí cara eles TM uma aplicação dotnet
00:05:23
4. full Framework né quando fez a o
00:05:27
análise de de segurança dessa aplicação
00:05:30
cara a quantidade de biblioteca
00:05:33
JavaScript Uhum E E é claro os os
00:05:36
pacotes nugget que tava com problema de
00:05:39
de segurança é absurdo eu tive que ficar
00:05:41
atualizando ó tempos porque esse daí não
00:05:43
é só atualizar né tem que atualizar
00:05:44
verificar se funcionou Break Change
00:05:46
principalmente JavaScript que é uma
00:05:47
delícia de testar JavaScript o código
00:05:49
dnet É é mais ou menos compilou passou e
00:05:52
o JavaScript isso se quebra a
00:05:54
funcionalidade da
00:05:55
tela falou você falou uma delícia a
00:05:58
cachorrinha até foi por cima de de você
00:06:01
é tá aqui querendo você falou você falou
00:06:03
JavaScript a cachorro ol julgando
00:06:04
falando assim que pariu mas o que o
00:06:07
Bruno falou é verdade o problema é o
00:06:09
seguinte eh sabe o o a história do
00:06:12
pica-pau se por que que eu posso deixar
00:06:14
para amanhã o que eu posso fazer na
00:06:15
semana que vem né o negócio de pacote é
00:06:18
a mesma coisa Ah saiu um pacote aqui não
00:06:20
depois atualizo ah depois atualizo
00:06:22
Depois eu vou ver aqui e se eu
00:06:24
atualizar e quebrar isso tem que fazer
00:06:26
parte da rotina do software pô Saiu uma
00:06:28
atualização nova
00:06:30
planejamento para se fazer para se
00:06:31
colocar isso aí para testar porque mais
00:06:33
para frente quando você precisar mano aí
00:06:36
você vai ter um problemão ó ó do caso do
00:06:38
Bruno aí tivessem feito na ordem de
00:06:40
repente o pessoal vai fazendo aí e
00:06:42
depois E aí mais mas você sabe que o
00:06:45
pessoal que nem eh a gente falou de
00:06:48
dependência né Tem um dependabot no
00:06:50
github mas assim o dependabot ele
00:06:53
funciona para projetos open source né
00:06:56
acho que dá para pagar para ele né Não
00:06:57
dá não daí você teria que o US o github
00:07:00
Advance de Security que é cobrança por
00:07:04
usuário Daí pode ser que não saia tão
00:07:06
barato né E nisso daí a gente pode até
00:07:11
mostrar depois a gente já mostrou isso
00:07:14
eh anteriormente o Bruno Inclusive
00:07:17
estava no no vídeo né a gente mostrou o
00:07:20
ASP dependên cheque né então a gente
00:07:23
pode mostrar isso rodando o próprio
00:07:25
github assim só para exemplificar né mas
00:07:28
em em tese é uma ferramenta gratuita que
00:07:30
funcionaria em qualquer
00:07:32
eh solução de de automação né E tem
00:07:36
outras também né se você for rodar
00:07:38
vulnerabilidade de contêiner eu sei que
00:07:41
o bertus aí já usou bastante o triv não
00:07:43
sei se o se o Bruno já já fez alguma
00:07:45
coisa com não o triv eu eu conhecia ele
00:07:49
conheço mas nunca foi de ficar mexendo
00:07:51
então o o o interessante do triv é que
00:07:55
além de analisar não só dependência de
00:07:58
PC já é dtnet Java node Python sei lá
00:08:02
ele Analisa também a imagem né porque
00:08:04
tem muito módulo Linux da imagem que
00:08:06
você utiliza de repente você não
00:08:08
atualiza essa imagem tem uma versão de
00:08:11
Linux mais antiga que reportou
00:08:13
vulnerabilidade isso pode ser um
00:08:14
problema né Sim esse é um ponto que e
00:08:19
isso eu vejo ainda muita gente não levar
00:08:20
em consideração a questão do docker por
00:08:24
tem gente que baixa as imagens de fontes
00:08:26
confiáveis tem gente que tem as próprias
00:08:28
imagens e existe
00:08:29
casos de redirecionamento de baixar
00:08:32
imagem então assim você tinha o seu
00:08:34
repositório fixo não sei o que você é
00:08:35
redirecionado para um outro canto baixa
00:08:36
uma imagem comprometida e é e já era e
00:08:39
outra Vamos ser bem chapéu de alumínio
00:08:42
aqui Quem garante que a fonte que eu tô
00:08:43
baixando a imagem Pode não ter uma
00:08:45
imagem comprometi chapé de alumínio hein
00:08:47
cara isso me lembra pessoas vestidas de
00:08:49
templário na Paulista hein Não mas vamos
00:08:52
ser bem Teoria da Conspiração que me
00:08:54
garante que a fonte que eu baixo lá pode
00:08:56
não est comprometida de uma imagem
00:08:57
alguma coisa então um cheque assim
00:08:58
daquele ambiente do que você baixou
00:09:00
aquela imagem para deixar o seu ambiente
00:09:02
da sua máquina que você vai colocar em
00:09:03
produção e tudo mais é importante dar
00:09:05
uma verificada naquela imagem também se
00:09:07
ela não tá com algum problema de
00:09:08
segurança e até dentro da imagem se não
00:09:10
tem uma dependência desatualizada que
00:09:11
vai gerar um problema de segurança né
00:09:13
tudo isso faz parte de um ciclos
00:09:15
completo seguro né sim mas enfim acho
00:09:19
que essa primeira parte aí né inclusive
00:09:22
né tá aí ó diminuir o risco de ataques
00:09:24
né não significa que quando você toma
00:09:27
várias medidas de segurança os ataques
00:09:29
não vão acontecer né É é é interessante
00:09:33
isso porque é o seguinte
00:09:35
Eh toda palestra todo o conteúdo de
00:09:38
segurança você nunca vai ouvir falar a
00:09:41
palavra você não vai ter ataques o que a
00:09:43
gente sempre fala o que é sempre
00:09:46
colocado em pauta é diminuir a interface
00:09:49
né de de a superfície de ataque e
00:09:52
mitigar riscos então assim é impossível
00:09:56
se você atingir 100% de segurança em
00:09:57
qualquer
00:09:59
tema hoje esse conceito não existe sim
00:10:05
uhum Então você e aí você pode ser atado
00:10:09
seu cachorro é de
00:10:11
infra não ele ele me entrega ele me
00:10:14
entrega a bolinha aqui fica desesperado
00:10:15
para pegar de volta ele é trouxa Mas é
00:10:18
isso o Eu lembro que o bertzi passou uma
00:10:22
ferramenta eu precis vou ver até se
00:10:25
ferramenta do quê conhece alguma
00:10:26
ferramenta de kit cara o sneak faz isso
00:10:29
também Analisa vulnerabilidade licença
00:10:32
Independência ele também tem como fazer
00:10:34
isso mas existe Como é que é o nome
00:10:36
daquela ferramenta até falei falando com
00:10:38
você com esses dias assim ó tem umas
00:10:40
ferramentas Open sce tem uma que chama
00:10:42
acho que eu acho que o próprio nome dela
00:10:44
é open sce licence checker eu acho que é
00:10:46
isso ela é uma ferramenta Open que faz
00:10:48
isso daí vê licença de dependência você
00:10:50
pode usar se não pode usar lá o sneak
00:10:53
faz isso se não tô enganado lá ele faz
00:10:55
isso daí
00:10:56
também tem um que é
00:10:59
do próprio kit Hub é dependencia review
00:11:02
alguma coisa assim ele também faz um
00:11:03
cheque das suas dependências lá mas tem
00:11:05
uma ferramenta cara eu vou vou lembrar
00:11:07
vou mandar para ele o link tem uma
00:11:08
ferramenta paga aí que faz ela vai atrás
00:11:11
de tudo se aquilo é pago se não sei o qu
00:11:13
licença toal tal para fazer essa essa
00:11:15
adequação aí mas o snak faz e tem o open
00:11:19
source list checker também que é uma
00:11:21
ferramenta que faz
00:11:22
também Show Ah tem aquele também como é
00:11:25
que chama aquele lá que tem o nome
00:11:26
engraçado é o o fossa lá sabe F SS é o
00:11:30
fossa nomezinho de fossa o fossa faz
00:11:32
isso daí também que eu gosto do nome
00:11:33
dele que é fossa ele faz isso daí
00:11:37
também mas enfim pessoal quero ver até
00:11:40
se eu pego depois o o fossa aí eu
00:11:43
exploro aí num num exemplo futuro aí
00:11:46
tenho eu tenho um para kubernets mas aí
00:11:48
outro papo que ele faz análise dos do do
00:11:50
dos contêiners que estão
00:11:52
rodando bacana Aí você vai perguntar o
00:11:55
nome deixa eu achar aqui que eu esqueci
00:11:57
mas eu uso te ajudar BR eu falei bacana
00:11:59
eu podia ter falado você lembra o nome
00:12:01
aí você se prejudicou aí não ele é bem
00:12:04
famoso per é bem famoso enfim se auto
00:12:07
complicou aí se auto a gente tenta
00:12:09
ajudar as pessoas não adianta mas esses
00:12:10
eremita de caverna Aí é ah não e o
00:12:12
pior tudo que assim é um negócio que eu
00:12:14
rodo tipo quase toda semana mas meu tô
00:12:17
zoando é emoção da da Live leva o cara
00:12:20
errado desse jeito é a gente
00:12:23
a é a dtnet me enchendo no saco aqui
00:12:27
certo sigamos
00:12:29
beleza Eh daí pessoal eh Como que você
00:12:33
pode implementar segurança de de código
00:12:36
né E vai ter vários tipos de de
00:12:39
ferramentas aí elas seguem aí uma um
00:12:41
tipo de prática conhecido como sast né
00:12:44
bertos static application Security
00:12:47
testing né isso sast a ideia do a gente
00:12:51
tem os dois testes aí né que vai falar
00:12:53
PR frente o sast e o Dust o sast ele
00:12:55
consiste em testar a sua aplicação assim
00:12:58
eh numa questão mais de código fonte por
00:13:00
isso que ele chama é estático é aquilo
00:13:02
lá que tá lá então ele vai olhar código
00:13:04
fonte binário tudo que você tem lá para
00:13:06
ele buscar vulnerabilidade no que já
00:13:08
existe lá então a gente tem ferramentas
00:13:10
que ela vai examinar o código V possível
00:13:12
exposição de dados V eh se tem alguma
00:13:17
coisa que pode quebrar lá pode ter um
00:13:18
problema ele dá uma verificada mais cedo
00:13:20
daquilo a sua aplicação ele faz testes
00:13:22
para ver a para ver na sua aplicação
00:13:24
antes de você colocar num ambiente de
00:13:25
homologação ou no ambiente de produção
00:13:27
em si para verificar se não tem algum
00:13:29
problema na sua aplicação ele pode achar
00:13:30
Até injeção de SQL famoso famoso sonar
00:13:33
cube né ô exato isso que eu ia falar o
00:13:35
sonar é um exemplo clássico desse daí
00:13:37
que eu uso bastante inclusível ele
00:13:38
identifica aí então a ideia dele é
00:13:41
identificar mais cedo a os problemas da
00:13:45
sua aplicação O Curioso que eu sempre
00:13:46
falo assim é que tem duas coisas que é
00:13:48
importante saber do do teste sast que é
00:13:51
assim a vantagem eu pego isso antes de
00:13:53
colocar no ambiente e tudo mais tô
00:13:55
olhando a parte do código só que a
00:13:56
desvantagem entre aspas sempre coloco
00:13:59
aspas aqui que é pro pessoal prestar
00:14:01
atenção porque às vezes tem falso
00:14:02
positivo Então você tem que saber
00:14:03
configurar suas ferramentas certinho
00:14:05
para isso daí é maioria das vezes tem
00:14:07
uns falso positivo aí se você usar o a
00:14:10
configuração padrão do sonar já é um pé
00:14:12
no saco cara já já então por isso que é
00:14:14
bom saber o que tá mexendo lá né É cara
00:14:19
Ah e pode ser colocado num pipeline né
00:14:21
também essa esse tipo de teste aí pr
00:14:23
Então pode não deveria né O legal que
00:14:25
você é que eu falo pode porque tem muita
00:14:27
gente que não tem nem o pipeline mas
00:14:29
quer fazer o teste de
00:14:31
segurança assim a vantagem você Tudo bem
00:14:33
se você não tem a pipeline mas se você
00:14:35
tem um dois Dev ali na equip não
00:14:37
deveria sim a vantagem de você ter no
00:14:40
pipeline é executar isso toda vez que
00:14:42
sobe uma versão nova né e depois tem
00:14:45
outro ponto né praticamente todas essas
00:14:48
ferramentas usam um formato padronizado
00:14:51
que chama sarif statica análises exul
00:14:55
interchange Format eu tô lendo o slide
00:14:57
viu pessoal nunca lembro na na na hora
00:14:59
que eu vou falar o os termos da dabert
00:15:02
acho que lembra cara e é tão simples
00:15:05
você criar uma pipeline se você tiver um
00:15:07
terraform zinho com meia dúzia de
00:15:10
configuração você vai lá põe o nome da
00:15:13
aplicação põe o nomezinho da aplicação
00:15:15
uma uma duas configuração dela e roda o
00:15:18
terraform apply da ele cria o
00:15:20
repositório no Git toda a pipeline cara
00:15:23
é tão tão
00:15:25
simples inclusive o jas comentou né na
00:15:28
empresa que utilizamos o sonar na na
00:15:31
Pipe show Acho que até pra próxima Live
00:15:34
ou próximas lives a gente vai ver aí de
00:15:36
de explorar também o sonar que que faz
00:15:39
parte aqui desse desse mundo aqui que a
00:15:42
gente tá abordando aqui nessas nessas
00:15:44
lives né mas enfim pessoal e o que vale
00:15:48
a pena aí destacar
00:15:50
também você sabe que se você usar jav
00:15:53
usar sonar não passa nunca
00:15:56
né Pois é né agora agora o bertu agora
00:16:00
você deu a brecha pro bertzi passar o
00:16:02
resto da Live fazendo piada sobre Java
00:16:06
Ah que mancada Que maldade Nossa tá em
00:16:10
seguro é o Java no sonaro é o
00:16:13
adolescente vive em seguro mancada ó
00:16:17
pessoal a sugestão lá que tem do Java é
00:16:19
atualize para node atualize para
00:16:22
dnet
00:16:26
mancas Pois é comentrio pesado do Bruno
00:16:29
britagem
00:16:32
manc enfim pessoal que que acontece o
00:16:36
bertus mandou aí snak fossa Open é que o
00:16:39
Wagner pediu que eu falei ele pediu se
00:16:41
podia escrever aí eu deixei algumas tem
00:16:43
várias viu Wagner Essas são algumas
00:16:45
sugestões a gente tenta mostrar aí ao
00:16:47
longo das lives acho que três lives não
00:16:49
vai ser suficiente para mostrar tudo
00:16:51
hein bertu vamos vamos a uma série