[转载]Local buffer-overflow in W32Dasm 8.93
文章作者:Luigi Auriemma#######################################################################
Luigi Auriemma
Application: W32Dasm
(was [url]http://www.expage.com/page/w32dasm[/url])
Versions: <= 8.93 (8.94???)
Platforms: Windows
Bug: buffer-overflow
Exploitation: local
Date: 24 Jan 2005
Author: Luigi Auriemma
e-mail: [email]aluigi@autistici.org[/email]
web: [url]http://aluigi.altervista.org[/url]
#######################################################################
1) Introduction
2) Bug
3) The Code
4) Fix
#######################################################################
===============
1) Introduction
===============
W32Dasm is a cool and famous disassembler/debugger developed by URSoft.
It has tons of functions and, also if it is no longer supported by long
time, it is still widely used by a lot of people.
#######################################################################
======
2) Bug
======
The program uses the wsprintf() function to copy the name of the
imported/exported functions of the analyzed file into a buffer of only
256 bytes, with the possibility for an attacker to execute malicious
code.
#######################################################################
===========
3) The Code
===========
Exploiting the bug is very simple, all you need is to get an executable
and searching for the name of an imported or exported function to
modify.
I have written a very simple proof-of-concept that overwrites the
return address with 0xdeadc0de:
[url]http://aluigi.altervista.org/poc/w32dasmbof.disasm_me[/url]
由于考虑到POC大家可能有人下不了 我在文章末尾上传了
#######################################################################
======
4) Fix
======
No fix.
This program is no longer supported.
#######################################################################
页:
[1]