在使用composer的时候报一下错误,这是因为php禁用了putenv() 函数
Linux中composer install执行报错Warning: putenv() has been disabled for security reasons in 解决问题
在 PHP 中,我们可以通过 phpinfo() 查看到当前系统中的环境变量信息(Environment)。在代码中,我们也可以通过两个函数,查看和修改相应的环境变量信息。
https://github.com/mulcl/S_mucn/blob/main/RCE/Thinkphp5_RCE.md
Laravel在启动时会加载项目中的 .env文件。对于应用程序运行的环境来说,不同的环境有不同的配置通常是很有用的。 例如,你可能希望在本地使用测试的 Mysql数据库而在上线后希望项目能够自动切换到生产 Mysql数据库。本文将会详细介绍 env 文件的使用与源码的分析。
1、下载composer.phar 1 curl -sS https://getcomposer.org/installer | php 2、把composer.phar移动到环境下让其变成可执行 1 mv composer.phar /usr/local/bin/composer 3、换中国镜像 1 composer config -g repo.packagist composer https://packagist.phpcomposer.com 执行到这里,如果宝塔面板出现这个错误 pu
踩坑,安装了宝塔 7.3 和7.2,修改了7.3 哪怕你的程序对应选择的是7.3 ,7.2也必须修改才会生效。
现在很多框架使用根目录的.env文件来配置环境变量,php本身是不会去解析这个文件的,需要使用php代码读取和解析这个文件放入环境变量中
我自己本地肯定是没这一类问题的,中午的时候学妹说接口500了,我一看,还真他娘的500了,response也没返回错误信息,于是我打开错误日志,发现了这么一条:
main() 函数是 C 和 C++ 程序中的入口函数,通常用于表示程序的起始点。在 C 和 C++ 中,main() 函数可以有两种不同的形式:
360春秋杯3道web题的简单分析 From ChaMd5安全团队核心成员 pcat&香香 where is my cat 这题一开始很坑的,存在着/.git/config这个泄露文件,而且还跟百度杯资格赛的cat题一致,那个cat题到现在还没一血,如果这题跟那题一致的话,就可以不用做了。所幸管理员说此猫非彼猫。(后期的.git文件夹都直接被移除) 这题前前后后翻找了不久,一个特别要注意的点是cookies里有一个HOST=0,一开始设置把值设置为1或者一些命令,都不见什么效果。 最后突破口在一开始访问网页
在架设网站的时候,有可能会使用到composer php扩展。这里呆呆简单教大家如何在llinux系统下的宝塔面板中安装composer php扩展。
勾股CMS,让WEB开发更简单!Gougu 基于ThinkPHP6 + Layui + MySql的轻量级极速后台开发框架,干净不臃肿、操作简单、开箱即用; 通用型的后台权限管理机制,容易功能定制和二次开发,帮助开发者简单高效降低二次开发成本 完全免费开源,系统易于功能扩展,代码维护,非常容易定制和二次开发。
最近的项目一直在window平台编写和测试,今天转移到linux平台上,莫名出现验证码无法显示的问题,如图
Warning: imagettfbbox() [function.imagettfbbox]: Invalid font filename…
这里面的某个函数需要在运行的时候能够启动子进程,这样才能重新加载我们所设置的环境变量,从而劫持子进程所调用的库函数。
2.一个不错的中文Linux手册:http://cpp.ezbty.org/manpage
服务器的 Composer 版本一直都是 1.5-dev,在面板里面升级Composer也提示“当前已是最新版本,无需升级!”。显然,通过面板无法正常升级Composer版本,只能通过其他方式升级。
最近逛了好多站长的小家,发现大家基本都有自己的个人云盘,而且无广告,页面简介,让人一见心喜,这两天刚好抽空自己也搭建了一个云盘,用的是Cloudreve的程序,页面简洁美观,功能强大嘿嘿。
#操作时如果书写完整的路径则不需要考虑默认工作目录的问题,按照实际书写路径操作 open('路径','打开方式')
国外安全研究员 Andrew Danau在解决一道 CTF 题目时发现,向目标服务器 URL 发送 %0a 符号时,服务返回异常,疑似存在漏洞。
找到禁用函数检查putenv 和proc_open 是否 删除 删除过之后 检查安装扩展 fileinfo 是否安装 nginx环境下 建议修改过重启下 php服务或者 nginx
原本可以用shell完成的功能,现在学习python,就照抄照改。完成数据库备份。
通过我们之前所学Linux知识以及C语言的知识,到目前为止,我们完全可以独立完成简易shell的制作,那么话不多说,开始今天的话题!
import os print 'setenv...', print os.environ['USER'] # show current shell variable value os.environ['USER'] = 'Brian' # runs os.putenv behind the scenes os.system('python echoenv.py') os.environ['USER'] = 'Arthur' #
送给大家一句话: 人生中有些事,你不竭尽所能去做,你永远不知道你自己有多出色。—— 尾田荣一郎《海贼王》
背景:由于项目需要,在框架外(public文件夹下)新建了一个原生的php文件,由于不知道怎么解决
CGI 的运行原理: 1.客户端访问某个 URL 地址之后,通过 GET/POST/PUT 等方式提交数据,并通过 HTTP 协议向 Web 服务器发出请求。 2.服务器端的 HTTP Daemon(守护进程)启动一个子进程。然后在子进程中,将 HTTP 请求里描述的信息通过标准输入 stdin 和环境变量传递给 URL 指定的 CGI 程序,并启动此应用程序进行处理,处理结果通过标准输出 stdout 返回给 HTTP Daemon 子进程。 再由 HTTP Daemon 子进程通过 HTTP 协议返回给客户端。
小林:这非常困难,即使你可以找出一个可行的方法, 你可能会考虑通过环境变量或别的方法使程序的辅助 (函数库) 目录可配置。如果程序会被数个人使用, 例如在多用户系统中, 那允许配置文件的变量存放变得特别重要。
disable_functions是php.ini中的一个设置选项。相当一个黑名单,可以用来设置PHP环境禁止使用某些函数,通常是网站管理员为了安全起见,用来禁用某些危险的命令执行函数等。
安装PHP扩展exif、fileinfo 从PHP禁用函数中 删除shell_exec、proc_open、putenv这三个PHP函数
Flarum 的前身是 esoTalk (opens new window)和 FluxBB (opens new window),她生来就被设计如此:
<?php //chr() 函数从指定的 ASCII 值返回字符。 for($i=32;$i<127;$i++){ echo chr($i); } //!"#$%&'()*+,-./0123
9月26日,PHP官方发布漏洞通告,提到Nginx与php-fpm服务器上存在的一处高危漏洞,由于Nginx的fastcgi_split_path_info模块在处理带 %0a 的请求时,对换行符 \n 处置不当使得将PATH_INFO值置为空,从而导致可以通过FCGI_PUTENV与PHP_VALUE相结合,修改当前的php-fpm进程中的php配置。在特殊构造的配置生效的情况下可以触发任意代码执行。目前开源社区已有漏洞Poc公开。
作者:Amazing大龙大龙 链接:https://www.jianshu.com/p/a39904a0ba01 来源:简书
tinyhttpd是一个demo版的服务器。代码几百行。源码分析在http://suo.im/6bkZlt。从中可用一窥服务器的基础原理。他采用的是一个请求新开一个线程处理的方式。里面涉及了多进程、多线程、进程间通信等知识。 我们从main函数开始分析。
如果有需要自建一个在线发货的小店铺网站,可以参考下面的教程 前提 为了简单一点,使用的宝塔面板,喜欢自己动手的,可以忽略宝塔面板的操作。 数据库 创建数据库,用户名密码等 redis缓存数据库,先安装好 配置PHP 删除被禁用的函数 putenv proc_open pcntl_signal pcntl_alarm 安装扩展fileinfo 终端操作 拉取代码 git clone https://github.com/assimon/dujiaoka.git 编辑配置 vi .env
生成的pyc可以跨平台使用,但是只能这样用python xxx.pyc,而不能使用./xxx.pyc执行,因为缺少了shebang的支持,不过貌似Binfmt_misc可以解决这个问题,ubuntu下apt-get install binfmt-support可以直接安装。
从一段code说起 “if "BATCH_CONFIG_INI" in os.environ:” 判断环境变量的值有没有定义
Extensions—>Templates,然后选择随意一个模板进入—>New File
官方演示以及使用说明:https://larecipe.binarytorch.com.my/docs/2.2/overview (翻译翻译还是看得明白的 挺简单的)
2019年10月22日在国外上某技术大牛公开了在PHP-FPM中新修补的RCE。
无意中刷到一个文章,关于disablefunction的方法绕过的,依然是脚本小子式的复现环境。
在大多数CTF比赛中,出题者会设置 disable_functions这种环境变量。因此,在某些情况下,我已经在远程服务器上获得了一个webshell,但我却因为 disable_functions而无法使用一些特定的系统函数。因此,我在本文中将展示突破这种难题的方法。首先,我将在我的docker镜像 php:7.1.19-apache上展示我绕过 disable_functions的方法。
老实讲,之前很早我就发现了Flarum这个论坛程序,但是当时我还刚刚跟着摸索建站这些东西,现在才明白这些名词究竟能干嘛 最初在建站之初,我便看到了许多程序,尤其是论坛,那时候作为一个啥也不会的小白,到处找资源,逛得最多的就是那些论坛了 由此,我在想,我能不能自己建立一个论坛呢 当然,就算是萌新也知道例如dz这样的,但是一个初入站长行列的人是舍不得投入成本的,所以没有模板的dz论坛显而易见的丑,所以不久后我就放弃这个想法了。 再后来,偶然见看见了Flarum这个论坛,惊为天人,作为一个现代风的论坛颜值还是蛮高的,所以,我当时试了下, 虽然在当时理所当然没成功就是了
$_ENV变量是取决于服务器的环境变量的,从不同的服务器上获取的$_ENV变量打印出的结果可能是不同的。
LD_PRELOAD 是 Linux 系统中的一个环境变量,它可以影响程序的运行时的链接(Runtime linker),它允许你定义在程序运行前优先加载的动态链接库。如果你是个 Web 狗,你肯定知道 LD_PRELOAD,并且网上关于 LD_PRELOAD 的文章基本都是绕过 disable_functions,都快被写烂了。
领取专属 10元无门槛券
手把手带您无忧上云