Multiple Buffer Overflows in IglooFTP PRO

2003-07-10T00:00:00
ID SECURITYVULNS:DOC:4815
Type securityvulns
Reporter Securityvulns
Modified 2003-07-10T00:00:00

Description

Multiple Buffer Overflows in IglooFTP PRO

Url: http://www.iglooftp.com

IglooFTP PRO is an extremely powerful, easy to use and well designed FTP client. Perhaps my personal favourite. It is extremely easy to use, but doesn't lack the configurability needed for advanced users. It it this award winning combination which makes IglooFTP PRO one of the best choices for all your FTP needs.

I have noticed that IglooFTP PRO 3.8 (and possibly earlier versions) are vulnerable to a buffer overflow in the FTP banner and other areas. These can be replicated as follows:

FTP Banner:

(IglooFTP PRO connected...) PADDING EBP EIP 220 [1020xA][4xB][4xX] // Totalling 1028 Bytes (Access violation when executing 0x58585858) // 4xX

Username:

(IglooFTP PRO Sends 'USER username') PADDING EBP EIP 331 [1020xA][4xB][4xX] // Totalling 1028 Bytes (Access violation when executing 0x58585858) // 4xX

Password:

(IglooFTP PRO Sends 'PASS password') PADDING EBP EIP 331 [1020xA][4xB][4xX] // Totalling 1028 Bytes (Access violation when executing 0x58585858) // 4xX

Account:

(IglooFTP PRO Sends 'ACCT account') PADDING EBP EIP 530 [1020xA][4xB][4xX] // Totalling 1028 Bytes (Access violation when executing 0x58585858) // 4xX

And quite possibly other functions relating to the same buffer...

This would mean that an attacker could set up a malicious server to send and execute arbitrary code, as I was able to for part of the vulnerability assessment performed.

I managed to cause my 'shell code' to execute using the following method:

220 [1020 bytes 'A'][4 bytes EBP][4 bytes EIP to 'Call ESP'*][41 bytes ShellCode]

  • My 'Call ESP' is located in 'rpcrt4.dll' exact version 5.1.2600.1106 at 0x78070690.

Please note that if you choose to tack the 'shell code' on to the end of the string in this fashion, then you will need to limit the size of the code to around 76 bytes because after that the executable exits without notification for some uncertain reason which I chose not to persue.

I have written and attached a proof of concept code to this email, using a simple shell code with hard-coded addresses (which you'll need to change) sent from a small FTP server written in Visual Basic.

If that file is not attached, please download it from: http://www.elitehaven.net/iglooftppro.zip

I have contacted the relative vendors, and we have worked together to provide a fix for this vulnerability.

The patch for IglooFTP PRO can be obtained from:

http://www.iglooftp.com/dl/windows/IFTPPro39.exe

======================================================================

Operating system and servicepack level: Windows 9x/Me/NT Based

Software: IglooFTP 3.8 (Possibly Earlier Versions)

Under what circumstances the vulnerability was discovered: Under a vulnerability search.

If the vendor has been notified: Yes, the vendor had been notified and a patch is available from: http://www.iglooftp.com/dl/windows/IFTPPro39.exe

How to contact you for further information: I can always be reached at peter4020@hotmail.com

Please credit this find to: Peter Winter-Smith

Thank you for your time, -Peter