6th Apr 2003 [SBWID-6100]
COMMAND
	Java and Javascript script executions and DoS in Netscape and Opera
SYSTEMS AFFECTED
	 Opera 6.01
	 Opera 7.02 and Netscape 7.02
	 Mozilla
PROBLEM
	In David F. Madrid [[email protected]] advisory :
	Opera and Netscape browsers allow you to include java methods  calls  in
	your javascript. As Javascript has  support  for  objects  you  can  use
	objects returned by these calls in your scripts .
	I  have  been  looking  for  information  about  the  possibly  security
	implications ( and vulnerabilities published ) that this  could  have  ,
	but have found nothing . Doing some test by myself this is  but  I  have
	found .
	 Opera 6.01
	 ==========
	If you use Opera 6.01 you  can  make  calls  to  Java  exec  function  ,
	which=20 executes the command line passed to it .  This  means  you  can
	execute any program . Here is a small demonstration
	
	http://usuarios.lycos.es/idoru/petaopera.html
	
	The second link executes windows calculator . The  first  link  executes
	verifier.exe , a W2000/XP program , causing a buffer overflow  in  it  (
	W2000 server is full of command line  buffer  overflows  ),  this  means
	that just visiting a webpage ( a malicious site or a post in a  forum  )
	code can be executed in your machine with user priviliges .
	Besides , playing with sockets from javascript you can obtain the  local
	Ip address with
	
	 var host=3Djava.net.InetAddress.getLocalHost();
	
	and use it to connect to an arbitrary local tcp port on  your  IP  .  If
	you=20 are connected to a LAN , you can connect  with  every  socket  in
	your LAN interface.This means that with viewing some post in a  forum  ,
	a script can connect to a port on your PC and send and  recieve  data  (
	as classes like InputDataStram can be used as well  ).  A  new  type  of
	cross site scripting focused in exploiting vulnerable services .
	An example can be found here , connection to port  139  can  be  tracked
	with netstat ( before closing the browser )
	
	http://usuarios.lycos.es/idoru/sockets.html
	
	 Opera 7.02 and Netscape 7.02
	 ============================
	Both browsers don=B4t allow to make java calls to determinate methods  .
	Well , are allowed by they return a null . You  can`t  execute  exec  or
	delete , just methods like java.io.File.exists() or  java.io.File.list()
	but you can still execute sockets .
	Fourtunately , I wasn't able of  retriving  another  IP  different  from
	localhost when the script is executed in the server , but it works  fine
	if you email the webpage , establishing the connection with port  139  .
	I don't  know  if  there  is  an  alternative  method  of  retrieving  a
	visitor's IP address from java or javascript but if there  is  this  can
	be exploitable via webpage .
	Email sockets.html to you  or  open  it  locally  and  you  will  see  a
	connection with netstat .
	 -Also-
	Marc Schoenefeld [[email protected]] adds :
	executing
	
	<scr1pt language=3D"Javascript">
	t
	 new Packages.sun.plugin.javascript.navig5.JSObject(1,1);
	</scr1pt>
	
	crashes Netscape 7.02 and Opera 7 on Windows XP. The active JVM in  both
	tested browsers is Java 1.4.1_02 from Sun.
	This liveconnect (javascript-2-java-communication)  stuff  seems  to  be
	still very dangerous.
SOLUTION
	New releases available ?