![]() |
#1
|
|||
|
|||
OllyDbg "INT3 AT" Format String Vulnerability
http://pb.specialised.info/
-> OllyDbg "INT3 AT" Format String Vulnerability" Waiting for a POC ![]() |
#2
|
|||
|
|||
POC? Whats that? Cant it be any easier to fix this?
![]() |
#3
|
|||
|
|||
POC = Proof Of Concept
|
#4
|
|||
|
|||
I found another bugs of OllyDbg. Wait for your ideas.
The first bug relate to Progress function and vsprintf function. Progress function is an export function of OllyDbg and used in OllyDbg PDK. Rename an EXE file with new name is %s%s%%s.exe. Open it with OllyDbg, and OllyDbg will crash at 004A74CF. The Progress function crash with parameter is: void Progress(int promille,char *format,...); promille = 1 format = 'Analysing %s%s%s%s$press SPACE to interrupt'. The Progress function call _vsprintf function at 0043188E: Code:
.text:00431881 loc_431881: ; CODE XREF: _Progress+5E .text:00431881 push esi ; arglist .text:00431882 lea eax, [ebp+format] .text:00431888 push eax ; format = 'Analysing %s%s%s%s' .text:00431889 push offset byte_4E3818 ; buffer .text:0043188E call _vsprintf Regards, TQN |
#5
|
||||
|
||||
Entry of routine: 4A6EBC
004A6F0F |. 80FB 25 |CMP BL,25 004A6F12 |. 75 08 |JNZ SHORT OLLYDBG.004A6F1C 004A6F14 |. 8A1E |MOV BL,BYTE PTR DS:[ESI] 004A6F16 |. 80FB 25 |CMP BL,25 004A6F19 |. 75 38 |JNZ SHORT OLLYDBG.004A6F53 25h = "%" this routine is called from nearly everywhere. if there would be a way to fix it, olly would handle all this %s strings. |
#6
|
|||
|
|||
I agree, MaRKuS-DJM. The problem is this function. It is the _vprinter function in Borland C++/C++ Builder C Runtime Library. It is called by sprintf function (the OutputDebugString bug) and vsprintf function (above bugs). Do we have a way to fix/workaround this function by code cave patch ?
|
#7
|
||||
|
||||
i did a small workaround but it failed in some special cases even if OutputDebugString bug and the bug you mentioned were fixed. will go on with fixing work...
|
#8
|
|||
|
|||
I think that any bug conected to OutputDebugString cant be considered a new bug. Its all very similar.
|
#9
|
||||
|
||||
"the bug" is just the mentioned output routine. it belongs to everything with "%s". about the long exe name, i think it is connected to GetOpenFileNameA API, but not sure, didn't look at it. would be a possibility, W32Dasm also can't handle such long path.
|
#10
|
||||
|
||||
yeah, you can test this too:
rename any EXE to (alt+255).exe (not in MSDOS) Olly can not open EXE file!!! (even notepad can it) and if you try to attach the debugger to this running process then you have a error msg. |
#11
|
||||
|
||||
taos: didn't have a problem opening such an exe
|
#12
|
||||
|
||||
attached EXE file with the error.
(it can be cos my OS is spanish and then the symbol that gets when type alt+255 maybe different from you) try attached file. IMPORTANT: this is not a RAR file, rename to EXE using the same name (WinRar have the same error that OLLY ![]() Last edited by taos; 05-16-2005 at 02:28. |
#13
|
|||
|
|||
Attach file is a test exe file with a long filename (242). Extract it to C:\ and open it with OllyDbg. OllyDbg will crash.
|
#14
|
|||
|
|||
Hi taos,
Your attached file give the file name '♣' on clicking the link. So i rename it as ALT+255 , but oly simply opens it. @TQN I cann't extract the test.rar using winRAR. So I open it in winRAR, renames it , extracts and again renames it to your longlong .... name. Now it simply crashes olly and at last leads to a blue screen in my poor PC. |
#15
|
|||
|
|||
that all depends on the font used in the system, some fonts translate the 'high' characters properly, others do not... its an old trick, from the win9x days, where to 'hide' a folder all you had to do was put an alt+255 infront of it and program manager/file manager etc could not open it...
|
![]() |
Thread Tools | |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
When use "vendor defined encryption routines", how to set daemon related part? | bridgeic | General Discussion | 6 | 01-22-2015 11:35 |
Wlscgen: Are "Vendor Id" and "Developer Id" different ? | Numega Softice | General Discussion | 6 | 02-12-2007 18:12 |
IDA 4.7 Debugger Format String Vulnerability | infern0 | General Discussion | 0 | 03-17-2005 18:19 |