本头条号所分享文章仅供学习交流,请勿非法使用!
近期遇到一些关于提权的问题,和大家分享一下~
创建环境
![b270396bc3158f0d3ffbeee92de18348.png](https://i-blog.csdnimg.cn/blog_migrate/bc03339d280436f4c68cc19a71986541.jpeg)
介绍
docker中有一个COPY命令;
COPY 在 PostgreSQL表和标准文件系统文件之间交换数据,该参数指示 PostgreSQL 服务器直接从文件中读写数据 COPY TO 把一个表的所有内容都拷贝到一个文件 COPY FROM 从一个文件里拷贝数据到一个表里(把数据附加到表中已经存在的内容里)。
postgresql文件读取
![37c7d3b93e9ccab14c54c494b0e5c806.png](https://i-blog.csdnimg.cn/blog_migrate/ebd055ccb0805ef39b9a509d7b543911.jpeg)
![2ab0665628909f20c6c65bc632ba263d.png](https://i-blog.csdnimg.cn/blog_migrate/0b08cb6bcad45f04f754143e6c7152dc.jpeg)
postgresql文件写入
![46bffe89d6ed8659955ff69e0e49f38f.png](https://i-blog.csdnimg.cn/blog_migrate/9c3eb0457f244698e64e3a8f3a624cbf.jpeg)
![59448ee310997437986413917d7e83da.png](https://i-blog.csdnimg.cn/blog_migrate/2cccd47c3913af11891bf0b20bcfb0b2.jpeg)
![cc240841a357efeda68a5c229df5bfcd.png](https://i-blog.csdnimg.cn/blog_migrate/77c7bf6c2075e56ab3f4f010fb0a98ae.jpeg)
命令执行
postgresql默认是可以执行C语言的。python和perl需要手动配置,那么可以利用udf实现命令执行,sqlmap的作者提供了mysql和postgresql的udf源码,地址在 https://github.com/sqlmapproject/udfhack
查看版本号;
![44317008b57d18ca16730db279cb454e.png](https://i-blog.csdnimg.cn/blog_migrate/8242fec2e4ec4d744e6b0c8e38ce85ad.jpeg)
![e801bea506c41b629ad568ee5e874cb4.png](https://i-blog.csdnimg.cn/blog_migrate/8aed016c1024bd52b5e7e1fe3b77ac73.jpeg)
不同版本的postgresql需要对应不同的版本udf,我的版本是9.6,所以需要重新编译udf。
![e83966f82522a0daa848c728b728d27b.png](https://i-blog.csdnimg.cn/blog_migrate/e70439d4ebed6c52d8bd0835c82f415c.jpeg)
编译UDF;
![714c464634c68f9304d0ad11afc95ae2.png](https://i-blog.csdnimg.cn/blog_migrate/cd195476284ea71aa4d8edabf309f8b9.jpeg)
![e96d90372b4744902852bcd8fa639e24.png](https://i-blog.csdnimg.cn/blog_migrate/a77500a40eb79272baeb5e09f5bf7b36.jpeg)
接下来我们需要将udf.so文件分割成每2048字节的块,最后一个块的大小不满足2048字节不需要考虑. python脚本;
![fe70012d7b45647a0e0ab57ae340ae84.png](https://i-blog.csdnimg.cn/blog_migrate/6c8500ec063ce9e4c98249acdd5d380c.jpeg)
解析;
![6bc30b8f1d40cb9e6bfaaa5d4631f7e5.png](https://i-blog.csdnimg.cn/blog_migrate/e1ebf7651763487e4260a9f99c25bcb0.jpeg)
9.6的payload
![3b1f02cb7ca3136cc29df96ff69c20f4.png](https://i-blog.csdnimg.cn/blog_migrate/0d630f2bbe4863b3b839192ece01c18e.jpeg)
![934773fb0be78d675657b547f26432d6.png](https://i-blog.csdnimg.cn/blog_migrate/5b604c857deb55809d2cab84139f9488.jpeg)
9.5的payload
![3c3b21f6d43c51f63a9d2645daeda7ee.png](https://i-blog.csdnimg.cn/blog_migrate/d274570caa2b3cdaf623848acbd4d9b8.jpeg)
get到了吗?记得添加我们的订阅号secdeer或在下方的留言区留言交流,帮助更多对网络安全领域感兴趣但无处下手的小伙伴们哦,快动一动小手,让更多小伙伴了解我们吧。
![6ad7db66f7bac5f77defb67686f4d0e7.png](https://i-blog.csdnimg.cn/blog_migrate/ab8bae6fb8f1a55b4f9328f215ae3b6b.jpeg)