Files
ddns/ud_list.sh
2020-05-04 10:13:30 +02:00

41 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
#UD_USERNAME=''
#UD_PASSWORD=''
#setup stuff
COOKIEFILE="/tmp/cookies.txt"
CURL="/usr/bin/curl -s -S -b $COOKIEFILE -c $COOKIEFILE"
#load website
WEBSITE=$($CURL 'https://www.united-domains.de/')
#get csrf tokens
CSRF_WEBSITE=$(/bin/echo $WEBSITE | /bin/grep -oP -m 1 "(?<=<meta name=\"csrf\" content=\")[^\"]*(?=\"( /)?>)")
CSRF_LOGIN=$(/bin/echo $WEBSITE | /bin/grep -A 1 "login-form-1" | /bin/grep -oP -m 1 "(?<=<input type=\"hidden\" name=\"csrf\" value=\")[^\"]*(?=\"( /)?>)")
#get sessionid from cookie
SESSIONID=$(/usr/bin/tail -n 1 $COOKIEFILE | /usr/bin/awk '{print $7}')
#accept the cookie usage popup on united-domains.de
ACCEPT_COOKIES=$($CURL "https://www.united-domains.de/cookie-settings?SESSID=$SESSIONID" -X PATCH -H "HTTP-X-CSRF-TOKEN: $CSRF_WEBSITE" -H 'Content-Type: application/json' -d '{"ids":[13]}')
#set language
LANGUAGE=$($CURL "https://www.united-domains.de/set-user-language?SESSID=$SESSIONID" -H "HTTP-X-CSRF-TOKEN: $CSRF_WEBSITE" -H "X-Csrf-Token: $CSRF_WEBSITE" -d 'language=de')
#generate login data string
LOGIN_DATA="csrf=$CSRF_LOGIN&selector=login&email=$UD_USERNAME&pwd=$UD_PASSWORD&submit=Login"
#send login
WEBSITE_LOGIN=$($CURL 'https://www.united-domains.de/login' -d "$LOGIN_DATA")
#check if successful by requesting domain list
DOMAIN_LIST=$($CURL 'https://www.united-domains.de/pfapi/dns/domain-list')
if [ "$DOMAIN_LIST" = "" ] ; then
echo "Login not successful"
exit 1
fi
echo $DOMAIN_LIST