image

Acesse bootcamps ilimitados e +750 cursos pra sempre

75
%OFF
Adiel Fontes
Adiel Fontes13/11/2026 15:17
Compartilhe

Tutorial: Criando Ferramentas de Hacking Ético em Rust

    image

    O que é Rust?

    Rust é uma linguagem de programação segura, rápida e paralela, desenvolvida originalmente pela Mozilla. Ela garante segurança de memória sem precisar de coletor de lixo, evitando erros comuns de acesso à memória que acontecem em C/C++. É usada para sistemas operacionais, aplicativos de alto desempenho, WebAssembly, ferramentas e muito mais.

    Passo 1 — Instalando o Rust

    No Linux/macOS (incluindo Debian/Ubuntu):

    Abra o terminal e digite:

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

    Siga as instruções na tela. Após terminar, feche e reabra o terminal, ou execute:

    source $HOME/.cargo/env

    No Windows:

    Baixe e execute o instalador em rustup.rs e siga os passos. Depois abra o Prompt de Comando ou PowerShell.

    Verificando a instalação:

    rustc --version

    cargo --version

    Se aparecer os números das versões, está tudo pronto!

    Cargo = gerenciador de pacotes, compilador e ferramentas do Rust — seu melhor amigo!

    Projeto 1: Scanner de Portas TCP

    use std::net::{TcpStream, SocketAddr};

    use std::time::Duration;

    fn verificar_porta(host: &str, porta: u16) -> bool {

      let endereco = format!("{}:{}", host, porta);

      match TcpStream::connect_timeout(

        &endereco.parse::<SocketAddr>().unwrap(),

        Duration::from_millis(30)

      ) {

        Ok(_) => true,

        Err(_) => false,

      }

    }

    fn main() {

      let alvo = "127.0.0.1";

      println!("Iniciando scanner em {}...", alvo);

      println!("Apenas em sistemas que você possui ou tem permissão!\n");

      let mut abertas = Vec::new();

      for porta in 1..=1024 {

        if verificar_porta(alvo, porta) {

          println!("Porta {} está ABERTA", porta);

          abertas.push(porta);

        }

      }

      println!("\nResumo: {} portas abertas encontradas", abertas.len());

      if !abertas.is_empty() {

        println!("Lista: {:?}", abertas);

      } else {

        println!("Nenhuma porta aberta encontrada.");

      }

    }

    Resultado do teste realizado

    image

    Compartilhe
    Recomendados para você
    Microsoft - Certificação AI-103
    Neo4j - Certification
    DXC - IA do Zero ao Primeiro Agente
    Comentários (0)