Every single VirusShare MD5 hash in a single file, ready for distribution and CI integrations.
ROS Quick Scan is an online tool that leverages the ROS Quick Scan API to check files.
Download from this URL:
https://media.githubusercontent.com/media/Richienb/virusshare-hashes/master/virushashes.txt
curl -L -o virushashes.txt https://media.githubusercontent.com/media/Richienb/virusshare-hashes/master/virushashes.txt
wget https://media.githubusercontent.com/media/Richienb/virusshare-hashes/master/virushashes.txt
Other methods of download are supported
You can download the gzipped version of the hashlist to conserve internet usage from this URL:
https://media.githubusercontent.com/media/Richienb/virusshare-hashes/master/virushashes.txt.gz
curl -L -o virushashes.txt.gz https://media.githubusercontent.com/media/Richienb/virusshare-hashes/master/virushashes.txt.gz && gunzip virushashes.txt.gz
You can use the ROS Quick Scan API to check if a MD5 hash matches one in the list
Endpoint: https://script.google.com/macros/s/AKfycbyS0v38UlKkLe18CwwxLjxKpQ1CQIUiBZGXvA519W2Pf_nqKmM/exec
Type: GET
Parameters:
q
: The MD5 hash to check.
callback
: An optional JSONP callback.
Example output:
{"safe": true, "success": true}
Example failed output:
{"success": false, "type": 400, "message": "The q parameter is too short. An MD5 hash is exactly 32 characters long."}
The hashes are updated weekly but you can manually build the hashes yourself as well.
Download the generation file from https://raw.githubusercontent.com/Richienb/virusshare-hashes/master/generate.py
.
Generate the hashes by running python generate.py
Wait a while
You will know that the operation has succeeded when you receive this message in the command line: Hashes file creation complete.
.travis.yml
file, replacing the marked areas with your own information.language: generic
before_install:
- git remote set-url origin https://Richienb:${github_token}@github.com/<REPO_OWNER_USERNAME>/<REPO_NAME>.git
- git config --global user.name "<NAME OF COMMITER (SOMETHING LIKE: 'Commit Bot')>"
- git config --global user.email "<COMMITTER EMAIL ADDRESS (THIS COULD BE YOURS)>"
- echo -e "machine github.com\n login $github_token" > ~/.netrc
- git lfs pull
before_script:
- rm -f virushashes.txt
script:
- curl -L -o virushashes.txt https://media.githubusercontent.com/media/Richienb/virusshare-hashes/master/virushashes.txt
after_script:
- git add virushashes.txt
- git commit -m "CI | Updated the hashes library for legacy support [skip ci]"
- git push
notifications: email: false
Create a GitHub personal access token and choose the public_repo
scope for public repositories or repo
for private repositories.
Set the github_token
environmental variable in Travis CI to that token.
Schedule a cron job with a daily interval, with the option of only running it if one hasn’t in the past 24 hours selected.
Ensure Git LFS is working properly. If not, run the following command in the repository directory: git lfs track "virushashes.txt"