* reworked manual crypto extractor for YT
parent
85bb796e05
commit
32cf3c6401
|
@ -1,24 +1,26 @@
|
|||
#!/bin/bash
|
||||
data="$(curl -s "https://www.youtube.com/s/player/$1/player_ias.vflset/en_GB/base.js")"
|
||||
func="$(echo "$data" | grep -P '[a-z]\=a\.split.*a\.join')"
|
||||
echo $func
|
||||
func="$(grep -P '[a-z]\=a\.split.*a\.join' <<< "$data")"
|
||||
echo "full extracted function: $func"
|
||||
|
||||
obfuscatedName="$(echo $func | grep -Poh '\(""\);[A-Za-z]+' | sed -s 's/("");//')"
|
||||
obfuscatedName="$(grep -Poh '\(""\);[A-Za-z]+' <<< "$func" | sed -s 's/("");//')"
|
||||
|
||||
obfuscatedFunc=$(echo "$data" | tr -d '\n' | grep -Poh "$obfuscatedName\=.*?}}")
|
||||
mess="$(echo "$obfuscatedFunc" | grep -Poh "..:function\([a-z]+,[a-z]+\){var" | grep -Poh "^..")"
|
||||
rev="$(echo "$obfuscatedFunc" | grep -Poh "..:function\([a-z]+\){[a-z]+.rev" | grep -Poh "^..")"
|
||||
splice="$(echo "$obfuscatedFunc" | grep -Poh "..:function\([a-z]+\,[a-z]+\){[a-z]+\." | grep -Poh "^..")"
|
||||
obfuscatedFunc=$(tr -d '\n' <<< "$data" | grep -Poh "$obfuscatedName\=.*?}}")
|
||||
mess="$(grep -Poh "..:function\([a-z]+,[a-z]+\){var" <<< "$obfuscatedFunc" | grep -Poh "^..")"
|
||||
rev="$(grep -Poh "..:function\([a-z]+\){[a-z]+.rev" <<< "$obfuscatedFunc" | grep -Poh "^..")"
|
||||
splice="$(grep -Poh "..:function\([a-z]+\,[a-z]+\){[a-z]+\." <<< "$obfuscatedFunc" | grep -Poh "^..")"
|
||||
|
||||
echo "mess name: $mess"
|
||||
echo "reverse name: $rev"
|
||||
echo "splice name: $splice"
|
||||
|
||||
code="$(echo "$func" | sed -E 's/.*[a-z]+\.split\(""\);//;s/return.*//')"
|
||||
code="$(sed -E 's/.*[a-z]+\.split\(""\);//;s/return.*//' <<< "$func")"
|
||||
|
||||
echo "---"
|
||||
|
||||
IFS=';'
|
||||
for i in $code; do
|
||||
num="$(echo "$i" | grep -Poh ',[0-9]+' | grep -Poh '[0-9]+')"
|
||||
num="$(grep -Poh ',[0-9]+' <<< "$i" | grep -Poh '[0-9]+')"
|
||||
if [[ "$i" == *"$splice"* ]]; then
|
||||
echo "a = a[$num:]"
|
||||
elif [[ "$i" == *"$rev"* ]]; then
|
||||
|
@ -30,9 +32,9 @@ for i in $code; do
|
|||
fi
|
||||
done
|
||||
|
||||
echo --- and now, JS
|
||||
echo "--- and now, JS"
|
||||
for i in $code; do
|
||||
num="$(echo "$i" | grep -Poh ',[0-9]+' | grep -Poh '[0-9]+')"
|
||||
num="$(grep -Poh ',[0-9]+' <<< "$i" | grep -Poh '[0-9]+')"
|
||||
if [[ "$i" == *"$splice"* ]]; then
|
||||
echo "a.splice(0,$num)"
|
||||
elif [[ "$i" == *"$rev"* ]]; then
|
||||
|
@ -42,4 +44,4 @@ for i in $code; do
|
|||
else
|
||||
echo "UNKNOWN????"
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
|
Loading…
Reference in New Issue