专栏首页人工智能机器学习CTF从入门到提升(十二)文件包含 plus篇
原创

CTF从入门到提升(十二)文件包含 plus篇

本次分享为:filter和input伪协议、日志文件、session的相关问题

​​ 具体场景——伪装协议

  • 利用php流

如果要实现文件包含漏洞,前提是非可执行文件,例如网站的源码都是可执行文件,拿php来说,大部分情况下都是.php文件,如果包含就没有意义了,因为直接包含相当于把代码拿来做执行,不可执行代码包进来没有任何反应,所以把文件变成不可执行代码就可以了。

举栗子

执行过程中会发现时间变慢了,接下来它的页面会不停的输出asdf,这样会消耗它的内存,结束之后它的内容就会输出来。

图3

拿到这个页面index.php其实是没有用的,要考虑存在包含,如果能够读源码可能会有一定的作用。   

输出一串base64编码,这时候我们已经读到base64文件,给他做个解码,最后就有一串字符串,就是flag的内容。

  • Php://input

类似于传递文件的作用。

打开空白页面,什么都没有,去看看他的源代码,还是什么都没有,那就去考虑扫后台。扫完之后会发现存在着这么个文件,可以看到一个源代码,我直接把它复制出来,再把它退回去。

我们需要理解这段代码的逻辑,

先去定义变量flag,有值非空,接下来的函数需要注意一下,从数据中变量导到当前符号表,通过这个函数会变成一些变量,相当于把传进去的值变成变量。

具体场景——日志文件

具体场景——系统环境

具体场景——session 

cookie是放在我们自己这边,session是放在服务器端,session中包含你的一些信息比如用户名密码账号,用户名是非常高的一个关联性。

会发现路径下存在字开头是sess的文件,我们再来看sess里面的文件和它没有关联性。

定义的信息中要首先有内容可以影响到session才能做包含。其次要知道session的路径,默认情况下会存在一个在目录下,可以通过读到的内容来获取路径,或者自己设置也可以。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • CTF从入门到提升(十四)session phpinfo包含及例题详解

    如果把php删掉,会发现登录入口不存在,初步推断php是后缀名会自动拼接到URL后面。

    牛油果
  • CTFweb类型(十九)15位、7位可控字符下的任意命令执行

    ​​某些特殊情况下命令执行的Getshell中对应某个函数的内容可控,可控字符长度分为长可控和短可控。我们先来看15个字符可控。

    牛油果
  • CTF从入门到提升(十六)代码执行相关函数及例题分享

    比如说能够对一个php的站点,控制php代码,那么我们就把它划分为代码执行,如果能执行网站所在服务器中的命令,我们这就把它划分为命令执行,因为它执行的是系统命令...

    牛油果
  • 关于VS2012加载项目失败解决办法

    帘卷西风
  • 阿拉伯数字转中文大写,金额转中文大写

    金额转换是因为自己需要从网上找的demo,这两个功能按需求改的,所以代码大致相同,就粘贴一份​代码:

    Python疯子
  • 拥抱大数据

    马云:大家还没搞清PC时代的时候,移动互联网来了,还没搞清移动互联网的时候,大数据时代来了。

    源哥
  • 新浪微博动态 RSA 分析图文+登录

    二、抓包 还是遵从我们上一次的抓包流程,养成良好的习惯,这里就不多做说明。

    阿珏
  • 吴恩达的 CS229的数学基础(概率论),有人把它做成了在线翻译版本!

    概率论是对不确定性的研究。通过这门课,我们将依靠概率论中的概念来推导机器学习算法。这篇笔记试图涵盖适用于CS229的概率论基础。概率论的数学理论非常复杂,并且涉...

    统计学家
  • UML建模图实战笔记(全)

    UML:Unified Modeling Language(统一建模语言),使用UML进行建模的作用有哪些那:

    加多
  • TensorFlow 安装GPU版本

    TensorFlow 有两个版本:CPU 版本和 GPU 版本。GPU 版本需要 CUDA 和 cuDNN 的支持,CPU 版本不需要。如果你要安装 GPU 版...

    Centy Zhao

扫码关注云+社区

领取腾讯云代金券