This is an old revision of the document!
Table of Contents
Referrer Spoofing
When a browser or bot requests a webpage, it sends a “Referer” HTTP header containing a URL of the page that they were previously at, if they followed a link there. It is based on a canonized misspelling of the word “referrer”.
So, if you are on website1.com, and you follow a link from there to website2.com, the administrators of website2.com will be able to see you came there from website1.com based on the string that was passed in the Referer header.
To prevent this from happening, you can just configure your browser to send a different Referer, or even no Referer at all!
Why It's Important
This section needs expansion. You can help by adding to it.
Application-Specific Instructions
Since Referer strings are set on the application level, how to spoof it depends on the type of software you are using. If you have multiple programs, you will have to spoof them all individually:
Web Browsers
While by no means an exhaustive list, the following browser extensions have referer spoofing and/or cloaking capabilities.
IMPORTANT NOTE: These extensions have not been fully vetted by the Anonymous Military Institute and should be run with caution. Please inform the Dean if you find any of these to present major security risks!
Firefox
Brave & Chrome
Edge
This section needs expansion. You can help by adding to it.
Safari
This section needs expansion. You can help by adding to it.
Terminal Utilities
cURL
Use the -e or --referer flag to directly set the Referer:
$ curl --referer "http://comes-from.example.com" https://www.example.com - or - $ curl -e "http://comes-from.example.com" https://www.example.com
Since the Referer is passed as an HTTP header, you can also change the Referer header by using the -H or --header flag, which lets you manipulate headers:
$ curl --header "Referer: http://comes-from.example.com" https://example.com - or - $ curl -H "Referer: http://comes-from.example.com" https://example.com
Since cURL does not set a Referer by default, there is no reason to make it pass a blank string, as the string is empty already.
Wget
To set a custom Referer header with Wget, use the --referer flag:
$ wget --referer="http://comes-from.example.com" https://example.com
Since Wget does not set a Referer by default, there is no reason to make it pass a blank string, as the string is empty already.
For more information on how to use wget, read the Wget article.
Find this page online at: https://bestpoint.institute/diy/referrer-spoofing