MOAB-29-01-2007: Apple iChat Bonjour Multiple Denial of Service Vulnerabilities
Wednesday, January 31st, 2007If you're new to MacSeason.com and like what you see, you may want to subscribe to our RSS feed.
Bonjour, also known as zero-configuration networking, enables automatic discovery of computers, devices, and services on IP networks. Bonjour uses industry standard IP protocols to allow devices to automatically discover each other without the need to enter IP addresses or configure DNS servers.
Apple iChat Bonjour functionality is affected by several denial of service flaws. The most simple of them is the lack of throttling for discovery of available contacts (via mDNS queries). iChat will add any advertised _presence._tcp records, without even verifying if some of them already exist (ex. match first or last name, AIM handle, etc). A malicious user could advertise fake records and successfully block iChat users using Bonjour from discovering further peers in the network and having reliable communications.
The other issue can be used remotely to directly cause an exception in the iChat Agent when parsing a crafted TXT key hash. This will instantly cause a SIGTRAP signal to be sent to the process, causing a so-called ‘crash’. Further attempts to launch iChat Bonjour functionality again will fail as mDNSResponder keeps the crafted record (and restarting it will be necessary). These particular issues can’t be abused for arbitrary code execution.
Note: this should be considered an issue in mDNSResponder as well; iChat isn’t involved in the processing of any mDNS service advertisements (although it should definitely throttle presence queries). mDNSResponder stops responding shortly after abuse.
Workaround or temporary solution
For instance, either don’t use iChat with Bonjour or disable mDNSResponder all the way. You don’t want to be (another) nevaR reldA, seriously.
$ sudo launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist $ sudo mv /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist \ /Users/Shared/com.apple.mDNSResponder.plist.BACKUP
Full details
Note: Safari might crash visiting this site









