Internet JUNKBUSTER Frequently Asked Questions

Configuring Browsers · Installation · For Companies · Blocking · Cookies · Anonymity · Security


The Top Ten Questions


For a list of the questions on this page (without the answers), see our Table of Contents. It also contains detailed pointers into our pages on busting junk e-mail, junk mail and telemarketing calls.

*  What is the Internet Junkbuster and what does it do for me?

The Internet Junkbuster Proxy TM blocks requests for URLs (typically banner ads) that match its blockfile. It also deletes cookies and other unwanted identifying header information that is exchanged between web servers and browsers. These headers are not normally accessible to users (even though they may contain information that's important to your privacy), but with the Internet Junkbuster you can see almost anything you want and control everything you're likely to need. You decide what's junk. SM

*  Is there a license fee / warranty / registration form / expiration?

No, none of these. It's completely free of charge. Junkbusters offers you the software to copy, use, modify and distribute as you wish, forever, at no charge under the GNU General Public License.

It comes with no warranty of any kind.

You don't have to register, in fact we don't even provide a way to do so: the practice of registering software is almost always just an excuse to send you solicitations and sell your name and information about your behavior. You are welcome to obtain and use our software as anonymously you wish. (Your IP address will naturally be disclosed when you download it, so if you work for a web ad company you might want to use a service such as the lpwa.com when you get it. We never want to be given any information that you consider private or confidential.)

We are often asked why we give away a product that many would happily pay for. The answer is that we are determined to carry out our mission: to free the world from junk communications.

*  Does it run on Windows? On a Mac? On the AOL browser?

For the latest information on availability, see the Distribution Information page. But you don't need to have it running on your computer if you get your ISP or Systems Administrator at work to run it.

*  How can I get my ISP to run the Internet Junkbuster?

First check whether they already are. Most ISPs would announce this on their ``News'' page or their pages for new subscribers. If they state that they are considering whether to install it, allow them time to do it. If they say they will not provide it, you might want to consider switching to an ISP that does.

If they appear to be unaware of it, you might send them email including the follow URL, asking them to provide the Internet Junkbuster for their customers.
http://www.junkbusters.com/ht/en/ijbfaq.html#isps

*  Who chooses the options that control what is blocked?

Whoever starts the Internet Junkbuster chooses the options and the blockfile. If your ISP runs it for you, they have to make these decision (though they may give you a choice of proxies, and a way to suggest new URLs to block). If you run it on your computer, You decide what's junk. SM

*  How do I run the code on my computer?

If you have a C compiler and are using UNIX ® or Windows 95 or NT, you download it, compile it, start it running, and then configure your browser.

If you are using any other operating system you would need to port the code. You are welcome to do this, and if you would like us to consider publishing your ported version, please tell us.

*  How can I tell which blockfile and options are being used?

Your ISP should have a page specifying the options they chose, but you can check by going to http://internet.junkbuster.com/cgi-bin/show-proxy-args or to any URL ending in show-proxy-args (even if it doesn't exist). It needn't exist because the Internet Junkbuster 2.0 intercepts the request, blocks it, and returns in its place information about itself. This is also useful for checking that your browser really is going through an Internet Junkbuster.

If you wish to check the header information your proxy is actually sending, a visit to http://internet.junkbuster.com/cgi-bin/show-http-headers will give you the more relevant ones first. You might also like to turn the proxy off and compare the difference. (Don't forget to turn it back on again.)

*  My browser started giving me ``server not responding'' messages

Once your browser is told to use a proxy such as the Internet Junkbuster, it thinks of it as its server for everything, so this message means it can't talk to the proxy. The Internet Junkbuster may not be running, or you may have specified its proxy address incorrectly. Check that the details you entered are correct. If you have telnet you can try connecting to the appropriate port to see if the Internet Junkbuster is running. If your ISP is running the Internet Junkbuster, you may want to check with them. If you are running it yourself under UNIX ®, try looking at a ps ax to see if it is running. The port specified in its options should be the same one as your browser has configured.

*  I've got this great idea for a new feature. Who do I tell?

We'd be very interested to hear it, but please bear a few things in mind.

*  My question isn't listed here. Who do I ask for support?

The answer to detailed technical questions may be answered in manual page, or in the source code. Also double-check this page for an answer: using the ``find'' feature on your browser for likely keywords may help.

If your ISP is providing the Internet Junkbuster for you, and your question is about how to use it, check their web page before asking them.

Even though we don't offer the kind of support you might expect if you paid a lot of money for a software product, you can still ask us. But before you do, please consider whether you could ask someone closer to you. And please be patient if we're slow to reply: we never charge consumers for our services, so we have to subsidize consumers with revenue from companies, and our resources are limited.

If your company or organization would be interested in a maintenance contract with phone and email support, hard copy documentation and source code and pre-compiled binaries on tape or disk, please ask us for a quote.

--- Back to Top of Page ---


Configuring your browser to talk to the Internet Junkbuster


*  What is the proxy address of the Internet Junkbuster?

If your ISP or company is running the Internet Junkbuster for you, they will tell you the address to use. It will be the name of the computer it's running on (or possibly its numeric IP address), plus a port number. Port 8000 is the default, so assume this number if it is not unspecified. Sometimes a colon is used to glue them together, as in junkbuster.pro-privacy-isp.net:8000 but with most browsers you do not type the colon, you enter the address and port number separately.

If you are running the Internet Junkbuster on your computer, the machine will probably be localhost and the port will be 8000 unless you have told the Internet Junkbuster to run on a different port with the listen-address option.

*  How do I tell the browser where to find the Internet Junkbuster?

All current browsers can be told which proxy to use. You enter the same information under two lines: one for HTTP, and one for the Secure Protocol if your browser supports SSL. If you find some information already entered for your proxy, see the next question. Here are the menus you go through to get to the proxy configuration settings. (We also recommend that you disable Java, which is a separate operation.)

If your browser is not listed here, or if you notice an error, please tell us the correct procedure.

*  What should I do if I find another proxy is already configured?

This is the case if you already find values set where you would enter the proxy details, or if anything is entered under Automatic Proxy Configuration (in the case of Netscape and MS-IE 3.0.) It's probably a firewall proxy between your company and the outside world, or a caching proxy if you're using an ISP.

What needs to be done in this case is to use the forwardfile option to tell the Internet Junkbuster the address of the other proxy. Specify a different (unused) port number with the listen-address option, and configure your browser to use that port. If you haven't done this kind of thing before, it's probably best to consult your systems administrator or ISP about it; check their web page first.

*  What if I want to stop using the Internet Junkbuster?

Just go through the same procedure you used to start your browser using the Internet Junkbuster, but remove the details you put in (or if there was something there before, restore it). You may need to use Save Options to make this change permanent. On Netscape 3.0 you can go through Options; Network Preferences; Proxies and click on No Proxy to turn it off, and later click on Manual Proxy Configuration if you want to start using it again. (No need to enter the again details under View as you did the first time; they should remain there unchanged.)

--- Back to Top of Page ---


Setting up the Internet Junkbuster on your local computer


You currently need a C compiler to do this. For information on the availability of an executable version under Windows, see the distribution page.

*  How do I compile the code under Unix?

If you are running Redhat Linux you may prefer to use the rpm instead of the following procedure.

  1. Download the tar file (~182k) and uncompress and extract the files from it with this command
       uncompress -c ijb20.tar.Z | tar xf -

  2. If your operating system is from Sun or HP examine the Makefile and make any changes indicated inside.
  3. Run

       make

  4. Copy the sample configuration file (sconfig.txt) to some convenient place such as /usr/local/lib/junkbuster/configfile or whatever you choose. The sample file has all the options commented out. You can remove the # character on any that you want, but it may be better to leave this until to later. Run it asynchronously:

       junkbuster configfile &

    If you are running an old version you can start it with junkbuster &

  5. Configure your browser (described above).
  6. Verify that the Internet Junkbuster is working (described above).
  7. Decide on the options you really want, kill the process and start it again. The most popular option is blockfile to block ads. A sample blockfile is provided as an illustration, but it doesn't really stop many ads. More comprehensive ones are available elsewhere. If you develop an interesting blocklist and publish it on the Web, you might want to include the word ``junkbuster'' in it and use the word ``blocklist'' in the file name given in the URL so that others can find it with the query given in the previous sentence.
  8. You'll probably want to add an entry to /etc/rc.d/rc.local or equivalent to start it at boot time. (Any output you specify should be redirected to a file. And don't forget the & at the end to run it asynchronously or your system will seize up after the next reboot.)

*  How do I compile the code under Windows?

If you're not used to compiling code yourself, ask your ISP or administrator at work to provide it for you, or wait until we release an executable version. This is scheduled for mid-October 1997.

  1. Download zip file called ijb20.zip (~140k), then uncompress and unpack the zip archive using a tool like WinZip.
  2. Now the distribution (source and sample files) will be in a directory called ijb20. Change to that directory and then edit the Makefile for your system, removing the comment character (#) in the lines related to Win32. Then type:
       nmake
    This will create an executable called junkbstr.exe.
  3. Copy the sample configuration file (sconfig.txt) to something such as config.txt, and make any changes you want (probably none while before you make sure it's working).
  4. Run it the executable with the config file given as an argument.
  5. Configure your browser (described above).

*  How do I check that the proxy is working?

Pick a page from somewhere (such as your bookmarks, or just one that your browser was pointing to) and Reload it. If you get a message along the lines of ``server not responding, using cached copy instead,'' see the advice above. If the page reloads OK, check that your browser is actually talking to the proxy by going to http://internet.junkbuster.com/cgi-bin/show-proxy-args or any URL ending in show-proxy-args (as described below, the proxy should intercept the request.) When you see ``Internet Junkbuster Proxy Status,'' you'll know it's working.

*  How and why would I have this proxy chained with other proxies?

You may need the forwarding feature to ``daisy chain'' the Internet Junkbuster to another proxy, perhaps an anonymizing proxy to conceal your IP address, or a caching proxy from your ISP, or a firewall proxy between your company and the outside world. Version 2.0 can be even configured to forward selectively according to the URL requested: for example, connecting directly to trusted hosts, but going through an anonymizing or firewall proxy for all other hosts.

Network administrators might use it to provide transparent access to multiple networks without modifying browser configurations. Most browsers also provide a way of specifying hosts that the browser connects to directly, bypassing the proxy. Some provide a method for Automatic Proxy Configuration. A well written Internet Junkbuster configuration can be much more flexible and powerful.

An ISP's caching proxy would typically be called something like cache.your-isp.net:8080 (as described on you ISP's web page); you would put this information in your forwardfile as described in our manual. Your browser would be configured to the Internet Junkbuster for HTTP and Security Proxies as before, but you probably want to tell it to use the caching proxy for FTP and other protocols. If your ISP is running the Internet Junkbuster for you, they have probably already decided whether to chain with a caching proxy.

*  How does the Internet Junkbuster work with SOCKS gateways?

There is support for some gateways in Version 1.4 and above. The gateway protocol used to be specified on the command line; it is now specified in the same file as forwarding. Note that the browser's proxy configuration must not specify a SOCKS host; it should specify the proxy as described above.

--- Back to Top of Page ---


Information for companies


*  Should we provide the Internet Junkbuster for our employees?

That depends. Try this quick three-point test.

  1. Do you want to spend your communications budget on bandwidth that wastes your employees' time by forcing them to wait for a lot of annoying distractions while they're trying to do their jobs?
  2. Do you want current and potential vendors to know quantitative details about the software and hardware platforms that you have?
  3. Do you want your competitors to be able to track exactly which of your employees are checking out their web sites?
If the answer to all three questions is yes, then you probably don't have any need for this kind of product.

*  Can our company get commercial support for the software?

Yes, ask us for a quote on a maintenance contract with your choice of phone and email support, hard copy documentation, source code and pre-compiled binaries on tape or disk, and email alerting of upgrades and issues.

*  I run an ISP. What issues should I consider before offering it?

Here's a checklist we've developed from working with a few ISPs. You may think of more, and we'd be interested if you're willing to share them with us.

  1. If you get more than one request for the Internet Junkbuster you may want to tell your customers on your News page that you already know about it and are assessing it.
  2. Try the software and verify that it performs satisfactorily.
  3. Determine whether your customers perceive the service as valuable (and therefore worth the time to set up). We've had reports of many delighted customers.
  4. Assess the level of security associated with the software. If access is to be restricted (to just dial-in ports, for example) how is this to be done?
  5. Consider whether to expect any additional load on computing resources required, and any change in use of bandwidth due to the blocking of large GIFs.
  6. Choose the options you wish to provide.
  7. Decide whether you want to offer a choice of configurations, such as these three.
    1. Banners Blocked, Wafer with No-Cookie-Copyright notice
    2. Cookies not stopped (cookiefile with just a * in it), User Agent specified as Lynx
    3. Cookies from browser allowed, permitting registered services
    4. A proxy for kids.
    If you run a caching proxy, decide whether the Internet Junkbuster will chain with it by default, and whether to offer an alternate with no caching. (Some ISPs don't, because they want to give customers an incentive to use caching and save bandwidth.)
  8. Decide on a naming scheme for your proxies. If you're running only one proxy on one machine, the simplest way is to just use port 8000 on your main machine, such as our-isp.net. But it would probably be safer to put an entry in your name server and call it something like junkbuster.our-isp.net. If running several proxies, you could either use different ports on the same machine, or if you have the opportunity to distribute the load over a few machines you could use different hostname aliases such as banner.junkbuster.our-isp.net, lynx.junkbuster.our-isp.net and oneway.junkbuster.our-isp.net (corresponding to the examples in the previous point).
  9. Prepare a page explaining the Internet Junkbuster to your customers. Here's are some examples from Spain, Germany and Texas. You are welcome to copy and modify material from Junkbusters according to the GPL. You might want to set up a process to check this page periodically and update it when it changes. (A few links can probably serve as well as lot of copying however.) A typical page would probably specify the following.
  10. Invite a small number of technologically sophisticated customers to beta-test the service.
  11. Announce general availability on your ``News'' page. Tell us if you would like to be included on a list of ISPs offering the Internet Junkbuster.

*  What's a Proxy Server Server and how can I make money as one?

Other organizations with web presence and some bandwidth to spare can set up as Proxy Server Servers (PS2s). The idea here is to allow users to choose their proxy configuration, and provide it to them on a semi-permanent basis. Users would fill in a form specifying what options they want in their proxy, possibly even at a very high level, such as ``no ads'' or ``no nudity.'' This information is sent to a CGI script that configures a proxy, starts it running, and returns its address and port number (possibly along with configuration instructions for the browser that the user specified.)

Users could be charged a subscription fee, or the service could be thrown in free in the hope of improving customer retention for some existing business (which is what ISPs are doing). It might be possible to make money by inserting new ads in the holes left where others were blocked, but the original owners might object. PS2s could differentiate themselves by providing frequently updated and comprehensive blocking of ads, or of offensive material based on their own grading system. Some content providers might do it for the chance to be the only company that the consumer permits to set cookies. (Identification could even be done via cookies, but this might not be popular with the kind of user who wants a proxy.) PS2s might sell specific or aggregate information about their users' browsing habits, so the agreement with users on whether they are permitted to do this would be important to both sides.

If your organization establishes a Proxy Server Service you would like publicized, please notify us.

--- Back to Top of Page ---


Blocking


*  If I see an ad I wish I hadn't, how do I stop it?

If your ISP is running the Internet Junkbuster, they should have a policy on whether they accept suggestions from their customers on what to block. Consult their web page.

If you are running the Internet Junkbuster yourself, you have complete control over what gets through. Just add a pattern to cover the offending URL to your blockfile. Version 1.3 and later automatically rereads the blockfile when it changes, but if you're running an earlier version you'll need to kill it and restart the junkbuster. If you don't know the process number to give to kill, try this: ps ax | grep junkbuster

To choose a pattern you'll first need to find the URL of the ad you want cover.

Some people use the debug 1 option to display each URL in a window as the request is sent to the server. It's then usually an easy task to pick the offending URL from the list of recent candidates.

Alternatively, you can use View Document Info (or View Document Source if your browser doesn't have that). The Info feature has the advantage of showing you the full URL including the host name, which may not be specified in the source: there you might see something like SRC="/ads/click_here_or_die.gif" indicating only the path. (The host name is assumed to be the same as the one the page came from.)

But ads often come from a different site, in which case you might see something like SRC="grabem.n.trackem.com/Ad/Infinitum/SpaceID=1666" or longer. If the company looks like a pure ad warehouse (as in the last case), you may want to place just its domain name in the blockfile, which blocks all URLs from that site.

If the ad comes from a server that you really want some content from, you can include enough of the path to avoid zapping stuff you might want. In the first example above, /ads/ would seem to be enough. If you don't include the domain name, the pattern applies to all sites, so you don't want such patterns to be too general: for example /ad would block /admin/salaries/ on your company's internal site.

To speed the blocking of images, some UNIX ® users create a shell script called Image: containing a line such as echo $1 | sed s/http:..// >> $HOME/lib/blockfile that adds its argument to the user's blockfile. Once an offending image has been be found using View Document Info it's easy to cut-and-paste the line (or part of it) into a shell window. The same script can be linked to a file called Frame: to dealing with framed documents, and junkbuster: to accept the output of the debug option.

When compiled without the regular expressions option, the Internet Junkbuster uses only very simple (and fast) matching methods. The pattern /banners will not stop /images/banners/huge.gif getting through: you would have to include the pattern /images/banners or something that matches in full from the left. So you can get what you want here, the matcher understands POSIX regular expressions: you can use /*.*/banners to block and any URL containing /banners (even in the middle of the path). (In Versions 1.1 through 1.4 they were an option at compile time; from Version 2.0 they have become the default.) Regular expressions give you many more features than this, but if you're not already familiar with them you probably won't need to know anything beyond the /*.*/ idiom. If you do, a man egrep is probably a good starting point).

Don't forget the / (slash) at the beginning of the path. If you leave it out the line will be interpreted as a domain name, so ad would block all sites from Andorra (since .ad is the two-letter country code for that principality).

For a detailed technical description of how pattern matching is done, see the manual.

*  How come this ad is still getting through anyway?

If the ad had been displayed before you included its URL in the blockfile, it will probably be held in cache for some time, so it will be displayed without the need for any request to the server. Using the debug 1 option to show each URL as it is fetched is a good way to see exactly what is happening.

If new items seem to be getting through, check that you are really running the proxy with the right blockfile in the options. Check the blockfile for exceptions.

Some sites may have different ways of inserting ads, such as via Java. If you have ideas on how to block new kinds of junk not currently covered, please tell us.

*  How do I stop it blocking a URL that I actually want?

You can change the patterns so they don't cover it, or use a simple feature in Version 1.1 and later: a line beginning with a ~ character means that a URL blocked by previous patterns that matches the rest of the line is let through. For example, the pattern /ad would block /addasite.html but not if followed by ~/addasite in the blockfile. Or suppose you want to see everything that comes from a site you like, even if it looks like an ad: simply put ~aSiteYouLike.com at the end of the blockfile. (Order is important, because the last matching line wins.)

*  Can I block sites I don't want my children to see?

Yes, but remember that children who are technically sophisticated enough to use the browsers' proxy configuration options could of course bypass any proxy. This kind of technology can be used as a gentle barrier to remind or guide the child, but nobody should expect it to replace the parent's role in setting and enforcing standards of online behavior for their children.

Some ISPs are starting to provide specialized proxies to protect children. There are two basic approaches: the ``black list'' and the ``white list'' approach. The black list approach allows the child to go anywhere not explicitly prohibited; the white list permits visits only to sites explicitly designated as acceptable.

It's very easy for anyone to compile a white list from a page of ``recommended kids sites'' and to configure an Internet Junkbuster to restrict access to those sites. If you compile with the regex option, you can place a * (asterisk) as the first line of the blockfile (which blocks everything), and then list exceptions after that. Be careful to make the exception sufficiently broad: for example, using ~www.uexpress.com/ups/comics/ch/ as the exception for Calvin and Hobbes would block some of the graphic elements on the page; you would probably want a wider exception such as ~www.uexpress.com/ups/ to permit them.

Version 2.0 has an experimental feature to permit only sites mentioned in a nominated trusted site.

Many filtering products actually scan for keywords in the text of pages they retrieve before presenting it, but the Internet Junkbuster does not do this. Building a perfectly reliable black list system is hard, because it's very difficult to state in advance exactly what is obscene or unsuitable.

*  What do I see when a page or graphic is blocked by the proxy?

You usually see a broken image icon, but it depends on several factors beyond the proxy's control. If asked for a URL matching its blockfile, the proxy returns an HTML page containing a message identifying itself (currently the two words ``Internet Junkbuster'') with a status 202 (Accepted) instead of the usual 200 (OK). (Versions 1.X returned an error 404: Forbidden, which caused strange behavior in some cases.) Status 202 is described HTTP RFC as indicating that the request has been accepted but not completed, and that it might complete successfully in the future (in our case, if the blockfile were changed).

The broken image icon is most common because the browser is usually expecting a graphic. But if it was expecting text, or if the page happens to be using certain HTML extensions such as layer and your browser is a late model from Microsoft, you may see the words ``Internet Junkbuster'' displayed as a hot link.

Clicking on the link takes you to an explanation of the pattern in the blockfile that caused the block, so that you can edit the blockfile and go back and reload if you really want to see what was blocked. The explanatory link is generated by the proxy and is automatically intercepted based on its ending in ij-blocked-url; even though the site is specified as http://internet.junkbuster.com no request is actually made to that site.

To summarize: the identifying link to the blocking explanation is usually turned into a broken image icon, but it may be displayed on a page alone, or they may may be restricted to the particular frame, layer or graphic area specified in the page containing them. The proxy has no way of knowing the context in which a URL will be used and cannot control how the blocking message will be rendered.

*  Why not replace blocked banners with something invisible?

Many users have suggested to us that blocked banners should be replaced by a something like a 1x1 transparent GIF to make the page would look as if there was nothing ever there. Apart from making it harder to catch unintended blocking, this might also displease the owners of the page, who could argue that such a change constitutes a copyright infringement. We think that merely failing to allow an included graphic to be accessed would probably not be considered an infringement: after all this is what happens when a browser is configured not to load images automatically. However, we are not lawyers, so anyone in doubt should take appropriate advice.

In a context where the copyright issue is resolved satisfactorily, a proxy could simply return a status 301 or 302 and specify a replacement URL in a Location and/or URI header. An alternative would be to use inline code to return a 1 x 1 clear GIF.

*  Why not block banners based on the dimensions of the image?

Many users have pointed out that most banner ads come in standard sizes, so why not block all GIFs of those sizes? Well, this would require getting the object in order to examine its dimensions before deciding whether to display it, which we don't like to do. A less immediate approach would be to write software that scans the browser's cache of objects periodically, adding offensive URLs to the blockfile automatically so they will never be fetched again. Technology might advance to the point where this could be done based on the content of the images, not just their size. If anyone implements this we would be interested to hear about it.

*  What about non-graphic advertising within the pages I want?

The Internet Junkbuster deliberately does not provide a way of automatically editing the contents of a page, to remove textual advertising or to repair the holes left by blocked banners. Other packages such as WebFilter do.

*  Does it block ads on the new broadcasting ``push'' systems?

We haven't tried it though we expect it would probably work on image ads on push channels. If you find you have experience using the proxy with push, or have any other advice about it, please tell us.

--- Back to Top of Page ---


Cookies


*  Might some cookies still get through? How can I stop them?

Yes, you should expect the occasional cookie to make it through to your browser. We know of at least three ways this can happen; please tell us if you find any others. One way is in secure documents, which are explained below.

A few sites set cookies using a line such as <META HTTP-EQUIV="Set-Cookie" CONTENT="flavor=chocolate"> in the HEAD section of an HTML document. Cookies can also be set and read in JavaScript. To see if this is happening in a document, view its source, look in the head for a section tagged script language="JavaScript". If it contains a reference to document.cookie, the page can manipulate your cookie file without sending any cookie headers. The Internet Junkbuster does not tamper with these methods. Fortunately they are rarely used at the moment.

To prevent cookies breaking through, always keep cookie alerts turned on in your browser, and disable Java and Javascript. Making the files hard to write may also help.

*  Exactly how do cookies get created and stored anyway?

When a web site's server sends you a page it also sends certain ``header information'' which your browser records but does not display. One of these is a Set-Cookie header, which specifies the cookie information that the server wants your browser to record. Similarly, when your browser requests a page it also sends headers, specifying information such as the graphics formats it understands. If a cookie has previously been set by a site that matches the URL it is about to request, your browser adds a Cookie header quoting the previous information.

For more background information on how cookies can damage your privacy, see our page on cookies. For highly detailed technical information see the RFC. The Internet Junkbuster will show you all headers you use the debug 8 option.

*  If cookies can't get through, will some things stop working for me?

Possibly. Some personalized services including certain chat rooms require cookies. Newspapers that require registration or subscription will not automatically recognize you if you don't send them the cookie they assigned you. And there are a very small number of sites that do strange things with cookies; they don't work for anyone that blocks cookies by any means.

If you want such sites to be given your cookies, you can use the cookiefile option provided you are running Version 1.2 or later yourself. Simply include the domain name of those sites in the cookiefile specified by this option.

It's possible to let cookies out but not in, which is enough to keep some sites happy, but not all of them: one newspaper site seems to go into an endless frenzy if deprived of fresh cookies. A cookiefile containing a single line consisting of the two characters >* (greater-than and star) permits server-bound cookies only. The * is a wildcard that matches all domains.

If someone else is running the Internet Junkbuster for you and has a version that passes server-bound cookies through, you can try editing your browser's cookie file to contain just the ones you want, and restart your browser. To subscribe to a new service like this after you have started using the Internet Junkbuster, you can try the following: tell your browser to stop using the Internet Junkbuster, fill out and submit your subscription details (allowing that web site to set a cookie), then reconfigure your browser to use the Internet Junkbuster again (and stop more cookies being sent). This also requires the cookiefile option, and its success depends on the Web site not wanting to change your cookies at every session. For this reason it does not work at some major newspaper sites, for example. But you may prefer to look at whether other sites provide the same or better services without demanding the opportunity to track your behavior. The web is a buyer's market where most prices are zero: very few people pay for content with money, so why should you pay with your privacy?

*  Can I control cookies on a per-site basis?

Yes, since version 1.2 the Internet Junkbuster has included advanced cookie management facilities. Unless you specify otherwise, cookies are discarded (``crumbled'') by the Internet Junkbuster whether they came from the server or the browser. In Version 1.2 and later you can use the cookiefile option to specify when cookies are to be passed through intact. It uses the same syntax and matching algorithm as the blockfile.

If the URL matches a pattern in the cookiefile then cookies are let through in both the browser's request for the URL and in the server's response. One-way permissions can be specified by starting the line with the > or < character. For example, a cookiefile consisting of the four lines
   org
   >send-user-cookies.org
   <accept-server-cookies.org
   ~block-all-cookies.org
allows cookies to and from .org domains only, with the following exceptions:

  1. Cookies sent from servers in the domain send-user-cookies.org are blocked on their way to the client, but cookies sent by the browser to that domain are still be fed to them.
  2. The cookies of accept-server-cookies.org check in to the proxy and are passed through to the browser, but when they come back to the proxy they never check out.
  3. All cookies to and from block-all-cookies.org are blocked.

If the junkbuster was compiled with the regular expressions option they may be used in paths. Any logging to a ``cookie jar'' is separate and not affected.

It's important to give hosts you want to be able to set cookies sufficient breadth. For example, instead of www.wsj.com use wsj.com because the company uses many different hosts ending in that domain.

*  Can I make up my own fake cookies (wafers) to feed to servers?

Yes, using the wafer option. We coined the term wafer to describe cookies chosen by a user, not the Web server. Servers may not find wafers as tasty as the cookies they make themselves. But users may enjoy controlling servers' diets for various reasons, such as the following.

Junkbusters provides a CGI script that lets you see your wafers as they appear to servers.

Wafers confuse a few fragile servers. If this troubles you, don't use this option.

Any wafers specified are sent to all sites regardless of the cookiefile. They are appended after genuine cookies, to maintain compliance with RFC 2109 in the event that a path was specified for a cookie. The RFC's provisions regarding the $ character (such as the Version attribute) are transparent to the proxy; it simply quotes what was recited by the browser.

If you want to send wafers only to specific sites, you could try putting them your browser's cookie file in a format conforming to the Netscape specification, and then specify in the proxy's cookiefile that cookies are to be sent to but not accepted from those sites, so they can't overwrite the file. This may work with Netscape but not all other browsers.

*  Why would anyone want to save their cookies in a ``cookie jar?''

We provided this capability just in case anyone wants it. There are a few possible reasons.

--- Back to Top of Page ---


Anonymity


For details on how your identity can be revealed while you surf, see our page on privacy. Once you start using the Internet Junkbuster you should find that much of the information previously indicated on that page will no longer be provided. We also recommend that you disable JavaScript and Java.

*  If I use the Internet Junkbuster, will my anonymity be guaranteed?

No. Your chances of remaining anonymous are improved, but unless you are an expert on Internet security it would be safest to assume that everything you do on the Web can be attributed to you personally.

The Internet Junkbuster removes various information about you, but it's still possible that web sites can find out who you are. Here's one way this can happen.

A few browsers disclose the user's email address in certain situations, such as when transferring a file by FTP. The Internet Junkbuster 2.0 does not filter the FTP stream. If you need this feature, or are concerned about the mail handler of your browser disclosing your email address, you might consider the products of Kevin McAleavey.

Browsers downloaded as binaries could use non-standard headers to give out any information they can have access to: see the manufacturer's license agreement. It's impossible to anticipate and prevent every breach of privacy that might occur. The professionally paranoid prefer browsers available as source code, because anticipating their behavior is easier.

*  What private information from server-bound headers is removed?

The Internet Junkbuster pounces on the following HTTP headers in requests to servers, unless instructed otherwise in the options.

In Version 1.4 and later you can use the -r @ option to selectively disclose REFERER and USER_AGENT to only those sites you nominate.

Some browsers send Referer and User-Agent information under different non-standard headers. The Internet Junkbuster 2.0 stops UA headers, but others may get through. Some search engines encode the query you typed in the URL that goes to advertisers to target a banner ad at you, so you will need to block the ad as well as the referer header, unless you want them (and anyone they might buy data from) to know everything you ever search for.

If you have JavaScript enabled (the default on most browsers) servers can use it to obtain Referer and User Agent, as well as your plug-ins. We recommend disabling JavaScript and Java.

*  Might some things break because header information is changed?

Possibly. If used with a browser less advanced than Netscape 3.0 or IE-3, indicating an advanced browser may encourage pages containing extensions that confuse your browser. If this becomes a problem upgrade your browser or use the user-agent option to indicate an older browser. In Version 1.4 and later you can selectively reveal your real browser to only those sites you nominate.

Some page access counters work by looking at the referer; they may fail or break when deprived.

Some sites depend on getting a referer header, such as uclick.com, which serves comic strips for many newspaper sites, including Doonsbury for the Washington Post. (If you click on that last link, you can then get to a page containing the strip via the same URL we've linked to under Doonsbury, but if you click on the Doonsbury link directly, it gives you an error message suggesting that you use a browser that supports referers.) In Version 1.4 and later you can use the -r @ option and place a line like >uclick.com in your cookiefile. Wired News used to use referer to decide whether to add a navigation column to the page, but they have changed that.

The weather maps of Intellicast have been blocked by their server when no referer or cookie is provided. You can use the same countermeasure with a line such as >208.194.150.32 (or simply get your weather information elsewhere).

Some software vendors, including Intuit use USER_AGENT to decide which versions of their products to display to you. With the default you get Mac versions.

*  Does the Internet Junkbuster conceal my IP address?

Yes, assuming the proxy is running on a machine with a different IP address. Unless the forwardfile option is used, the remote server gets only the IP address of the proxy, not its client. If this address is too close for comfort you can use the forwardfile option to set up a chain of proxies, but this makes browsing slower of course. One public proxy that you can forward to is lpwa.com port 8000. Read about its privacy-enhancing features and the authentication procedures first, and note that it blocks referer in almost all cases, as well as some other headers.

*  Does the Internet Junkbuster thwart identification by identd?

We think so, provided you are not the user running the junkbuster. If your computer (or your ISP's) is running the identd demon, servers can ask it for the identity of the user making the request at time you request a page from them. But if you're going through a proxy, they will identify the user name associated with the proxy, not you. A visit to http://ident.junkbusters.com lets you see what's happening. This test is (quite rightly) blocked by many firewalls; just interrupt the transfer if you get an abnormal wait after clicking. Running other applications may also expose you via identd; the proxy of course doesn't help then.

*  Can web sites tell that I'm using the Internet Junkbuster?

With the default options the proxy doesn't announce itself. Obvious indications such as Keep-Alive headers are deleted, but sites might notice that you can cancel cookies faster than any human could possibly click on a mouse. (If you want to provide a plausible explanation for this, change the User Agent header to a cookie-free or cookie-crunching browser).

But when certain options are used they could figure out something's going on, even if they're not pushing cookies. If you use blocking they can tell from their logs that the graphics in their pages are not being requested selectively. The add-forwarded-header option explicitly announces to the server that a proxy is present, and sending them wafers is of course a dead giveaway.

--- Back to Top of Page ---


Security


*  What happens with Secure Documents (SSL, https:)?

If you enter a ``Secure Document Area,'' cookies and other header information such as User Agent and Referer are sent encrypted, so they cannot be filtered. We recommend getting your browser to alert you when this happens. (On Netscape: Options; Security; General; Show an alert before entering a secure document space.)

It may be possible to filter encrypted cookies by combining the blocking proxy with a cryptographic proxy along the lines of SafePassage, but we have not tried this.

*  Will using this as my Security Proxy compromise security?

We're not security experts, but we don't think so. The whole point of SSL is that the contents of messages are encrypted by the time they leave the browser and the server. Eavesdroppers (including proxies) can see where your messages are going whether you are running a proxy or not, but they only get to see the contents after they have been encrypted.

*  Can I restrict use of the proxy to a set of nominated IP addresses?

Yes, we added an access control file in Version 2.0. But before you use it please consider why you want to do it. If the reason is security, it probably means you need a firewall.

The listen-address option provides a way of binding the proxy to a single IP address/port. The right way to do this is to choose a port inside your firewall, and deny access to it to those outside the firewall. The Internet Junkbuster is not a firewall proxy; it should not be expected to solve security problems.

For background information on firewalls, see an FAQ or these well-known books: Firewalls and Internet Security: Repelling the Wily Hacker by William R. Cheswick and Steven M. Bellovin or Building Internet Firewalls by D. Brent Chapman Elizabeth D. Zwicky. There's free Linux software available, and a large number of commercial products and services. For an excellent security overview, primer, and compendium reference, see Practical Unix and Internet Security by Simson Garfinkel and Gene Spafford.

*  Are there any security risks for ISPs or others who offer the proxy?

Yes. As with any service offered over the Internet, hackers can try to misuse it. A well-run ISP will have professionals who are experienced at assessing and containing these risks.

It's possible to set up your machine so that other people can have access to your proxy, but if you lack expertise in computer security you probably shouldn't have your computer configured to offer this or any other service to the outside world.

Hackers can attempt to gain access to the machine by various attacks, which we have tried to guard against but don't guarantee to thwart. They can also use the ``anonymizing'' quality of proxies to try to cover their tracks while hacking other computers. For this reason we recommend preventing it being used as an anonymous telnet, by including the pattern :23 in the blockfile. If you wish to block all ports except the default HTTP port 80, you can put the lines
   :
   ~:80
at the beginning of the blockfile, but be aware that some servers run on non-default ports (e.g. 8080). You might also want to add the line ~:443 to allow SSL.

If you find any security holes in the code please tell us, along with any suggestions you may have for fixing it. However, we do not claim that we will be able to do so.

We distribute this code in the hope that people will find it useful, but we provide no warranty for it, and we are not responsible for anyone's use or misuse of it.

You may also want to check back periodically for updated versions of the code. We do not maintain a mailing list. To get quick updates, bookmark our Distribution Information page.

--- Back to Top of Page ---

Home · · Site Map · Privacy · Cookies · Web Ads · Telemarketing · Junk Mail · Junk E-mail

Copyright © 1996-7 Junkbusters Corporation. (TM) Copying and distribution permitted under the GNU General Public License: view document's source. 1997/09/17 http://www.junkbusters.com/ht/en/ijbfaq.html

webmaster@junkbusters.com