Vulnerabilities > CVE-2003-1396 - Out-of-bounds Write vulnerability in Opera Browser

047910
CVSS 6.8 - MEDIUM
Attack vector
NETWORK
Attack complexity
MEDIUM
Privileges required
NONE
Confidentiality impact
PARTIAL
Integrity impact
PARTIAL
Availability impact
PARTIAL
network
opera
CWE-787
nessus
exploit available

Summary

Heap-based buffer overflow in Opera 6.05 through 7.10 allows remote attackers to cause a denial of service (crash) and possibly execute arbitrary code via a filename with a long extension.

Common Weakness Enumeration (CWE)

Exploit-Db

descriptionOpera 6.0.x/7.0 Long File Name Remote Heap Corruption Vulnerability. CVE-2003-1396. Dos exploit for windows platform
idEDB-ID:22550
last seen2016-02-02
modified2003-04-28
published2003-04-28
reporterimagine & nesumin
sourcehttps://www.exploit-db.com/download/22550/
titleOpera 6.0.x/7.0 Long File Name Remote Heap Corruption Vulnerability

Nessus

NASL familyWindows
NASL idOPERA_HEAP_CORRUPTION.NASL
descriptionThe version of Opera installed on the remote host has a buffer overflow condition in the code which handles the file extensions of the remote web pages. To exploit them, an attacker would need to set up a rogue website, then lure a user of this host visit it using Opera. He would then be able to execute arbitrary code on this host.
last seen2020-06-01
modified2020-06-02
plugin id11578
published2003-05-06
reporterThis script is Copyright (C) 2003-2018 Tenable Network Security, Inc.
sourcehttps://www.tenable.com/plugins/nessus/11578
titleOpera < 7.11 Filename Extension Handling Overflow
code
#
# (C) Tenable Network Security, Inc.
#


include("compat.inc");

if(description)
{
 script_id(11578);
 script_version("1.21");
 script_cve_id("CVE-2003-1396");
 script_bugtraq_id(7450);

 script_name(english:"Opera < 7.11 Filename Extension Handling Overflow");

 script_set_attribute(attribute:"synopsis", value:
"The remote host has an application that is affected by a buffer
overflow vulnerability." );
 script_set_attribute(attribute:"description", value:
"The version of Opera installed on the remote host has a buffer
overflow condition in the code which handles the file extensions of
the remote web pages. 

To exploit them, an attacker would need to set up a rogue website,
then lure a user of this host visit it using Opera.  He would then be
able to execute arbitrary code on this host." );
 script_set_attribute(attribute:"see_also", value:"https://seclists.org/bugtraq/2003/Apr/347" );
 script_set_attribute(attribute:"solution", value:
"Upgrade to version 7.11 or newer." );
 script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:C/I:C/A:C");
 script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
 script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
 script_set_attribute(attribute:"exploit_available", value:"true");
 script_cwe_id(119);

 script_set_attribute(attribute:"plugin_publication_date", value: "2003/05/06");
 script_cvs_date("Date: 2018/11/15 20:50:28");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/a:opera:opera_browser");
script_end_attributes();

 script_summary(english:"Determines the version of Opera.exe");
 script_category(ACT_GATHER_INFO);
 script_copyright(english:"This script is Copyright (C) 2003-2018 Tenable Network Security, Inc.");
 script_family(english:"Windows");
 script_dependencies("opera_installed.nasl");
 script_require_keys("SMB/Opera/Version");
 exit(0);
}

#

include("global_settings.inc");


version_ui = get_kb_item("SMB/Opera/Version_UI");
version = get_kb_item("SMB/Opera/Version");
if (isnull(version)) exit(0);

ver = split(version, sep:'.', keep:FALSE);
for (i=0; i<max_index(ver); i++)
  ver[i] = int(ver[i]);

if (
  (ver[0] == 6 && ver[1] >= 5) ||
  (ver[0] == 7 && ver[1] < 11)
)
{
  if (report_verbosity && version_ui)
  {
    report = string(
      "\n",
      "Opera ", version_ui, " is currently installed on the remote host.\n"
    );
    security_hole(port:get_kb_item("SMB/transport"), extra:report);
  }
  else security_hole(get_kb_item("SMB/transport"));
}