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

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

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

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

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

Категории

Все категории
Loading categories
dvna — Чрезвычайно уязвимое NodeJS-приложение | Kitploit
Инструменты/GitHubGitHub/appsecco/dvna
Анализ уязвимостейВеб-безопасностьОбучение и ОбразованиеЛаборатории и Практика
GitHubappsecco/dvna

dvna

Чрезвычайно уязвимое NodeJS-приложение

Репозиторий
7789262 лет назадПроверено Kitploit

Популярное

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

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

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

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

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

Уязвимое приложение NodeJS (DVNA)

dvna-logo

Уязвимое приложение NodeJS (DVNA) — это простое приложение NodeJS для демонстрации 10 основных уязвимостей по OWASP и руководства по исправлению и предотвращению этих уязвимостей. Ветка fixes содержит исправления для уязвимостей. Исправления для уязвимостей OWASP Top 10 2017 находятся в ветке fixes-2017.

Приложение построено на широко используемых библиотеках, таких как express, passport, sequelize и т.д.

Книга руководства по безопасности для разработчиков

Приложение поставляется с понятным разработчику всеобъемлющим руководством, которое можно использовать для изучения, предотвращения и исправления уязвимостей. Руководство доступно по адресу docs и охватывает следующее:

  1. Инструкции по настройке DVNA
  2. Инструкции по эксплуатации уязвимостей
  3. Фрагменты уязвимого кода и инструкции по исправлению уязвимостей
  4. Рекомендации по предотвращению подобных уязвимостей
  5. Ссылки для дальнейшего изучения

Блог-пост о данном релизе доступен по адресу https://blog.appsecco.com/damn-vulnerable-nodejs-application-dvna-by-appsecco-7d782d36dc1e

Вы можете настроить локальный сервер gitbook для доступа к документации с помощью следующих команд. После этого документация будет доступна по адресу http://localhost:4000.

root@kitploit:~
cd docs/
docker run --rm -v `pwd`:/gitbook -p 4000:4000 --name gitbook amontaigu/gitbook gitbook serve

Быстрый старт

Попробуйте DVNA с помощью одной команды Docker. Эта настройка использует базу данных SQLite вместо MySQL.

root@kitploit:~
docker run --name dvna -p 9090:9090 -d appsecco/dvna:sqlite

Откройте приложение по адресу http://127.0.0.1:9090/

Начало работы

DVNA можно развернуть тремя способами

  1. Для разработчиков: с использованием docker-compose с автоматической перезагрузкой при обновлении кода
  2. Для тестировщиков безопасности: с использованием официального образа из Docker Hub
  3. Для продвинутых пользователей: полностью ручная настройка

Подробные инструкции по настройке и требования приведены в руководстве Gitbook

1. Настройка для разработки

Клонируйте этот репозиторий

root@kitploit:~
git clone https://github.com/appsecco/dvna; cd dvna

Создайте файл vars.env с желаемой конфигурацией базы данных

root@kitploit:~
MYSQL_USER=dvna
MYSQL_DATABASE=dvna
MYSQL_PASSWORD=passw0rd
MYSQL_RANDOM_ROOT_PASSWORD=yes

Запустите приложение и базу данных с помощью docker-compose

root@kitploit:~
docker-compose up

Откройте приложение по адресу http://127.0.0.1:9090/

Приложение будет автоматически перезагружаться при изменениях в коде, так что не стесняйтесь вносить правки и экспериментировать.

Использование официального Docker образа

Создайте файл с именем vars.env со следующей конфигурацией

root@kitploit:~
MYSQL_USER=dvna
MYSQL_DATABASE=dvna
MYSQL_PASSWORD=passw0rd
MYSQL_RANDOM_ROOT_PASSWORD=yes
MYSQL_HOST=mysql-db
MYSQL_PORT=3306

Запустите контейнер MySQL

root@kitploit:~
docker run --rm --name dvna-mysql --env-file vars.env -d mysql:5.7

Запустите приложение, используя официальный образ

root@kitploit:~
docker run --rm --name dvna-app --env-file vars.env --link dvna-mysql:mysql-db -p 9090:9090 appsecco/dvna

Откройте приложение по адресу http://127.0.0.1:9090/ и начинайте тестирование!

Ручная настройка

Клонируйте репозиторий

root@kitploit:~
git clone https://github.com/appsecco/dvna; cd dvna

Настройте переменные окружения с информацией о вашей базе данных

root@kitploit:~
export MYSQL_USER=dvna
export MYSQL_DATABASE=dvna
export MYSQL_PASSWORD=passw0rd
export MYSQL_HOST=127.0.0.1
export MYSQL_PORT=3306

Установите зависимости

root@kitploit:~
npm install

Запустите приложение

root@kitploit:~
npm start

Откройте приложение по адресу http://localhost:9090

Планы

  • Привязать коммиты к исправлениям в документации
  • Добавить новые уязвимости из OWASP Top 10 2017
  • Улучшить функциональность приложения и документацию

Участие в разработке

В случае обнаружения ошибок в приложении, пожалуйста, создайте issue на GitHub. Pull-запросы приветствуются!

Благодарности

Abhisek Datta - abhisek за архитектуру приложения и front-end код

Лицензия

MIT

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