Теперь мы начнем говорить о сканерах веб приложений. Точнее рассмотрим только один сканер. Почему один? А какже Owasp-ZAP? А какже Nessus? А Arachni? А Acunectix будем рассматривать? Да, сканеров много и я ничего не имею против полностью автоматического сканирования, только это долго, нудно и неинтересно. К тому же автоматика всегда тупее человека. Owasp-ZAP мне просто не нравится. Чем же так хорошь Burp? Хм... Просто смотри.
Для начала нам нужна платформа для тренировок. Чтобы не ебаться терять время на поиск дырявых сайтов.
Настройка СУБД.
Для начала запусти сервис mysql (больше я такого говорить не буду, ты уже должен это знать).
Теперь входим в СУБД
Если попросит пароль, то просто нажми Enter. Добавь пользователя в СУБД
Создай новую базу данных
И нужно разрешить новому пользователю доступ к созданой БД
Примени изменение привелегий
И выходи из БД
Настройка PHP
Откроем файл конфигурации php.ini для апача.
В директории /etc/php лежат все установленные версии php. Т.е. если у тебя php не 7.2, а, например, 7.0, то путь будет немного другим. ls тебе в помощь!
Переходим на 840-ую строку и выставляем
Сохраняем. И еще нужно поставить php-gd, который есть в репозитории (помнишь же как пользоваться apt?).
Настройка Apache2
Открываем конфигурационный файл апача.
И разрешаем перезаписывать правила для файлов .htaccess в директории /var/www
Сохраняй, закрывай. И нужно активировать mod_rewrite.
После каких либо изменений в php.ini или конфигурационном файле апача, надо перезапускать сервис апача (apache2).
Поднимаем сайт
Серварная настройка закончена, т.е. ты настроил работу бекенда (php), веб сервера (apache2) и БД (mysql), теперь нужно поставить сайт. Качай DVWA (Damn Vulnerable Web Application), там есть Releases и бери последний (v1.9). Cоздай папку в /var/www/html, например dvwa и перекинь содержимое архива в нее. Путь /var/www/html/dvwa для нашего сайта будет корнем. Теперь в корне сайта нужно создать файл `.htaccess` с таким содержимым
<FilesMatch "\.(php*|phtm|phtml|asp|aspx)">
SetHandler application/x-httpd-php
</FilesMatch>
Эти 3 строки обозначат тип контента для файлов который подходят под регулярку в директиве FileMatch. Далее нужено настроить подключение к бд для сайта. Конфигурационный файл лежит по пути config/config.inc.php.dist (путь относительно корня, разумеется). Это пример конфигурационного файла, поэтому скопируем его в config.inc.php
Это правильный путь, сохранять оригинальные файлы конфигураций.
Открываем config.inc.php на редактирование и прописываем параметры подключения к БД.
....
$_DVWA[ 'db_server' ] = '127.0.0.1';
$_DVWA[ 'db_database' ] = 'YOUR_DB_NAME';
$_DVWA[ 'db_user' ] = 'SAME_USER_NAME';
$_DVWA[ 'db_password' ] = 'SAME_PASSWORD';
....
Сохрани и закрой. Не забывай, что манипуляции копирования файлов ты делал от рута, а веб сервер работает от пользователя www-data, поэтому надо сделать владельца, да и группу тоже, www-data для каталога /var/www/htmldvwa (без подсказок слабо?).
Настройка сайта
Теперь нужно перейти по адресу http://127.0.0.1/dvwa/setup.php и внизу нажать кнопку "Create / Reset Databse".
Дополнительные материалы в Additional.rar