php 5.2.17p1 disable_function bypass 求指点

来源:互联网 发布:淘宝定制商品规则买家 编辑:程序博客网 时间:2024/05/29 02:37

也许这点乌云币少了点,可是再多我就掉到路人了。期望有人来指点一下。

小菜碰到了一个硬茬,摸索了好长时间,终究不得破解,心中很是抑郁。。。我倒是也没什么目的,可是问题不解决就心里不舒畅。

目标情况:
无标题.png

是linux的系统,我的目的就是想能执行命令,获得command line shell ,能不能获取root是其次,就是气不过试过好多方法都不能绕过去执行命令。


php.ini 试过没有用,想用.htaccess设置来运行cgi,一设置就500内部错误。

mysql只有一个低权限usage的账号,试过load local data,能读到/etc/passwd,但是不能读到/var/lib/mysql/mysql/user.MYD 显示错误13,查了是没有权限。

用到一个国外的shell发现mb_send_mail()函数可以使用-C.file及-X.log能读取/etc/passwd,想读/var/lib/mysql/mysql/user.MYD 显示permisson deny......

读取过resion.conf没什么卵用。

namp 扫描被过滤了。。。

想破脑壳,确实找不到有效的方法能再往前走一步了。。。

其实觉得还是要从php这里入手,希望有对php熟悉的前辈来指点一下,感激不尽。。。那个mail函数结合bash破壳漏洞的方法试过了,不行。不知道还有没有其他函数能绕过去。

如不方便直接在这里解答,私信小菜把目标地址给您实验吧。。。

google了好久都是过期失效的信息,快被这问题搞疯了。。。

感谢(0)
分享到:0
22 个回复
  1. 1# 好基友一辈子 |2016-03-28 11:16

    关于执行命令我整理的一些文章。hope to help you 链接:http://pan.baidu.com/s/1kVo1Tyf 密码:1tgz

  2. 2# 风情万种 (很有味道...) |2016-03-28 11:21

    root密码试试弱口令啊

  3. 3# 剑芯 |2016-03-28 11:37

    load data localfile和sendmail都是php进程的权限,你能读到才怪了

  4. 4# 剑芯 |2016-03-28 11:38

    小概率事件
    expect://

  5. 5# 剑芯 |2016-03-28 11:39

    php没法给send_mail传环境变量,那就不可能成功。

  6. 6# phith0n (我也不会难过 你不要小看我) |2016-03-28 11:42

    我总结一下,常规的(web狗的)绕过方法有:
    0.先看常规函数是否禁用
    1.dl函数是禁用,可以利用动态加载扩展的方式执行命令
    2.pcntl_exec是否安装,是否禁用
    3.系统是否存在破壳漏洞,可以利用mail函数执行命令
    4.windows系统可利用COM组件执行命令

    除此之外,其实php5.2的漏洞太多了,随便找个UAF就秒了,就看你会不会二进制了。
    案例比如这个: http://drops.wooyun.org/web/9845 其中的 『0x05 500 Use-After-FLEE (1 隊解)(只有 PPP 解出)』
    还有个办法,修改库的方法:  http://drops.wooyun.org/tips/13791 其中的0x04 还是需要你会调。
    还有个办法,长亭提出来过的: https://blog.chaitin.com/abusing_fts3_tokenizer/ 还是需要你会调。

    另外,很多功能Php就能实现,为何非要执行命令呢?以目标来定方法,而不是用方法来定目标。

  7. 7# lxj616 (简介) |2016-03-28 11:46

    楼上大V

  8. 8# 长街 (你是千堆雪我是长街,怕日出一到彼此瓦解) |2016-03-28 11:51

    楼楼上大V 楼上大V

  9. 9# YiYang |2016-03-28 12:52

    @好基友一辈子 能再分享一下吗,中午去吃饭回来就没了。。。

  10. 10# YiYang |2016-03-28 12:53

    @剑芯 能不能给个传环境变量的例子。。

  11. 11# 闪电小子 |2016-03-28 13:41

    http://drops.wooyun.org/tips/13791

    利用 https://raw.githubusercontent.com/beched/php_disable_functions_bypass/master/procfs_bypass.php这个的思路来bypass disable_functions,不过这个脚本不能直接用,因为/lib没在open_basedir里面,帮pwner把libc跟elf从/proc/self/mem里抠了出来,本来想让他直接去算偏移硬编码进去, 他研究了一下之后说可以直接写代码段,不用改GOT表那么麻烦。

  12. 12# YiYang |2016-03-28 13:58

    @闪电小子 我遇到的这个,open_basedir就只两个目录,除了他自己的/www/users/xxx.com/ 再就是/tmp, /proc/不在里面所以用不了

  13. 13# 好基友一辈子 |2016-03-28 14:00

    @YiYang 链接:http://pan.baidu.com/s/1hsvt9xa 密码:zqzz  就几篇公开的文章。网上逗能搜到

  14. 14# YiYang |2016-03-28 14:08

    @phith0n 常规函数已禁用了,open_basedir除了站点目录就是/tmp,你后面总结的那些,我看了,短时间内想达到修改调试的能力,目前对于我难度太大了,我会继续努力了解,但估计够呛。谢谢P牛指点。

  15. 15# YiYang |2016-03-28 14:15

    @好基友一辈子 都看过了。。谢谢分享

  16. 16# YiYang |2016-03-28 14:18

    @phith0n 另外请教一下,我在https://www.91ri.org/8700.html这篇文章中的0x03黑名单绕过中提到,作者“曾经在给某大企业做渗透测试时,未禁用assert 成功执行命令”,我在上找过没找到类似的例子,而我遇到的这个正好没有禁用assert()函数,你觉得能用这个函数来突破系统命令执行吗?

  17. 17# phith0n (我也不会难过 你不要小看我) |2016-03-28 14:29

    @YiYang 不能。他说的应该是执行代码,非命令。现在好多人,代码执行和命令执行,傻傻分不清

  18. 18# saber (终极屌丝之路~) |2016-03-28 14:30

    @YiYang assert函数可以执行代码啊,楼主试试呗。

  19. 19# YiYang |2016-03-28 14:38

    @saber 额 我是想执行命令。。

  20. 20# saber (终极屌丝之路~) |2016-03-28 16:11

    @YiYang 刚才仔细查了下,好像assert想执命令,得靠封装其他没被禁用的函数,直接执行系统命令似乎是不行。刚才没看清,实在不好意思!

  21. 21# YiYang |2016-03-28 17:11

    @saber 能回帖就是鼓励啊 讨论的人多 才可能有新思路

  22. 22# 风情万种 (很有味道...) |2016-03-28 17:17

    试一下 http://zone.wooyun.org/content/11268  open_basedir bypass

0 0
原创粉丝点击