segunda-feira, 26 de julho de 2021

Lendo um arquivo para um vetor

 Falando do Bash 4.0, eis que ele surge com uma outra novidade: o comando intrínseco (builtin) mapfile, cuja finalidade é jogar um arquivo de texto inteiro para dentro de um vetor, sem loop ou substituição de comando.

-- EPA! Isso deve ser muito rápido!

-- E é. Faça os teste e comprove!

Exemplo:

$ cat frutas
abacate
maçã
morango
pera
tangerina
uva

$ mapfile vet < frutas  # Mandando frutas para vetor vet
$ echo ${vet[@]}        # Listando todos elementos de vet
abacate maçã morango pera tangerina uva

Obteríamos resultado idêntico se fizéssemos:

$ vet=($(cat frutas))

Porém isso seria mais lento porque a substituição de comando é executada em um subshell.

Uma outra forma de fazer isso que logo vem à cabeça é ler o arquivo com a opção -a do comando read. Vamos ver como seria o comportamento disso:

$ read -a vet < frutas
$ echo ${vet[@]}
abacate

Como deu para perceber, foi lido somente o primeiro registro de frutas.

terça-feira, 15 de junho de 2021

Linux join AD

 


cid join domain=empresa.lan user=Administrator pass=********


add-apt-repository ppa:emoraes25/cid && apt-get update
apt-get install cid cid-gtk

quarta-feira, 26 de maio de 2021

nmap commands

 

  • Detectando falhas em servidores utilizando o método de saída do tipo verbose -v
    nmap -sS -v -Pn -A --open --script=vuln + IP do Alvo
    (Descobre a vulnerabilidade do servidor com aquele endereço de IP especificamente)
  • Analisando vulnerabilidades em mais endereços de IP de uma rede
    nmap -sS -v -Pn -A --open --script=vuln + IP alvo/24
  • Descobrindo portas abertas, versões de serviços e sistema operacional que está rodando no alvo.
    nmap -v –sV -Pn -O —open + IP do alvo
    (O argumento “-O” pode ser substituído pelo argumento “-A”)
  • Realizando pesquisas sobre alvos
    nmap –script=asn-query,whois-ip,ip-geolocation-maxmind + IP do alvo
  • Burlando firewall
    *Existem 3 maneiras diferentes de burlar um Firewall em uma rede externa:
    nmap -f -sV -A + IP do alvo (Neste comando ocorre a fragmentação de pacotes que serão enviados para se conectar ao alvo)
    nmap -sS -sV -A + IP do alvo (Faz varreduras do tipo SYN na rede alvo)
    nmap -Pn -sV -A + IP do alvo (Não enviar pacotes ICMP para o alvo, ou seja, não pingar na rede)
  • Mandando um recado para o admin que está do outro lado da rede
    nmap –sS www.alvo.com —verbose –data-string “Você está sendo ownado, admin!”
  • Buscando falhas de DDoS
    nmap -sU -A -PN -n -pU:19,53,123,161 –script=ntp-monlist,dns-recursion,snmp-sysdescr + IP do alvo
  • Fazendo brute-force no banco de dados do alvo
    nmap --script=mysql-brute + IP do alvo

Alguns comandos com Nmap em rede interna:

  • Analisando IP e endereços de MAC de dispositivos em uma rede
    nmap 192.168.0.1/24
    (IP do Gateway da rede / 24)
  • Como fazer menos ruídos o possível ao se fazer analise em uma rede interna para não ser banido

O fato de não se fazer muito barulho na rede deve-se ao fato de não realizar a busca de endereços do MAC e para que isso não ocorra, utilizamos o comando “–send-ip”. Exemplo:

nmap –T0 –send-ip 192.168.0.1/24 (O parâmetro “-T0” é utilizado para se fazer um Scan mais demorado na rede a ponto de não levantar tanta suspeita do alvo).

*Se o alvo estiver fora da rede, a opção “–send-ip” pode ser ignorada com segurança.

Você também pode automatizar todos esses comandos utilizando nossa plataforma de pentest em nuvem que facilitada todas as consultas e realiza comandos avançados, conheça o HStrike: https://hstrike.com/

quarta-feira, 12 de maio de 2021

Monitoramento seguro - ssh

 Inicialmente, a mais óbvia. Troque a porta default de 22 para alguma que esteja acima de 5000. Os bots, geralmente, só testam senhas em SSH configurados na porta 22. Para trocar a porta, no Debian, edite o arquivo /etc/ssh/sshd_config e procure pela linha Port 22. Depois de alterar a porta, reinicie e o serviço com o comando:

 # /etc/init.d/ssh restart

Há várias coisas legais que podem ser feitas, tudo já divulgado aqui no Dicas-L por outros autores. Desabilitar o login pelo root, só permitir login utilizando certificado etc. Mas digamos que você precise do método de autenticação tradicional, com usuário e senha. Uma coisa é certa: nada de senha óbvia. Use senhas com oito caracteres ou mais, contendo letras, números e caracteres especiais. Além disso, instale o fail2ban.

fail2ban é um sistema de verificação de falha de autenticação. Pode ser utilizado com inúmeros serviços. Um deles é o SSH. Então, digamos que alguém tente um login por SSH e erre X vezes o usuário, a senha ou ambos. O IP desse usuário será bloqueado por N segundos. É isso que o fail2ban faz. Inicialmente, instale-o com:

 # apt-get install fail2ban

A seguir, edite o arquivo /etc/fail2ban/jail.conf e, na seção [ssh], altere a entrada

 maxretry = 6

para

 maxretry = 3

Ainda, abaixo da citada linha (maxretry = 3), acrescente:

 bantime = 3600

Reinicie o serviço fail2ban:

 # /etc/init.d/fail2ban restart

No caso, o fail2ban foi configurado para, na ocorrência de três tentativas sem sucesso de autenticação SSH, bloquear por 1 hora (3600 segundos) o IP do atacante. O bloqueio se dará por Netfilter (ativado pelo fail2ban via comando iptables).

Por fim, o pior problema que pode acontecer numa invasão é você nunca ficar sabendo que ela ocorreu. Então, você precisa do samhain. O samhain é responsável por lhe avisar quando qualquer arquivo ou diretório que esteja na relação de vigilância dele for alterado. Uma das formas de ser avisado é por e-mail. Então, instale o samhain com o comando:

 # apt-get install samhain

Considerando que você esteja querendo vigiar por e-mail o servidor que recebeu o samhain, instale o sendmail em tal servidor para que este possa enviar e-mails.

 # apt-get install sendmail

O sendmail será instalado de forma que só a máquina local possa enviar mensagens (não haverá portas abertas para fora). Isso poderá ser verificado com o comando:

 # netstat -tunlp

A seguir, edite o arquivo /etc/aliases e, no fim, insira a linha:

 root: seu_endereço_de_email

Ou seja: quando o samhain enviar um mail local para o root, ele será redirecionado para o seu e-mail. Para validar a configuração anterior, execute o comando:

 # newaliases

Se for necessário, no arquivo /etc/samhain/samhainrc você poderá configurar quais arquivos e diretórios devem ser observados ou não. Dentro do arquivo tem toda a explicação de como fazer. Leia o arquivo desde do início. Você poderá utilizar wildcards etc.

É lógico que existem outras artimanhas e programas que podem ser utilizados. Mas com o que escrevi aqui, com certeza, o grau de segurança do seu servidor SSH aumentará bastante.

quinta-feira, 4 de fevereiro de 2021

Aumentar Limit e memlimit

 

Editar o arquivo


/etc/security/limits.conf

### inserido por fabiano em 04022021 ###

*           soft    nofile  204576 unset

*           hard    nofile  204576 unset

root        soft    nofile  204576 unset

root        hard    nofile  204576 unset

*           soft    memlock 204576 unset

*           hard    memlock 204576 unset


reboot

sexta-feira, 18 de dezembro de 2020

Recovery - Proxmox e VMs

 Recovery - Proxmox e VMs

Este repositório tem como objetivo fornecer ferramentas e informações úteis para recuperação de sistemas virtualizados baseados em Linux.
Procedimento 1 - VM bootando pela PXE / Não reconhece a partição de boot
Caso a VM não inicie pelo HD mas sim pela PXE, prepare um disco bootavel com um Live CD do sistema que a máquina alvo possui. Se a máquina for um CentOS, um disco bootavel do Ubuntu pode não conseguir reparar a partição.
Inicialmente você não precisa usar uma ISO do sistema de destino pois o processo que rodaremos funciona em qualquer linux. Recomendo que use a ISO do Ubuntu Server 20.04.
Quando abrir o menu de instalação do Ubuntu, pressione F2 ou F3 para entrar no modo shell. Assim que estiver no shell, verifique se o Live System do Ubuntu reconhece a partição corrompida com o seguinte comando:
# df -h
Provavelmente o disco do sistema corrompido começará com /dev/sda. Se nenhuma partição for localizada com esse prefixo então confirme se o sistema reconhece ao menos o disco com o seguinte comando:
fdisk -l
Uma vez reconhecido o disco em questão, vamos baixar um aplicativo chamado Test Disk para tentar reparar as partições do disco.
ou
Baixando no link https://www.cgsecurity.org/wiki/TestDisk_Download. Descompacte antes de usar.
Assim que baixado a aplicação, entre no diretório onde ela está e execute os seguintes passos:
1. Execute sudo ./testdisk_static
2. Clique em 'create'
3. Selecione o disco que deseja reparar e clique em 'Proceed'
4. Selecione o tipo de partição (Geralmente é 'Intel')
5. Selecione a partição que deseja recuperar(Geralmente é a que possui LVM ou a maior) e clique em 'Analyze'
6. Selecione a opção 'Quick Search'. Depois de um certo tempo o programa vai encontrar as partições disponíveis.
7. Depois de recuperado, clique na nova opção 'write'.
Reinicie o sistema. Se tudo correr bem ele pode voltar a funcionar sem passos adicionais. É provável que o sistema inicie no GRUB mas falhe ao tentar bootar o sistema. Neste caso, siga o Procedimento 2.
Procedimento 2 - VM bootando pelo GRUB mas falhando / Boot inicia pelo disco mas falha em alguma parte.
Caso o sistema que precise ser recuperado for CentOS, siga os passos contidos no link:
Caso o sistema que precise ser recuperado for Ubuntu, siga os passos contidos no link:
Estes procedimentos irão recuperar a partição de boot e possivelmente restaurar a inicialização do sistema.

Lentidão e congelamento de maquina