文件上传日志包含详解与CTF实战

打印 上一主题 下一主题

主题 831|帖子 831|积分 2493

1. 日志简介

1.1 日志介绍

日志是记录系统或应用程序运行时事件的文件。这些记录可以包括错误信息、用户活动、系统性能指标等,帮助开发者和管理员监控和排查问题。
日志通常会记录多种内容,包括:

  • 时间戳:事件发生的具体时间。
  • 用户代理(UA)头:浏览器或客户端的类型和版本。
  • IP地点:发起请求的用户的IP地点。
  • 请求方法:如GET、POST等。
  • 请求路径:被访问的资源URL。
  • 相应状态码:服务器对请求的相应状态(如200、404等)。
  • 用户行为:如点击、表单提交等。
1.2 日志路径

在Apache中,默认日志路径通常是:

  • 访问日志:/var/log/apache2/access.log(Debian/Ubuntu)
  • 错误日志:/var/log/apache2/error.log(Debian/Ubuntu)
在NGINX中,默认日志路径通常是:

  • 访问日志:/var/log/nginx/access.log
  • 错误日志:/var/log/nginx/error.log
具体路径大概因系统配置而异。
2. 文件上传日志包含概述

不妨考虑这样一种思绪:

  • 上传一个正常的图片,把UA头修改为后门代码,从而将它写入日志
  • 上传图片,内容写入恶意代码:包含日志文件。
  • 利用.user.ini将图片中代码包含入upload下的php文件
这样造成的结果就是:该php文件中就会包含日志内容,也就包含了后门代码
3. CTFshow Web 160

上传正常文件,将UA头修改为后门代码。再看返回包,服务器是nginx,由1.2可知日志路径(假如是默认配置的话)

上传.user.ini,将1.png的恶意代码包含入upload文件夹下php文件

上传1.png,写入包含日志文件的代码。这里需要实验一下,会发现log被过滤了,这里用.来连接路径字符串

访问upload下的php文件,发post包,查看网页源代码(看的比较清晰)
  1. x=system("ls ../");
复制代码
  1. x=system("tac ../flag.php");
复制代码

宇宙安全声明

本博客所提供的内容仅供学习与交流,旨在进步网络安全技术程度,谨遵守国家相关法律法规,请勿用于违法用途,博主不对任何人因使用博客中提到的技术或工具而产生的任何后果负责。假如您对文章内容有疑问,可以留言私信。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

徐锦洪

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表