ctf.show WEB模块第4关是一个文件包含漏洞,页面提示了源码中的关键代码,使用include()函数接收url参数,include()函数包含的文件会被执行,从而造成任意代码执行,或者配合伪协议获取敏感文件甚至getshell;

然而这一关伪协议不起作用,我们可以通过日志注入进行任意命令执行,从而getshell

页面最明显的位置展示了源码的核心,提示我们利用文件包含漏洞

包含日志文件,查看日志文件的信息,可以看到日志文件中保存了网站的访问记录,包括HTTP请求行,Referer,User-Agent等HTTP请求的信息

?url=/var/log/nginx/access.log

使用代理工具(Burp Suite)抓包,在User-Agent中插入一句话木马

<?php eval($_POST['-7'])?>

很明显,日志文件的内容多了一条访问记录,但没有我们插入的一句话木马,这很正常,因为日志文件中的代码会被执行,而不会显示

我们使用蚁剑链接日志文件的路径,getshell

使用蚁剑的文件管理功能,www目录下有一个flag.txt文件,很明显flag就在这里面

复制文件内容到输入框中提交flag,即可过关

ctfshow{e2d53849-48b3-48d4-87cf-ab48601708f3}

ctfshow-WEB-web4相关推荐

  1. CTFShow web入门题刷题记录

    CTFShow web入门题刷题记录(信息搜集) web1 提示:开发注释未及时删除 打开网页查看源代码发现 flag:flag{2b2cf8e3-f880-41e1-a8ff-02601b3d998 ...

  2. ctfshow web入门-sql注入

    ctfshow web入门-sql注入 web171 web172 web173 web174 web175 web176 web177 web178 web179 web180 web181 web ...

  3. [ctfshow]web入门——文件上传(web156-web163)

    [ctfshow]web入门--文件上传(web156-web163) [ctfshow]web入门--文件上传 [ctfshow]web入门--文件上传(web156-web163) web156 ...

  4. 无字母数字rce(ctfshow web入门56)

    无字母数字rce(ctfshow web入门56) 我们根据这一题直接进入主题 //web56 <?php // 你们在炫技吗? if(isset($_GET['c'])){$c=$_GET[' ...

  5. [ctfshow web入门]常用姿势801-806

    1NDEX 0x00 前言 801 flask pin码计算 谨记!!python 3.8和3.6 pin码生成方式不同 werkzeug版本不同machine-id获取不同 python3.8 pi ...

  6. ctfshow web入门-XXE

    ctfshow web入门-XXE web373 题目描述 解题思路 web374 题目描述 解题思路 web375 题目描述 解题思路 web376 题目描述 解题思路 web377 题目描述 解题 ...

  7. ctfshow web入门 命令执行 web29~web77 web118~web124

    目录 web29 web30 web31 web32 web33 web34 web35 web36 web37 web38 web39 web40 web41 web42 web43 web44 w ...

  8. ctfshow web入门 反序列化 前篇 254-266

    这里266后面主要是框架,以后在讲 反序列化入门可以参考我写的另一篇很详细的哦~php 反序列化总结 web254 <?phperror_reporting(0); highlight_file ...

  9. Ctfshow web入门 爆破系列 21~28

    目录 Ctfshow web 21 Ctfshow web 22 Ctfshow web 23 Ctfshow web 24 Ctfshow web 25 Ctfshow web 26 Ctfshow ...

  10. CTFSHOW WEB 1-100

    web入门 给她 1 参考文档 https://blog.csdn.net/weixin_51412071/article/details/124270277 查看链接 sql注入 <?php ...

最新文章

  1. C++ 测量程序运行时间 任务管理看内存
  2. 编译实验(三)目标代码生成
  3. golang 修改nginx配置文件_「系统架构」Nginx调优,不可错过的几点
  4. Linux查看显示编辑文本文件
  5. Part Five 音视频API
  6. git add多个文件_10个节省时间和改善工作流的Git技巧
  7. 全国二级c语言公共基础知识,全国计算机二级C语言及公共基础知识复习资料
  8. 基于单片机的无线鼠标设计
  9. 简谈PCB设计软件对比
  10. AMOS从零到基本操作入门(转载)
  11. datax运行无法加载主类
  12. 计算机专业支教,【计算机】梦缘·夏季支教志愿招募
  13. 怎么把文字转换成语音?这里有简单的步骤讲解
  14. 无线自动连接的二维码规则
  15. pstack 安装linux_linux下的进程堆栈查看工具pstack
  16. wireless communications in smart grid 2
  17. 2018保研夏令营调研笔记
  18. openssl中SM2、SM3、SM4使用实例
  19. 第六十九章 SQL函数 JSON_OBJECT
  20. Best-first search

热门文章

  1. ES5_03_Object扩展
  2. 爬虫开发.1爬虫介绍
  3. Mail.Ru Cup 2018 Round 1 virtual participate记
  4. 工作记录 反射
  5. bzoj 2330 糖果
  6. Redis中struct运用
  7. 链表基础操作及其逆置
  8. 在你的代码中使用Boost智能指针
  9. 基于Spring Security的认证方式_实现授权功能_Spring Security OAuth2.0认证授权---springcloud工作笔记120
  10. SpringCloud工作笔记060---SpringBoot中使用WebSocket实现即时通讯_实现呼叫中心业务封装