RCE with PostgreSQL Languages
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
База даних PostgreSQL, до якої ви отримали доступ, може мати різні встановлені мови сценаріїв, які ви могли б використати для виконання довільного коду.
Ви можете запустити їх:
Більшість мов сценаріїв, які ви можете встановити в PostgreSQL, мають 2 варіанти: достовірний та недостовірний. Недостовірний буде мати назву, що закінчується на "u" і буде версією, яка дозволить вам виконувати код та використовувати інші цікаві функції. Це мови, які, якщо встановлені, є цікавими:
plpythonu
plpython3u
plperlu
pljavaU
plrubyu
... (будь-яка інша мова програмування, що використовує ненадійну версію)
Якщо ви виявите, що цікава мова встановлена, але недостовірна для PostgreSQL (lanpltrusted
є false
), ви можете спробувати достовірити її за допомогою наступного рядка, щоб жодні обмеження не застосовувалися з боку PostgreSQL:
Якщо ви не бачите мову, ви можете спробувати завантажити її з (вам потрібно бути суперадміністратором):
Зверніть увагу, що можливо скомпілювати безпечні версії як "незахищені". Перегляньте це для прикладу. Тому завжди варто спробувати, чи можете ви виконати код, навіть якщо ви знайшли лише встановлену достовірну версію.
Перевірте наступну сторінку:
PL/pgSQL Password BruteforceПеревірте наступну сторінку:
RCE with PostgreSQL ExtensionsВивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)