OSCP - Parte 1: Preparação da VM Kali

O time da Offensive Security disponibiliza uma VM Kali Linux para usar durante o curso.

Ela é basicamente uma VM padrão, com uma versão específica do Kali Linux homologada por eles, para utilização no curso e na posterior prova.

Mesmo sendo uma versão homologada por eles, problemas ocorrem, pois os softwares são atualizados constantemente, então: Try Harder!

Mudanças que eu fiz na VM:

  • Alterei a senha default do root
  • Gerei novas chaves ssh
  • Alterei o shell default do root para zsh
  • Instalei uma séries de pacotes:
apt install wget git neofetch apt-transport-https nmap \
remmina-plugin-rdp python3-pip mingw-w64 peco ettercap-graphical
  • Instalei o veil-evasion para disfarçar payloads contra softwares de anti-virus:
apt -y install veil
/usr/share/veil/config/setup.sh --force --silent
  • Outro 'encrypter' para disfarçar payloads: hyperion
# installing
mkdir ~/git/hyperion
cd ~/git/hyperion
wget https://github.com/nullsecuritynet/tools/raw/master/binary/hyperion/release/Hyperion-1.2.zip
unzip Hyperion-1.2.zip
cd Hyperion-1.2
i686-w64-mingw32-g++ Src/Crypter/*.cpp -o hyperion.exe
cp -p /usr/lib/gcc/i686-w64-mingw32/7.3-win32/libgcc_s_sjlj-1.dll .
cp -p /usr/lib/gcc/i686-w64-mingw32/7.3-win32/libstdc++-6.dll .

# running
wine hyperion.exe                                                                                
000f:err:service:process_send_command receiving command result timed out
Hyperion PE-Crypter
Version 1.1 by Christian Ammann
Http://www.nullsecurity.net

Usage: hyperion.exe <options> <infile> <outfile>
List of available options:
  -k <size> 	 Length of random AES key in bytes.
            	 Default value is 6.
  -s <size> 	 Each byte of the key has a range between
            	 0 and <size-1>. Default value is 4.
  -l, --logile 	 The packed executable generates a log.txt
          	 on startup for debugging purpose
  -v, --verbose	 Print verbose informations while running.
# alterando o usuário default de execução do ettercap:
cp -rp /etc/ettercap/etter.conf /etc/ettercap/etter.conf.bkp   
sed -i 's/65534/0/g' /etc/ettercap/etter.conf

# habilitando o iptable como redirecionador de comandos:
sed -i 's/#redir_command_on = "iptables/redir_command_on = "iptables/g' \
/etc/ettercap/etter.conf

sed -i 's/#redir_command_off = "iptables/redir_command_off = "iptables/g' \
/etc/ettercap/etter.conf
  • Instalei o sublime-text e uma série de plugins
  • Configurei o fzf
  • Criei uma série de alias de exemplos de comando, para rápida consulta. Ex:
alias example-rdesktop="echo rdesktop -u USER -p PASSWORD \
-g 85% -r disk:share=/tmp-share IP_ADDRESS"
  • Fiz update do searchsploit
  • Instalei alguns pacotes do pip:
pip install autoenv pyftpdlib pyinstaller 
  • Instalei o SpaceVim
  • Configurei o terminator (terminal multi painéis para o Linux) para facilitar meu trabalho

A VM original veio assim:

E ficou assim:

O que eu ganhei com isso? Dor de cabeça!

Descobri que 'reverse shells' não funcionam bem com o zsh. Ao ficar escutando em uma porta, esperando por um shell reverso, é impossível melhorar o shell usando técnicas como essa.

Agora sempre que quiser esperar um shell reverso, tenho que chamar o bash antes de executar o famoso nc -nlvp <PORTA>

Ônus e bônus meus amigos... ônus e bônus...

Fala tchê!

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.