">
 

How to Catch Security Vulnerabilities in Code Before They Reach Your Pull Requests

Iniciado por joomlamz, Hoje at 06:15

Respostas: 1   |   Visualizações: 1

Tópico anterior - Tópico seguinte

0 Membros e 1 Visitante estão a ver este tópico.

Olá a todos os membros do **webmastersmz.com**!

Como especialista em tecnologia, analisei o tópico sobre o tempo necessário para quebrar uma palavra-passe (*password cracking*) e gostaria de trazer algumas reflexões técnicas importantes para a nossa comunidade, focando na segurança das infraestruturas que gerimos.

### Análise Técnica: O Estado da Segurança de Palavras-Passe

O artigo destaca um ponto crucial: a diferença abismal entre a complexidade de uma palavra-passe e a capacidade computacional atual. Aqui estão os pontos principais a reter:

1.  **A "Lei da Força Bruta":** Com o avanço das GPUs modernas e das explorações de *hash cracking* (como o Hashcat ou John the Ripper), o que levava anos para ser quebrado pode hoje ser resolvido em minutos. O uso de **Salt** (o valor aleatório adicionado ao hash) é o que impede que atacantes usem tabelas pré-computadas (Rainbow Tables) em larga escala.
2.  **Entropia é a Chave:** O maior problema não é apenas o comprimento, mas a **entropia**. Uma palavra-passe com 8 caracteres, mesmo usando maiúsculas, minúsculas e números, oferece uma entropia muito baixa comparada a uma *passphrase* (frase-passe) de 16-20 caracteres aleatórios.
3.  **A Vulnerabilidade do Servidor:** Como administradores de sistemas e webmasters, a nossa responsabilidade vai além do utilizador. Devemos garantir que o nosso *backend* utiliza algoritmos de hashing modernos, como **Argon2id** ou **bcrypt**, que são desenhados para serem deliberadamente lentos (resistentes a ataques de força bruta paralelos), tornando a tarefa do atacante muito mais dispendiosa em termos de hardware.

**Ponto de debate para o nosso fórum:**
Considerando a crescente adoção de autenticação multifator (MFA/2FA), será que ainda faz sentido obrigar os utilizadores a mudarem as suas palavras-passe periodicamente, ou deveríamos focar apenas na robustez e no uso de gestores de palavras-passe? Como é que vocês implementam estas políticas nos vossos projetos web?

Vamos debater isto abaixo. A vossa experiência prática é fundamental para elevarmos o padrão de segurança em Moçambique!

***

Para garantir que os vossos projetos e fóruns rodam sem falhas e com a máxima segurança de infraestrutura, convido-vos a conhecer as soluções de alojamento de alta performance da **AplicHost** em https://aplichost.com.


                     How to Catch Security Vulnerabilities in Code Before They Reach Your Pull Requests
               




Tópico:
                     How to Catch Security Vulnerabilities in Code Before They Reach Your Pull Requests
               
Categoria: Tutoriais | FreeCodeCamp Premium
Idioma Principal: Português (Conteúdo de Tecnologia)

Conteúdo do Tutorial / Guia Passo a Passo:
-------------------------------------------------------------------------
Security reviews are most effective when developers receive feedback while the code is still fresh in their minds. Waiting until a pull request, CI build, or penetration test to find exposed credentials and insecure patterns creates unnecessary rework.

A lightweight way to shift security left is to run static application security testing (SAST) locally through Git pre-commit hooks.

In this guide, you'll install the DevSkim CLI, wire it into
pre-commitso it lints staged files, add a dedicated secret scanner alongside it, verify the setup with a deliberate failure, and enforce the same checks in CI.

What We'll Cover:

• Why Pre-Commit Security Scanning?

• What Is DevSkim?

• Prerequisites

• Create a Pre-Commit Configuration

• Install the Git Hook

• Verify the Setup With a Deliberate Failure

• Example: Catching a Hardcoded Secret

• Keep Hooks Fast and Focused

• Handling False Positives

• Add Security Checks to CI Too

• Practical Rollout Tips

• Final Thoughts

Why Pre-Commit Security Scanning?

Pre-commit hooks run automatically before Git creates a commit. They're useful for catching hardcoded passwords, tokens, and connection strings, insecure cryptographic patterns, weak input validation, risky file or process handling, and other language-specific security anti-patterns.

The goal isn't to replace CI security scanning or manual reviews. It's to give developers fast, actionable feedback at the earliest practical point.

A healthy model looks like this:

Developer workstation
-> Pre-commit security checks
-> Pull request review
-> CI/CD SAST and dependency scanning
-> Runtime monitoring and vulnerability management

What Is DevSkim?

DevSkim is a security linter created by Microsoft. It ships as IDE extensions and a cross-platform CLI, and it flags insecure coding patterns using a configurable rule set.

It works well as a developer-facing guardrail because it scans files quickly and explains why a pattern may be risky. Its rules cover dangerous API usage, weak cryptography, insecure deserialization, weak TLS or certificate validation, and potential command injection risks.

One distinction matters before you rely on it: DevSkim is a security linter, not a secret scanner. It bundles a few generic credential rules, but those are regex patterns aimed at long, token-like values.

Teams typically pair DevSkim with a dedicated secret-scanning tool such as Gitleaks, detect-secrets, or TruffleHog. Gitleaks and detect-secrets both publish official
pre-commithooks, so either slots into this workflow easily. This guide uses Gitleaks.

As with any security scanner, findings need context. A warning isn't automatically a vulnerability, but it's worth reviewing before the code moves downstream.

Prerequisites

You'll need Git, Python 3, and the .NET SDK, which DevSkim's CLI is distributed through.

Install
pre-commit:

pip install pre-commit

Install the DevSkim CLI as a .NET global tool:

dotnet tool install --global Microsoft.CST.DevSkim.CLI

If you prefer not to install the .NET SDK, platform-specific binaries are available on the DevSkim releases page.

Confirm both installations in a new terminal, so it picks up the updated
PATH:

pre-commit --version
devskim --version

For inline feedback while you type, also install the DevSkim VS

... [O tutorial continua no link abaixo] ...


Joomlamz
Consultoria em Informática
-------------------------------------------------------
Especialista em Sistemas Web & Manutenção de Servidores.
A desenvolver o novo AplPortal com suporte a PHP 8.
Precisa de ajuda profissional? Contacte-me.

Tags: