CVE-2021-46075
Название эксплойта: Vehicle Service Management System - множественное повышение привилегий, ведущее к CRUD-операциям
Автор эксплойта: SANU P.L
CVE: CVE-2021-46075
CVSS: 7.2 HIGH
Ссылки:
Описание:
В Sourcecodester Vehicle Service Management System 1.0 существует уязвимость повышения привилегий. Учётные записи сотрудников могут получить доступ к ресурсам администратора и выполнять CRUD-операции.
1. Vehicle Service Management System - 'User List' (/admin/?page=user/list) (/admin/?page=user/manage_user)
Эксплойт:
- Зайдите в панель администратора http://localhost/vehicle_service/admin
- Войдите в учётную запись администратора в браузере A (Chrome)
- Войдите в учётную запись сотрудника в браузере B (Firefox)
- В учётной записи администратора (Chrome) перейдите в раздел User List и нажмите кнопку Create New.
- Скопируйте ссылку на создание нового пользователя http://localhost/vehicle_service/admin/?page=user/manage_user
- В учётной записи сотрудника (Firefox) нет раздела User List, так как учётная запись сотрудника не имеет прав на создание пользователя.
- Вставьте скопированную ссылку в браузер B (Firefox)
- Теперь мы можем получить доступ к странице создания пользователя.
- Введите необходимые данные и нажмите кнопку Save.
- В учётной записи администратора (Chrome) перейдите в раздел User List http://localhost/vehicle_service/admin/?page=user/list
- Новый пользователь был успешно создан.
- Учётная запись сотрудника может получить доступ к странице User List и странице Create User.
- Учётная запись сотрудника может создавать, читать, обновлять и удалять пользователей.
2. Vehicle Service Management System - 'Category List' (/admin/?page=maintenance/category) (/admin/?page=maintenance/manage_category)
Эксплойт:
- Зайдите в панель администратора http://localhost/vehicle_service/admin
- Войдите в учётную запись администратора в браузере A (Chrome)
- Войдите в учётную запись сотрудника в браузере B (Firefox)
- В учётной записи администратора (Chrome) перейдите в раздел Category List и нажмите кнопку Create New.
- Скопируйте ссылку на создание новой категории http://localhost/vehicle_service/admin/?page=maintenance/manage_category
- В учётной записи сотрудника (Firefox) нет раздела Category List, так как учётная запись сотрудника не имеет прав на создание категории.
- Вставьте скопированную ссылку в браузер B (Firefox)
- Теперь мы можем получить доступ к странице создания категории.
- Введите необходимые данные и нажмите кнопку Save.
- В учётной записи администратора (Chrome) перейдите в раздел Category List http://localhost/vehicle_service/admin/?page=maintenance/category
- Новая категория была успешно создана.
- Учётная запись сотрудника может получить доступ к странице Category List и странице Create Category.
- Учётная запись сотрудника может создавать, читать, обновлять и удалять категории.
3. Vehicle Service Management System - 'Service List' (/admin/?page=maintenance/services) (/admin/?page=maintenance/manage_service)
Эксплойт:
- Зайдите в панель администратора http://localhost/vehicle_service/admin
- Войдите в учётную запись администратора в браузере A (Chrome)
- Войдите в учётную запись сотрудника в браузере B (Firefox)
- В учётной записи администратора (Chrome) перейдите в раздел Service List и нажмите кнопку Create New.
- Скопируйте ссылку на создание новой услуги http://localhost/vehicle_service/admin/?page=maintenance/manage_service
- В учётной записи сотрудника (Firefox) нет раздела Service List, так как учётная запись сотрудника не имеет прав на создание услуги.
- Вставьте скопированную ссылку в браузер B (Firefox)
- Теперь мы можем получить доступ к странице создания услуги.
- Введите необходимые данные и нажмите кнопку Save.
- В учётной записи администратора (Chrome) перейдите в раздел Service List http://localhost/vehicle_service/admin/?page=maintenance/services
- Новая услуга была успешно создана.
- Учётная запись сотрудника может получить доступ к странице Service List и странице Create Service.
- Учётная запись сотрудника может создавать, читать, обновлять и удалять услуги.
4. Vehicle Service Management System - 'Settings' (/admin/?page=system_info)
Эксплойт:
- Зайдите в панель администратора http://localhost/vehicle_service/admin
- Войдите в учётную запись администратора в браузере A (Chrome)
- Войдите в учётную запись сотрудника в браузере B (Firefox)
- В учётной записи администратора (Chrome) перейдите в раздел Settings.
- Скопируйте ссылку на раздел Settings http://localhost/vehicle_service/admin/?page=system_info
- В учётной записи сотрудника (Firefox) нет раздела Settings, так как учётная запись сотрудника не имеет прав на доступ к настройкам.
- Вставьте скопированную ссылку в браузер B (Firefox)
- Теперь мы можем получить доступ к странице Settings.
- Введите необходимые данные и нажмите кнопку Save.
- В учётной записи администратора (Chrome) перейдите в раздел Settings http://localhost/vehicle_service/admin/?page=system_info
- Данные были успешно обновлены.
- Учётная запись сотрудника может получить доступ к странице Settings.
- Учётная запись сотрудника может обновлять настройки.
Последствия:
Удалённый злоумышленник получает повышенный доступ к ресурсам, которые обычно должны быть недоступны. Учётные записи сотрудников могут получить доступ к ресурсам администратора и выполнять CRUD-операции.
Меры по смягчению:
Рекомендуется реализовать следующее:
- Надлежащее управление привилегированными учётными записями
- Мониторинг и управление всеми привилегированными сеансами
- Политики и принуждение к использованию надёжных паролей
- Очистка пользовательских вводов и защита баз данных