【文件包含】——日志文件注入

改变的确很难,但结果值得冒险

本文主要根据做题内容的总结,如有错误之处,还请各位师傅指正

一.伪协议的失效

当我们做到关于文件包含的题目时,常用思路其实就是使用伪协议(php:filter,data,inpput等等)执行一些shell命令或者读出flag文件内容

但如果遇到一些对php以及其他伪协议字符的限制,这种方法就行不通了

以ctfshow的web81文件包含题目来说:

这里限制了phpdata,以及" : ",也想不出来如何使用伪协议做出来

那么便可以通过日志getshell****,利用日志文件的作用,在日志文件留下webshell

getshell就是向日志文件注入一句话木马的过程;

利用文件包含的特性,只要日志文件中有php代码,就会被解析php脚本语言,那么我们便能利用一句话木马里的参数执行我们想得到的东西/或者用蚁剑连接

二.日志文件的注入

1.首先介绍日志文件的作用:通俗来说日志文件(access.log)可以记录我们所有在服务器上的操作记录

2.getshell的过程也很简单,我们可以在UA(user-agent)输入木马(常用)

执行,也可在url后面加上一句话木马(常被url编码)执行

但当我们利用参数a执行ls命令的时候,发现没有成功,原来是因为日志文件里的木马被url编码过了,但我们想要让日志文件的木马是未被urlencode

(注:include包含html或者文本文件,其内容会被直接输出的,这里就是直接输出了日志文件内容)

所以我们可以通过bp传一句话木马,bp传参的时候是不会经过浏览器url编码的,而是直接到服务器进行urldecode

或者直接在ua处添加:

然后我们对参数执行命令即可

或者我们还可以用蚁剑连接日志文件中的php木马

但测试的时候不知道为什么这里连不上了

这里报错unable to verify leaf signature:就是没法认证签名,https认证失效 了,我们只需要把https改成http就可以

但无论哪种方法本质都是一样的,都是利用日志文件的webshell得到flag

相关推荐
AI行业学习24 分钟前
Claude Code + cc-switch + Git + Node.js 一站式完整安装配置教程【8.3】
git·python·安全·前端框架·node.js·html·notepad++
AI行业学习27 分钟前
Claude Code + cc-switch + Git + Node.js 一站式完整安装配置教程(2026最新·国内可用版)
人工智能·git·python·安全·node.js·html·notepad++
JSON_L28 分钟前
Fastadmin关联查询报错 method not exist:think\db\Query->XXX
php·fastadmin
汽车仪器仪表相关领域31 分钟前
NHA-604/605汽车排放气体测试仪:00级国标计量|多动力车型兼容|移动/固定双工况|智能联网尾气检测设备
大数据·人工智能·功能测试·安全·汽车·压力测试·可用性测试
志栋智能39 分钟前
超自动化安全中的自适应防护与自愈能力
网络·安全·自动化
糖果店的幽灵3 小时前
大模型测评DeepEval快速入门-安全与通用指标详解
人工智能·安全·langgraph·大模型测评·deepeval
网络研究院15 小时前
LastPass 发布紧急安全预警:针对主密码的活跃网络钓鱼攻击正在进行中
网络·安全·黑客·攻击·漏洞·风险·钓鱼
himobrinehacken15 小时前
揭秘Windows程序启动的神秘之旅
c++·安全
TunerT_TQ18 小时前
【智能体安全治理|专栏第9期】从“一堆规则”到“数字宪法”:智能体治理的下一个阶段
java·开发语言·安全·开源治理·大模型安全·ai基础设施·智能体安全
zzq779718 小时前
APP 加固选型实战:从保护面构建到发布验收的全链路指南
安全·安卓·app加固·apk加固·御盾安全·御盾·免费加固