
DSECRG-12-039: Протокол gopher Java-машины Oracle уязвим к XXE Tunneling и SSRF-атакам
Вендор
Oracle
Продукт
Oracle JVM
Тип уязвимости
XXE Tunneling, SSRF
Reported
16.07.2012
Date of Public Advisory
23.10.2012
Подтверждение
Автор
Александр Поляков
Детальное описание
Oracle JVM поддерживает протокол gopher с помощью библиотеки net.dll. С помощью этого протокола можно отправить любой пакет уровня приложения в любую систему.
Существует множество способов эксплуатации этой уязвимости. Если в инфраструктуре есть две системы, одна из которых защищена межсетевым экраном (система Б), а другая нет (система А), но система А может установить соединение с системой Б, злоумышленник может с помощью уязвимостей в системе А отправлять пакеты в систему Б. Например, если в системе А есть XML-интерфейс с XXE-уязвимостью, то с ее помощью можно отправлять пакеты в систему Б.
Пример XML-пакета:
<?xml version=»1.0″ encoding=»UTF-8″?>
<!DOCTYPE root [
<!ENTITY foo SYSTEM «gopher://anyhost:anyport/[any packet data]»>
]>
<in>&foo;</in>
Злоумышленник сможет послать любой пакет на любой порт любой системы, включая localhost. Эту атаку можно провести через Gopher. Возможна даже отправка эксплойтов в листенер Oracle, если последний слушает localhost.
Решение
Oracle CPU October 2012