|Upload is a cgi-bin program that can be used to upload one or more files to a WWW server, using standard HTML forms. It uses the http protocol, so there is no need for an FTP server. The program works with Netscape 3.0 or higher, Internet Explorer 4.0 or higher, and any other browser that supports RFC 1867.
|Many people want to use this program to build a section on their website where visitors can upload images (or other stuff) that immediately become “visible” on their website. The following form of abuse then becomes possible. A hacker packs some illegal software into a zip file, renames it into gif or jpg, uploads it to your server, and then places the URL of the “image” on a bulletin board. People start downloading it like there’s no tomorrow, and you have to pay the bill for extra traffic. You should only use this Upload program for closed area’s on your website, not public area’s!|
Download and Install
| The Upload program is written in standard ANSI-C. To use the program you must have cgi-bin capability on your server. If you cannot run standard cgi-bin binaries on your webserver then you cannot use the Upload program. If the webserver is running Unix then you will need access to a C compiler.
| Upload is used by adding a form to your html page. Here is an example which you can cut and paste:
The “action” of this form points to the Upload program in your cgi-bin directory. The program will receive the form and store the file (or files) on disk. You can specify more than one “<input type=file name=Whatever>” fields in the form, to upload more than one file with one form. The “Whatever” field can be anything you like.
You can specify some extra hidden fields containing parameters:
| The Upload program has a configuration file called “upload.cfg”. It must be stored in the same directory as the program itself (the cgi-bin directory) or in one of the directories in the path. The configuration file looks like this:
This example contains two configurations: the default and a configuration called “Jeroen”. The default configuration defines all settings possible. The “Jeroen” configuration changes a few of the default settings.The following settings are possible in the configuration file: