initial commit
This commit is contained in:
commit
109bb924dd
135 files changed
+2538
No files matched your search
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
# dl-links.sh — télécharge les fichiers de challenges référencés par lien externe
|
||||
# dans les README générés par ctf-dl.
|
||||
#
|
||||
# Usage : ./dl-links.sh <dossier_ctf> <regex_domaines>
|
||||
# Ex. : ./dl-links.sh mon-ctf 'digitaloceanspaces\.com|tinyurl\.com'
|
||||
|
||||
if [[ $# -ne 2 ]]; then
|
||||
echo "Usage : $0 <dossier_ctf> <regex_domaines>" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ROOT="$1"
|
||||
FILTER="$2"
|
||||
|
||||
find "$ROOT" -name README.md -print0 | while IFS= read -r -d '' readme; do
|
||||
dir=$(dirname "$readme")
|
||||
|
||||
grep -oE 'https?://[^ )>"`]+' "$readme" | grep -E "$FILTER" | sort -u |
|
||||
while read -r url; do
|
||||
echo "[+] $dir <- $url"
|
||||
|
||||
# Résout les liens raccourcis pour que le case voie la vraie destination
|
||||
if [[ "$url" == *tinyurl.com* ]]; then
|
||||
url=$(curl -sIL -o /dev/null -w '%{url_effective}' "$url")
|
||||
echo " -> résolu en $url"
|
||||
fi
|
||||
|
||||
case "$url" in
|
||||
*drive.google.com*|*docs.google.com*)
|
||||
(cd "$dir" && gdown --fuzzy "$url") ;;
|
||||
*mega.nz*)
|
||||
megadl --path "$dir" "$url" ;;
|
||||
*dropbox.com*)
|
||||
wget -q -nc --content-disposition -P "$dir" "${url/dl=0/dl=1}" ;;
|
||||
*)
|
||||
wget -q -nc --content-disposition -P "$dir" "$url" ;;
|
||||
esac
|
||||
|
||||
sleep 1
|
||||
done
|
||||
done
|
||||
|
||||
echo
|
||||
echo "[*] Fichiers HTML suspects (téléchargement probablement raté) :"
|
||||
find "$ROOT" -type f ! -name README.md -exec file {} + | grep -i html || echo " aucun"
|
||||
Reference in new issue
Block a user