From f443827a5e8de4850821a09d5508e6967d16a2e1 Mon Sep 17 00:00:00 2001 From: Mitchell Krog Date: Tue, 25 Jun 2019 14:31:59 +0200 Subject: [PATCH] TEST whitelisting of bad bots and referrers REF: #270 --- .dev-tools/test-blocker-whitelist.sh | 51 ++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/.dev-tools/test-blocker-whitelist.sh b/.dev-tools/test-blocker-whitelist.sh index 67ad69537..2c586c831 100755 --- a/.dev-tools/test-blocker-whitelist.sh +++ b/.dev-tools/test-blocker-whitelist.sh @@ -170,6 +170,57 @@ fi } run_curltest2 +# ************************************************ +# Test 250 User-Agents from Bad-User-Agents +# ************************************************ +shuf -n 250 ${TRAVIS_BUILD_DIR}/_generator_lists/bad-user-agents.list > ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-bots-for-whitelist-test.tmp +sed 's/\\//g' ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-bots-for-whitelist-test.tmp > ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-bots-for-whitelist-test.list +sudo rm ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-bots-for-whitelist-test.tmp +sort -u ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-bots-for-whitelist-test.list -o ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-bots-for-whitelist-test.list + +printf "\n\n" +echo "${bold}${magenta}---------------------------" +echo "${bold}${magenta}Testing 250 Random Bad Bots" +echo "${bold}${magenta}---------------------------" +printf "\n\n" +IFS=$'\n' +file=${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-bots-for-whitelist-test.list +lines=$(cat ${file}) +for line in ${lines}; do + if + curl -v -A "${line}" http://localhost:9000 2>&1 | grep -i 'Welcome'; then + echo "${bold}${green}PASSED - ${red}${line} was ${bold}${green}ALLOWED" + else + echo "${bold}${red}FAILED - ${red}${line} was ${bold}${red}NOT ALLOWED" + fi +done +IFS="" + +# ************************************************ +# Test 250 Referrers from Bad-Referrers +# ************************************************ +shuf -n 250 ${TRAVIS_BUILD_DIR}/_generator_lists/bad-referrers.list > ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-referrers-for-whitelist-test.tmp +sed 's/\\//g' ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-referrers-for-whitelist-test.tmp > ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-referrers-for-whitelist-test.list +sudo rm ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-referrers-for-whitelist-test.tmp +sort -u ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-referrers-for-whitelist-test.list -o ${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-referrers-for-whitelist-test.list + +printf "\n\n" +echo "${bold}${magenta}----------------------------" +echo "${bold}${magenta}Testing 250 Random Referrers" +echo "${bold}${magenta}----------------------------" +printf "\n\n" +IFS=$'\n' +file=${TRAVIS_BUILD_DIR}/.dev-tools/test_units/random-referrers-for-whitelist-test.list +lines=$(cat ${file}) +for line in ${lines}; do + if + curl http://localhost:9000 -e "http://${line}" 2>&1 | grep -i 'Welcome'; then + echo "${bold}${green}PASSED - ${red}${line} was ${bold}${green}ALLOWED" + else + echo "${bold}${red}FAILED - ${red}${line} was ${bold}${red}NOT ALLOWED" + fi +done +IFS="" printf "\n" echo "${bold}${green}--------------------------"