Browse By

Novahot – Um Webshell Framework Para Testadores De Penetração

novahoté uma estrutura de webshell para testadores de penetração. Ele implementa uma API baseada em JSON que pode se comunicar com trojans escritos em qualquer idioma. Por padrão, ele vem com trojans escritos em PHP, Ruby e Python.Além de executar comandos do sistema, novahoté capaz de emular terminais interactivos, incluindo mysqlsqlite3psql. Além disso, implementa “comandos virtuais” que possibilitam o upload, o download, a edição e a visualização de arquivos remotos de maneira local, usando seus aplicativos preferidos.

Instalação
Instale o executável diretamente do npm:

[sudo] npm install -g novahot

Em seguida, semeie um arquivo de configuração:

novahot config > ~/.novahotrc

Uso

  1. Veja os trojans disponíveis com .novahot trojan list
  2. Selecione um trojan em um idioma apropriado ao seu destino e copie sua origem para um novo arquivo. (Ex: novahot trojan view basic.php > ~/my-trojan.php)
  3. Altere a senha de controle no trojan recém-criado.
  4. Carregue o trojan para um local acessível na Web no destino.
  5. Configurar informações de destino na targetspropriedade em ~/.novahotrc.
  6. Corra novahot shell <target>para abrir um shell.

Shell Modos
Internamente,novahotusa “modos” e “adaptadores” para emular vários clientes interativos, atualmente incluindo asmysql,psql(postgres) esqlite3clientes. 
Para alterarnovahoto modo, emita o “comando de ponto” apropriado:

.mysql { "username" : "mysql-user", "password" : "the-password", "database" : "the-database" }

(Os parâmetros de conexão podem ser especificados como JSON durante a mudança de modos ou, alternativamente, salvos como dados de configuração de destino ~/.novahotrc.) 
Por exemplo, o mysqlmodo possibilita a execução direta de consultas como as seguintes:

mysql> SELECT ID, user_login, user_email, user_pass FROM wp_users;

Existe também um payloadmodo que pode ser usado para POSTdados arbitrários para o trojan. Veja o wiki para mais informações . 

O Virtual Commands
novahot implementa quatro “comandos virtuais” que utilizam cargas úteis embutidas nos trojans para estender a funcionalidade do shell: 

download

download <remote-filename> [<local-filename>]

Transfere <remote-filename>para --download-dir, e opcionalmente renomeia para <local-filename>se especificado. 

Envio

upload <local-filename> [<remote-filename>]

Carrega <local-filename>para o shell cwde, opcionalmente, renomeia <local-filename>para <remote-filename>se especificado. 

Visão

view <remote-filename> [<local-filename>]

Downloads <remote-filename>--download-dir, opcionalmente, renomeia para <local-filename>Depois do download, o arquivo será aberto pelo aplicativo “viewer” especificado nas configurações . 

editar

edit <remote-filename>

Faz o download <remote-filename>para um arquivo temporário e, em seguida, abre esse arquivo para edição usando o “editor” especificado nas configurações . Depois, se as alterações no arquivo forem salvas localmente, o arquivo será reenviado para o servidor automaticamente. 

Provisionando um Ambiente de Teste
Este repositório contém um ambiente de laboratório construído no Vagrant , Docker e o Damn Vulnerable Web Application (“DVWA”). As etapas para provisionar o ambiente variam dependendo dos recursos do seu host físico. 

Usando o docker-compose
Se você possui dockerdocker-composeinstalou em seu host físico, você pode simplesmente fazer o seguinte:

  1. Clone e cdpara este repositório
  2. Corre: docker-compose up

Após o início do contêiner do docker, o DVWA estará acessível em http: // localhost: 80 . 

Usando vagrant
Se dockernão estiver instalado em seu host físico, você poderá usar o Vagrant / Virtualbox para acessar uma máquina virtual com docker:

  1. Clone e cdpara este repositório
  2. Provisionar uma máquina virtual: vagrant up
  3. SSH na máquina virtual: vagrant ssh
  4. Inicie o contêiner do docker: sudo su; cd /vagrant; docker-compose up

O DVWA estará acessível em http: // localhost: 8000 . 

Configurando o novahot no ambiente de laboratório
Especifique as seguintes seqüências de conexão no seu ~/.novahotrcarquivo para conectar o novahotcliente ao cavalo de tróia PHP incorporado ao container DVWA:

{

  "targets": {
    "dvwa" : {
      "uri"      : "http://localhost:8000/novahot.php",
      "password" : "the-password",

      "mysql" : {
        "username": "root",
        "password": "vulnerables",
        "database": "dvwa"
      }
    }
  }

}

Você pode então estabelecer um webshell via:

novahot shell dvwa

Informações Adicionais Informações
adicionais podem ser encontradas no wiki :

[sociallocker id=”1005″]

Download

[/sociallocker]

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

Este site utiliza o Akismet para reduzir spam. Fica a saber como são processados os dados dos comentários.