Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
gogs — CVE-2014-8682 | Kitploit
Ferramentas/GitHubGitHub/nihal1306/gogs
Análise de VulnerabilidadesExploração de Aplicações WebTestes de PenetraçãoConfiguração IncorretaAprendizado e EducaçãoSegurança de Banco de DadosLabs e Prática
GitHubnihal1306/gogs

gogs

CVE-2014-8682

Ver Repositório
há 7 anosAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

gogs

Aqui iremos configurar nosso laboratório em nossa VM SEED Ubuntu 16.04 e precisamos instalar o Go Git Service (GOGS) em nossa VM antes de podermos prosseguir para explorar a vulnerabilidade de injeção SQL. Para configurar a VM, aqui estão os passos:

Passo 1: Instalar o Banco de Dados Assim que fizermos login no sistema, devemos executar o seguinte comando para garantir que nossas bibliotecas e repositórios estejam atualizados: $ sudo apt-get -y update

Estamos usando MySQL como servidor de banco de dados e, portanto, precisamos instalá-lo em nossa VM, o que podemos fazer com o seguinte comando: $ sudo apt-get – y install mysql-server

Durante a instalação do banco de dados, o sistema solicita uma senha para o usuário root do banco de dados. Agora criaremos um arquivo chamado gogs.sql. Usamos nano, mas qualquer editor de arquivos funciona.

Em seguida, colamos as seguintes instruções SQL no arquivo gogs.sql e o salvamos. DROP DATABASE IF EXISTS gogs; CREATE DATABASE IF NOT EXISTS gogs CHARACTER SET utf8 COLLATE utf8_general_ci;

Agora executaremos o arquivo gogs.sql com MySQL para criar o banco de dados GOGS usando o comando: $ mysql – u root -p < gogs.sql

Somos então solicitados a informar a senha root criada durante a fase de instalação do banco de dados, que inserimos e conseguimos criar o banco de dados GOGS com sucesso.

Para instalar o GOGS a partir do código-fonte, precisamos de ferramentas de controle de versão como Git e Mercurial. Para instalá-los em nossa VM, usamos o seguinte comando: $ sudo apt-get -y install mercurial git

Passo 2: Instalar o Go O GOGS é escrito na linguagem de programação Go e, portanto, precisamos instalá-lo antes de compilar o GOGS.

Primeiramente, existem algumas variáveis de ambiente que precisamos configurar. Para configurá-las, editamos o arquivo ~/.bashrc e adicionamos as seguintes linhas, salvando o arquivo: export GOPATH=/home/git/go export GOROOT=/usr/local/src/go export PATH=${PATH}:$GOROOT/bin

Para garantir que nossas alterações foram aplicadas com sucesso, executamos o seguinte comando: $ source ~/.bashrc

Agora usamos o comando wget para instalar uma das versões compiladas do Go. O comando é o seguinte: $ wget https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz

Em seguida, descompactamos usando o seguinte comando: $ tar zxf go1.4.2.linux-amd64.tar.gz

Assim que nosso arquivo for descompactado, alteramos nosso diretório de trabalho para $GOROOT definido em ~/.bashrc. O comando para isso é: $ sudo mv go $GOROOT

Agora, verificamos a instalação do Go em nossa VM usando o comando: $ go

Para acessar a pasta do Gogs com todos os documentos necessários, basta clonar a pasta do Gogs para o caminho $GOPATH/src/github.com/gogits/gogs. Isso pode ser feito com o seguinte comando: $ cd $GOPATH/src/github.com/gogits/gogs

Agora instalaremos o Supervisor para gerenciar o serviço do Gogs usando o comando: $ sudo apt-get -y install supervisor

Com o Supervisor instalado em nossa VM, agora criamos um daemon do Gogs criando uma seção de configuração do Supervisor. Para fazer isso, primeiro precisamos definir um local para os arquivos de log. O local dos arquivos de log é /var/log/gogs. O comando para isso é: $ sudo mkdir -p /var/log/gogs

Com um local definido para os logs serem armazenados, prosseguimos editando o arquivo de configuração do Supervisor, localizado em /etc/supervisor/supervisord.conf. O comando para isso é: $ sudo nano /etc/supervisor/supervisord.conf

Adicionamos o seguinte conteúdo ao arquivo para criar a seção do Gogs:

[program:gogs] directory=/home/git/go/src/github.com/gogits/gogs/ command=/home/git/go/src/github.com/gogits/gogs/gogs web autostart=true autorestart=true startsecs=10 stdout_logfile=/var/log/gogs/stdout.log stdout_logfile_maxbytes=1MB stdout_logfile_backups=10 stdout_capture_maxbytes=1MB stderr_logfile=/var/log/gogs/stderr.log stderr_logfile_maxbytes=1MB stderr_logfile_backups=10 stderr_capture_maxbytes=1MB environment = HOME="/home/git", USER="git" user = git

O código acima define os comandos que queremos executar para iniciar o Gogs, iniciar o Supervisor, fornecer o local dos arquivos de log e as variáveis de ambiente correspondentes. Agora reiniciamos o Supervisor para que nossas alterações entrem em vigor usando o comando: $ sudo service supervisor restart

Para verificar se o Gogs está realmente em execução, usamos o seguinte comando: $ ps -ef | grep gogs O comando ps exibe informações sobre os processos ativos e filtramos esses resultados para obter informações do Gogs.

Outro método para verificar se o servidor está em execução é visualizar o arquivo stdout.log usando o comando: $ tail /var/log/gogs/stdout.log

Agora podemos até acessar a página web, que exibirá a página de instalação. A URL para isso será: http://10.0.2.15:3000

Passo 4: Configurar o Nginx como Proxy Reverso Primeiramente, precisamos instalar o Nginx, o que fazemos usando o seguinte comando: $ sudo apt-get -y install nginx

Agora, criamos um arquivo de configuração do Nginx para o Gogs, que estará localizado em etc/nginx/sites-available/gogs. Também adicionamos o seguinte código ao arquivo:

server { listen 80; server_name “ADICIONE O ENDEREÇO IP AQUI!!!”;

root@kitploit:~
proxy_set_header X-Real-IP  $remote_addr; # pass on real client IP

location / {
    proxy_pass http://localhost:3000;
}

} Também precisamos criar um link simbólico para que o Nginx possa acessar o arquivo. O link simbólico é criado entre /etc/nginx/sites-available/gogs e /etc/nginx/sites-enabled/gogs. Podemos criar o link simbólico usando o seguinte comando:

$ sudo ln -s /etc/nginx/sites-available/gogs /etc/nginx/sites-enabled/gogs Finalmente, precisamos reiniciar o serviço do Nginx para ativar as configurações do host virtual. O comando para reiniciar é: $ sudo service nginx restart

Agora, podemos acessar a URL usada anteriormente sem usar o número da porta. A URL é: http://10.0.2.15

Passo 5: Inicializar o Gogs Antes de inicializar o Gogs, devemos preencher algumas informações na página web do servidor, cuja URL é: http://10.0.2.15/install

Na primeira seção, preenchemos informações sobre o banco de dados, que, no nosso caso, é MySQL. Os campos são os seguintes:

Tipo de Banco de Dados: MySQL Host: 127.0.0.1:3306 Usuário: root Senha: seedubuntu Nome do Banco de Dados: gogs

Na segunda seção, preenchemos as configurações gerais do Gogs. Os campos para isso são: Caminho Raiz do Repositório: /home/git/gogs-repositories Usuário de Execução: git Domínio: 10.0.2.15 Porta HTTP: 300 URL da Aplicação: http://10.0.2.15:3000

Em seguida, modificamos as configurações de nome de usuário e senha do administrador em Configurações da Conta de Administrador.

Agora, clicamos em "Instalar Gogs" e fazemos login.

Passo 6: Testar o Gogs Para garantir que o Gogs está realmente funcionando conforme o esperado, realizamos um teste trivial de pull/push. Primeiramente, acessamos a URL http://10.0.2.15/repo/create e criamos um repositório com o nome my-test-repo.

Com todas as informações necessárias preenchidas, podemos prosseguir com a criação do repositório clicando no botão verde "Criar Repositório".

Agora, também podemos clonar este repositório usando o comando: $ git clone http://10.0.2.15//my-test-repo.git

Em seguida, nos movemos para o local do repositório em nossa VM e atualizamos o arquivo README.md. Finalmente, fazemos commit de todas as alterações e as enviamos usando o comando: $ git add –-all && git commit -m “init command” && git push origin master

Nosso repositório foi criado com sucesso e agora, quando visitamos a URL http://10.0.2.15/iammuskaan/my-test-repo, podemos ver nosso conteúdo adicionado ao arquivo README.md.

Baixar ferramenta