############################################# Proxomitron Version Naoko 4.0 (C) 2001 Scott R. Lemmon ############################################# New Users: If this is the first time you've used Proxomitron, be sure to read the "Instalation and Eradication" section of the help file. You'll need to follow those instructions to get Proxomitron working with your browser. New in version Naoko-4 Here's a quick list of most new features in Proxomitron. It may not be complete since I'm mainly focusing on things that are not necessarily apparent from the GUI. Please check the included help file for instructions on setting up your browser to use Proxomitron, and full details of the new features. New features include... * Matching Blocklist/Include files * Filter searching * Easy method to block new ads/cookies/pages/etc * Webpage Source view * Local file filtering * URL rewriting/redirecting * Easier config file loading * CGI Proxy support * Easier Proxy password * Header filter activated proxy control * Better access control * HTTP/1.1 & persistent connection support * Many enhanced matching commands * SSL Support ## Bugs fixed ## * Win NT and 2000 merge filter bug fixed * Menu icon color bug fixed * Various matching bugs * Problems freezing a few .gif files * Plenty of things I forgot ;-) For what's new since the last beta check out the "Changes.txt" file. ## SSL Support ## Proxomitron now supports SSL (secure https) connections. This comes in two flavors - SSLeay mode and pass-thru mode. The HTTP options under the "settings" dialog control which is used by default. SSLeay/OpenSSL mode ------------------- In this mode Proxomitron decrypt incoming data, filters it, then re-encrypts it before sending it on. This allows for nearly transparent filtering and full control over https connections. This feat is accomplished using the very nice Open Source SSLeay/OpenSSL libraries (not included - see below). ** WARNING ** This mode is experimental! I would strongly discourage using active SSL filtering for important transactions such as on-line banking or purchases. The connection may not be as secure, and it's better not to risk a filter potentially creating troubles on such a page. However, since the casual use of SSL on less important pages is increasing, sometimes you may wish to filter it anyway. Still, keep in mind that you do so at your own risk. To use this mode Proxomitron must have access to "slleay32.dll" and "libeay32.dll" which contain all the SSL libraries and all cryptographic routines. Otherwise "Pass-Thru" mode will be used. Because of all the legal and patent problems involved in the USA with any program that uses encryption, Proxomitron comes with NO ENCRYPTION CODE WHATSOEVER. In order to filter SSL connection you must get a copy of two additional files - "slleay32.dll" and "libeay32.dll". These files are part of the SSLeay/OpenSSL library and contain all the needed routines to do SSL encryption and decryption. In order to work they should be relatively recent versions and must be complied with all algorithms needed for https. I know it's a pain but it's the only safe way I know to offer SSL support. The .DLL files can often be found as part of other programs that use SSL. The open-source "stunnel" application is one example. If you can locate a binary distribution of stunnel for Win32 you should be able to find the two dll's with it. Finding them is the hard part - once you do, just copy the two files into Proxomitron's program folder and check "Use SSLeay/OpenSSL" under the "HTTP" section of Proxomitron's config dialog. Here's a few URLs where compatible ssleay .dlls could be found (at least at one time). However since these are independent sites with no relation to Proxomitron this could change at any time... http://www.attrition.org/~wrlwnd/crypto/ssl/stunnel/dlls.zip http://packetstorm.securify.com/crypt/SSL/stunnel/dlls.zip http://opensores.thebunker.net/pub/mirrors/stunnel/dlls.zip ftp://mike.daewoo.com.pl/pub/stunnel/Win32/ (as separate files) Andras.net is now providing a mirror of the OpenSSL files in Hungary... http://andras.net/tools/ssl/dlls.zip NOTE: If anyone wishes to mirror these files and is located somewhere legally able to do so please let me know. OpenSSL is developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/) which includes cryptographic software written by Eric Young (eay@cryptsoft.com). and includes software written by Tim Hudson (tjh@cryptsoft.com). (See openssl.txt for the full license) Server Certificates And Such ---------------------------- There are some other limitations to this. In order for Proxomitron to act as a SSL server it must have a "Certificate". Certificates are used by web servers to identify themselves to your web browser. They must be digitally "signed" by a known company like VeriSign or your browser will generate a warning. Proxomitron's certificate is located in the "proxcert.pem" file. It's a self-signed certificate created using SSLeay (if you're familiar with SSLeay you could create a certificate of your own). As such it should *not* be considered secure. However it's only used for the connection between Proxomitron and your web browser - the connection between Proxomitron and the remote site relies on the site's certificate not Proxomitron's. Normally the local connection to your browser never passes outside your PC, so its security isn't really an issue. In fact, the only reason to encrypt it at all is to make your browser think it's connecting directly to a secure site. This does have a few drawbacks though. When you first visit a secure site being filtered through Proxomitron, your browser will usually issue a warning. This happens for two reasons. First Proxomitron's certificate won't initially be recognized by your browser (normally you'll be allowed to add it though). Secondly, Proxomitron's certificate will not match the name of the site your visiting (since it can't know that ahead of time). Unfortunately (or perhaps fortunately) these warning are unavoidable since SSL was intentionally designed to prevent an intermediary from secretly intercepting your data. Proxomitron *is* intercepting your data, but under your control. One way around this is to use a sort of "half-SSL" technique. Proxomitron lets you specify in a normal non-secure "http://" URL that you want to make a SSL connection to the actual web server - just write the URL like so... Original: https://some.secure.site.com/ New : http://https..some.secure.site.com/ Change the protocol back to "http://" then add "https.." to the front of the hostname. This make it so the connection between your browser and Proxomitron is not encrypted but the connection from Proxomitron to the final server is! Since the local connection to Proxomitron is usually confined to your PC alone, this is really no less secure. However your browser thinks it's got a normal insecure connection and won't do any certificate checks. This can also be used to access secure pages from browsers that may not have https support at all. Also beware that Proxomitron does no certificate checking of it's own! If you don't trust a website and wish to check that it has a valid certificate put Proxomitron in "Bypass" mode. This will allow your browser to validate the site as it normally would. Keep in mind certificates are just used to help insure your actually connecting to the site you think you are and not some "spoofed" site. Whether they actually do this or not is debatable. Many sites (especially smaller ones) may not be using properly "signed" certificates, but this doesn't mean your connection is not as encrypted. Really all it means is they didn't cough up some money for VeriSign's official stamp of approval. Likewise, a valid certificate is no guarantee a site won't rip you off - you must still be careful before trusting a site with sensitive data. Still, that being said, it's always safer to connect in pass-thru mode (see below) in cases where security is critical. Pass-Thru mode -------------- This is similar to the support offered by many other proxies. In this mode SSL data is simply passed to the server without any alteration. This mode requires no special cytological support as the data is never decoded. However this method also gives little benefit except to allow proxy switching. Proxomitron will always use pass-thru mode when bypassed, and when the "Use SSLeay" mode is not enabled (or the SSLeay dll files are not present). This is also the safest mode to use from a security standpoint, and is the default mode used by Proxomitron. ## Proxy Related Stuff ## CGI PROXY SUPPORT: ------------------ Proxies that use a URL prefix can now be used in Proxomitron. Simply add the URL to the proxy selector as you would a normal proxy (but the http:// isn't required). The only restriction is that the proxy must work by tacking the destination URL to the end. For example, if the proxy was... http://somehost.com/cgi-bin/proxy.cgi/ and you were connecting to... http://anotherhost.com/some/webpage.html Then Proxomitron will automatically form... somehost.com/cgi-bin/proxy.cgi/http://anotherhost.com/some/webpage.html While a DeleGate style proxy might look like... www.delegate.com:8080/-_- and form... www.delegate.com:8080/-_-http://anotherhost.com/some/webpage.html Just like in a web browser multiple CGI style proxies can be chained by simply combining them together... somehost.com/cgi-bin/proxy.cgi/http://www.delegate.com:8080/-_-http://anotherhost.com/some/webpage.html CHAINING REGULAR A PROXY TO CGI PROXIES: ---------------------------------------- In addition to CGI proxies it's also possible to chain a regular proxy to the start of the list. This is the equivalent of using a normal proxy in your browser while also using a CGI proxy. The syntax for this is to use '->' like so... www.aproxy.com:8080->somehost.com/cgi-bin/proxy.cgi/ +++++++++++++++++++ Well that's about it for now. be sure to check the all new HTML help file for full details on all the new features. -Scott-