Proxomitron

Proxomitron
Developer(s) Scott R. Lemmon (Deceased)
Last release Naoko 4.5 (June) (June 1, 2003 (2003-06-01)) [±]
Preview release N/A
Development status Abandonware
Operating system Microsoft Windows
Type Filtering proxy
License Shonenware (see below)
Website www.proxomitron.info

Proxomitron, the Universal Web Filter, is a filtering web proxy written by Scott R. Lemmon. This program was originally designed to run under Windows 95.

All future development of the program was ceased in 2003 just one year before its author's death on 1 May 2004; even so, Proxomitron is still viable and used on modern Windows platforms such as Vista and Windows 7.

Premise

The program is generally used to block pop-ups and banners, to remove embedded sounds and animation from web pages, to alter or block JavaScript, and to modify the appearance and content of web pages.

Overview

Properly configured, Proxomitron intercepts HTTP traffic between the user's browser and web servers. The program is capable of altering web page content by removing or adding text. Additionally, it can add, modify, or delete HTTP message headers, be configured to block connections or redirect requests based on the web page address, and be configured to route connections through a remote proxy. The user can monitor connections and filter activations, if desired.

Program operation is dictated through the use of a configuration file containing specialized filters which can be written, edited, deleted, enabled or disabled by the user via the program's graphical user interface. (Third-party filters can also be imported, or "merged," into the configuration.) The filters utilize a "matching" language similar to the standard regular expressions used in text editing. Additional files, such as "blocklists" and SSL DLLs, can extend filtering capabilities.

Use of the program requires knowledge of the Proxomitron scripting language, and some familiarity with at least one of HTTP, HTML, JavaScript, and CSS. The scripting interface was not designed to be user-friendly. Because of these complications, the program can be difficult to customize for novice or non-technical users. A default set of filters is included with the program; advanced filters and filter sets written by experienced users are also available online. (See external links.)

Features

The following items are the basic applications and features of the program.[1]

Using the scripting language, filters are prepared with editing commands to match and replace text in the downloaded page. Specific pages can be targeted for filtering by matching the page's URL with a specified pattern.
Separate filters for incoming and outgoing HTTP headers can be used to modify the values of existing headers, add new headers, or delete headers. One example of such usage would be for cookie management.
Filters can use local variables (per filter) or global variables (available to all filters per request) to capture/store text for further test matching, to reinsert content into a new location, or to write content to lists. Preset variables are also available, e.g., the page's URL.
A number of special commands are available for use by filters or in URLs; e.g., a filter-based command can check if the user presses a particular key, or a URL-embedded command can direct Proxomitron to filter a local file.
Text files (known as "blocklists") can be used as sources for patterns for filter matches.
Text files (known as "logfiles") can be used by filters to append captured data to a list.
Memory-only text files can be generated and used by filters to build temporary blocklists, or permanent blocklists can be configured to only allow filters to add memory-only "session" data.
Local text files containing plain text, HTML snippits, css, or scripts can be independently retrieved and written into the web page by filters.
Filters can redirect requests to different web pages or to local files, either by sending the new location as a directive to the browser or by "transparently" connecting to the new location directly.
The log window permits the user to see the HTTP traffic between the browser and server. This can (optionally) include any POSTed data.
Filters can be configured to have Proxomitron generate its own alert or confirmation popup containing user-supplied text.
With the ZLIB library, the Proxomitron can uncompress GZIP compressed data streams and filter pages delivered in compressed modes.
With libraries to provide the SSL routines, the Proxomitron can filter secure, encoded streams. Since this forces the proxy to act as a "man in the middle", this should not be used in most cases.
Proxomitron can test remote proxies, maintain a list of proxies to utilize, and be configured to rotate the remote proxy connections.
Proxomitron can be configured to launch an external program or URL (as specified in the program settings) upon startup, or on demand via the Launch icon or a menu option. Launching programs and URLs from filters can also be accomplished through the use of an undocumented $EXEC command.[2]
The user can select bitmap images (referred to as "textures") for tiling interface backgrounds and button and tab faces, or simply disable this feature. An internal set of default bitmaps (admittedly "psychedelic"[3]) are included with the program.
A special viewing of the page source showing which filters matched what page content can be sent to the browser for debugging purposes. A test window is also available from the filter editor dialogs for testing matches and checking filter efficiency.

License

The program was distributed under a "ShonenWare" license; it was free to use, but if the user purchased a Shonen Knife CD and convinced Lemmon that he or she had listened to it, then Lemmon would consider that to be sufficient to register that user.

History

The first public release of Proxomitron (Naoko 2) was in 1999[4] as a download via Simtel. Releases that followed were all named "Naoko" (for Naoko Yamano) followed by a release number. (Release versions were 3, 3(b), 4.0, 4.1, 4.2, 4.3, 4.4, 4.5.)

The May 2003 release of Naoko 4.5 was followed very quickly by the removal of the program's web site and Lemmon's declared termination of continued development of Proxomitron.[5] A subsequent release, however, was made in June 2003, primarily to revert a new behavior related to remote proxy connections that had been designed into the May version.[6]

After the release of Naoko 4.5 (June), development was permanently discontinued and the official site had the message:

This reads "kiemashita" in Japanese and translates to "it went out" or "gone." The original home webpage is no longer accessible. Lemmon's mirror redirect was changed to display a different final message from the author a short time later.[7]

The author, Scott R. Lemmon, died 1 May 2004 at age of 36.[8]

Current status

As this was a closed-source project, Proxomitron is no longer being maintained or developed; however, the Proxomitron program is still functional, and there is a community of users who provide support for it through electronic forums. Filters, filter sets, compatible DLLs and other files, and GUI patches to restyle and/or update Proxomitron's graphical user interface are also being provided by users. (See external links.)

Many current browsers do contain features similar to those provided by Proxomitron filters – blocking advertisements and pop-ups, for example. Other browser features or add-ons, such as Greasemonkey for Firefox and user stylesheets for Firefox and other browsers via the Stylish addon, also allow for local modification of web pages.

See also

References

Distribution and resources

Support

Filter sets

Graphical user interface patches

Other

This article is issued from Wikipedia - version of the 6/18/2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.