A simple program to notify you whenever the Akamai 2.0 script updates on a website via a discord webhook.
-
Notifications via Discord Webhook Integration:
-
Saves the Akamai 2.0 script to the file system.
- Scripts are saved to the
\assets\downloaded_akamai_scripts\${HOSTNAME}
folder. - If this directory doesn't already exist, it will be created for you.
- Filename format:
${hostname}_${topIdentifierName}_${scriptHash}.js
Where${hostname}
is the domain name of the target site,${topIdentifierName}
is the variable name of the empty object declared at the top of the script, and${scriptHash}
is the MD5 hash of the script.
- Scripts are saved to the
-
Uniqueness check:
- This program will iterate through the
downloaded_akamai_scripts/${HOSTNAME}
to determine if the script has been seen before. - After each request, the number of unique scripts for the current session will be logged to the console.
- Ex:
Script change found on accounts.zalando.com Hash: 974d7b082b1edeaff7bed512e29e46c6 2 out of 2 scripts scraped this session were unique.
- This is useful to know if Akamai ever reuses an old script.
- This program will iterate through the
Clone the repository, and install the dependencies with:
npm install
Open /config/config.json/
to modify the monitor config.
Delay is an integer value representing the number of milliseconds to wait between each check. If one isn't supplied, the program will use a default value of 5000ms.
"delay": 5000,
You MUST configure the webhook settings to use this program.
You can extract the webhook id and token from a webhook URL: https://discord.com/api/webhooks/${WEBHOOK_ID}/${WEBHOOK_TOKEN}
.
"webhook":{
"id":"${WEBHOOK_ID}",
"token":"${WEBHOOK_TOKEN}"
},
You MUST configure the site settings to use this program.
sites
is a JSON Array containing the target sites. To add another target site, simply construct a new JSON object matching the specified format and add it to the sites
array.
"sites":[
{
"url":"https://${HOSTNAME1}"
},
{
"url":"https://${HOSTNAME2}"
},
{
"url":"https://${HOSTNAME3}"
}
]
After configuring the file, start the monitor by running:
node index.js
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.