Not to discount Nev's solution ;), but here's what I believe to be the best way to block yahoo outright, and that is to simply invalidate the yahoo domain names. By invalidating the yahoo domain names, whenever your clients try to go to a yahoo website, they will be given an IP address that can not be followed (0.0.0.0) and therefore they will fail to find the yahoo servers on the internet. The clients will simply get 404 errors indicating a problem with their connection to yahoo, rather than 403 errors indicating that yahoo has been intentionally blocked. This solution also works incredibly well to block things like yahoo messenger which have proven to be extremely difficult to block using restrictive policies and port restrictions.
For this solution to work, your clients must have their DNS settings pointed to the WinGate DNS Server. If they have their DNS settings pointed elsewhere, WinGate will not be able to respond to the clients DNS lookups with an overridden IP address.
1. Open the hosts file on the WinGate server in a text editor.
C:\windows\system32\drivers\etc\hosts.
2. Append the following lines to the hosts file.
0.0.0.0 yahoo.com
0.0.0.0 www.yahoo.com
0.0.0.0 mail.yahoo.com
These three domain names are just general domain names for yahoo. There may be other domain names that your clients will use to access yahoo services. When you discover them, simply add them to the hosts file using the same format ("IP address" space "domain name") and they will be invalidated.
If you have any difficulties applying this solution, feel free to send and email to the support desk. We will be happy to help. support at wingate dot com.