Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
gogs — CVE-2014-8682 | Kitploit
Инструменты/GitHubGitHub/nihal1306/gogs
Vulnerability AnalysisWeb Application ExploitationPenetration TestingMisconfigurationLearning & EducationDatabase SecurityLabs & Practice
GitHubnihal1306/gogs

gogs

CVE-2014-8682

Репозиторий
7 лет назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

gogs

Здесь мы настроим нашу лабораторию в виртуальной машине SEED Ubuntu 16.04. Для начала необходимо установить Go Git Service (GOGS) на нашу ВМ, прежде чем переходить к эксплуатации уязвимости SQL-инъекции. Для настройки ВМ выполните следующие шаги:

Шаг 1: Установка базы данных После входа в систему выполните следующую команду, чтобы убедиться, что библиотеки и репозитории обновлены: $ sudo apt-get -y update

В качестве бэкенда мы используем MySQL сервер, поэтому его необходимо установить на ВМ. Это можно сделать с помощью команды: $ sudo apt-get – y install mysql-server

Во время установки базы данных система запросит пароль для root-пользователя базы данных. Теперь создадим файл gogs.sql. Мы используем nano, но подойдёт любой текстовый редактор.

Затем вставьте следующие SQL-операторы в файл gogs.sql и сохраните его: DROP DATABASE IF EXISTS gogs; CREATE DATABASE IF NOT EXISTS gogs CHARACTER SET utf8 COLLATE utf8_general_ci;

Теперь выполним файл gogs.sql с помощью MySQL для создания базы данных GOGS командой: $ mysql – u root -p < gogs.sql

После этого будет запрошен пароль root, созданный на этапе установки базы данных. Введите его — база данных GOGS будет успешно создана.

Чтобы установить GOGS из исходных кодов, необходимы инструменты управления версиями, такие как Git и Mercurial. Установите их на ВМ следующей командой: $ sudo apt-get -y install mercurial git

Шаг 2: Установка Go GOGS написан на языке программирования Go, поэтому перед компиляцией GOGS необходимо установить Go.

Сначала нужно задать несколько переменных окружения. Для этого отредактируйте файл ~/.bashrc, добавив в него следующие строки, и сохраните файл: export GOPATH=/home/git/go export GOROOT=/usr/local/src/go export PATH=${PATH}:$GOROOT/bin

Чтобы убедиться, что изменения применились, выполните команду: $ source ~/.bashrc

Теперь используем wget для загрузки одной из скомпилированных версий Go: $ wget https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz

Затем распакуйте архив: $ tar zxf go1.4.2.linux-amd64.tar.gz

После распаковки переместите содержимое в каталог $GOROOT, определённый в ~/.bashrc: $ sudo mv go $GOROOT

Проверьте установку Go на ВМ командой: $ go

Чтобы получить папку Gogs со всеми необходимыми файлами, просто клонируйте репозиторий Gogs в путь $GOPATH/src/github.com/gogits/gogs. Это можно сделать следующей командой: $ cd $GOPATH/src/github.com/gogits/gogs

Теперь установите Supervisor для управления сервисом Gogs: $ sudo apt-get -y install supervisor

После установки Supervisor на ВМ создайте демон Gogs, добавив соответствующую секцию в конфигурацию Supervisor. Для этого сначала определите расположение файлов журналов — /var/log/gogs. Создайте каталог: $ sudo mkdir -p /var/log/gogs

Затем отредактируйте конфигурационный файл Supervisor, который находится по пути /etc/supervisor/supervisord.conf: $ sudo nano /etc/supervisor/supervisord.conf

Добавьте в конец файла следующее содержимое для создания секции 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

Приведённый выше код определяет команды для запуска Gogs, запуска Supervisor, указывает расположение файлов журналов и соответствующие переменные окружения. Теперь перезапустите Supervisor, чтобы изменения вступили в силу: $ sudo service supervisor restart

Чтобы проверить, что Gogs действительно запущен, выполните: $ ps -ef | grep gogs Команда ps отображает информацию об активных процессах, а grep отфильтровывает строки, относящиеся к Gogs.

Другой способ проверить работу сервера — просмотреть файл stdout.log: $ tail /var/log/gogs/stdout.log

Теперь можно даже перейти на веб-страницу, где отобразится страница установки. URL: http://10.0.2.15:3000

Шаг 4: Настройка Nginx в качестве обратного прокси Сначала установите Nginx: $ sudo apt-get -y install nginx

Создайте конфигурационный файл Nginx для Gogs по пути etc/nginx/sites-available/gogs и добавьте в него следующий код:

server { listen 80; server_name "УКАЖИТЕ IP АДРЕС!!!";

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

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

}

Также необходимо создать символическую ссылку, чтобы Nginx мог получить доступ к файлу. Ссылка создаётся между /etc/nginx/sites-available/gogs и /etc/nginx/sites-enabled/gogs. Для этого выполните: $ sudo ln -s /etc/nginx/sites-available/gogs /etc/nginx/sites-enabled/gogs

Наконец, перезапустите службу Nginx для активации конфигураций виртуальных хостов: $ sudo service nginx restart

Теперь можно перейти по ранее использованному URL без указания порта: http://10.0.2.15

Шаг 5: Инициализация Gogs Перед инициализацией Gogs необходимо заполнить определённые данные на веб-странице сервера по адресу: http://10.0.2.15/install

В первом разделе укажите информацию о базе данных; в нашем случае это MySQL. Поля:

Database Type: MySQL Host: 127.0.0.1:3306 User: root Password: seedubuntu Database Name: gogs

Во втором разделе заполните общие настройки Gogs:

Repository Root Path: /home/git/gogs-repositories Run User: git Domain: 10.0.2.15 HTTP Port: 300 Application URL: http://10.0.2.15:3000

Затем измените имя администратора и пароль в разделе "Admin Account Settings".

После этого нажмите "Install Gogs" и войдите в систему.

Шаг 6: Тестирование Gogs Чтобы убедиться, что Gogs работает корректно, выполните простой тест pull/push. Сначала перейдите по URL http://10.0.2.15/repo/create и создайте репозиторий с именем my-test-repo.

Заполнив все необходимые поля, создайте репозиторий, нажав зелёную кнопку "Create Repository".

Теперь клонируйте этот репозиторий командой: $ git clone http://10.0.2.15//my-test-repo.git

Перейдите в каталог репозитория на ВМ и обновите файл README.md. Затем зафиксируйте все изменения и отправьте их: $ git add –-all && git commit -m "init command" && git push origin master

Репозиторий успешно создан. Теперь, перейдя по URL http://10.0.2.15/iammuskaan/my-test-repo, вы увидите добавленное содержимое в файле README.md.

Скачать инструмент