Multiple Buffer Overflows in IglooFTP PRO
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:
(IglooFTP PRO connected...) PADDING EBP EIP 220 [1020xA][4xB][4xX] // Totalling 1028 Bytes (Access violation when executing 0x58585858) // 4xX
(IglooFTP PRO Sends 'USER username') PADDING EBP EIP 331 [1020xA][4xB][4xX] // Totalling 1028 Bytes (Access violation when executing 0x58585858) // 4xX
(IglooFTP PRO Sends 'PASS password') PADDING EBP EIP 331 [1020xA][4xB][4xX] // Totalling 1028 Bytes (Access violation when executing 0x58585858) // 4xX
(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]
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:
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 firstname.lastname@example.org
Please credit this find to: Peter Winter-Smith
Thank you for your time, -Peter