linux下和windows下如何防止php木马

简介:
各位网络管理人员经常遇到的一个问题就是网站被别人挂马,随着php语言的流行,现在比较多的一种木马就是php木马,大家对此也非常的头疼。现在我给大家讲一下在linux和windwos下如何预防php木马。
一、先讲一下在linux下如何预防php木马。
1.首先修改httpd.conf,如果你只允许你的php脚本程序在web目录里操作,可以修改httpd.conf文件限制php的操作路径。比如你的web目录是/usr/local/apache/htdocs,那么在httpd.conf里加上这么几行:
php_admin_valueopen_basedir /usr/local/apache/htdocs
这样,如果脚本要读取/usr/local/apache/htdocs以外的文件将不会被允许,如果错误显示打开的话会提示这样的错误:
Warning:open_basedirrestrictionineffect.Fileisinwrongdirectoryin/usr/local/apache/htdocs/open.phponline4等等。
2、防止php木马执行webshell
  打开safe_mode,在php.ini中设置disable_functions=passthru,exec,shell_exec,system二者选一即可,也可都选
3、防止php木马读写文件目录
  在php.ini中的disable_functions=passthru,exec,shell_exec,system后面加上php处理文件的函数
  主要有
  fopen,mkdir,rmdir,chmod,unlink,dir
  fopen,fread,fclose,fwrite,file_exists
  closedir,is_dir,readdir.opendir
  fileperms.copy,unlink,delfile
  即成为 disable_functions=passthru,exec,shell_exec,system,fopen,mkdir,rmdir,chmod,unlink,dir,fopen,fread,fclose,fwrite,file_exists,closedir,is_dir,readdir.opendir,fileperms.copy,unlink,delfile

  ok,大功告成,php木马拿我们没辙了,遗憾的是这样的话,利用文本数据库的那些东西就都不能用了。
二、windows下如何防止php木马
  如果是在windos平台下搭建的apache,apache默认运行是system权限,这很恐怖,.那我们就给apache降降权限吧。
  1.建立一个普通用户apache,只把它加入windows的iis默认组里面,其他任何权限都不给。
  2.我们打开计算机管理器,选服务,点apache服务的属性,我们选择logon,选择thisaccount,我们填入上面所建立的账户和密码,重启apache服务,ok,apache运行在低权限下了。

  实际上我们还可以通过设置各个文件夹的权限,来让apache用户只能执行我们想让它能干的事情,给每一个目录建立一个单独能读写的用户。这也是当前很多虚拟主机提供商的流行配置方法哦,不过这种方法用于防止这里就显的有点大材小用了。

 



本文转自 gehailong 51CTO博客,原文链接:http://blog.51cto.com/gehailong/267175,如需转载请自行联系原作者

相关文章
|
2月前
|
安全 网络安全 Windows
Windows应急响应-PcShare远控木马
【10月更文挑战第3天】这段文档介绍了在Windows系统中应对PcShare远控木马的紧急响应步骤。用户因在非官方平台下载软件后疑似中招而求助排查。文档详细描述了从发现异常连接和服务、定位注册表项到彻底查杀木马的过程,并强调了重启后的二次检查。最后提醒应避免非官方渠道下载软件,保持系统更新,定期备份数据,并在必要时寻求专业帮助。
82 11
|
4月前
|
Linux PHP
Linux CentOS 宝塔 Suhosin禁用php5.6版本eval函数详细图文教程
【8月更文挑战第27天】本文介绍两种禁用PHP执行的方法:使用`PHP_diseval_extension`禁用和通过`suhosin`禁用。由于`suhosin`不支持PHP8,仅适用于PHP7及以下版本,若服务器安装了PHP5.6,则需对应安装`suhosin-0.9.38`版本。文章提供了详细的安装步骤,并强调了宝塔环境下与普通环境下的PHP路径差异。安装完成后,在`php.ini`中添加`suhosin.so`扩展并设置`executor.disable_eval = on`以禁用执行功能。最后通过测试代码验证是否成功禁用,并重启`php-fpm`服务生效。
62 2
|
4月前
|
PHP Windows
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误
|
4月前
|
PHP 开发工具 git
【Azure 应用服务】在 App Service for Windows 中自定义 PHP 版本的方法
【Azure 应用服务】在 App Service for Windows 中自定义 PHP 版本的方法
|
4月前
|
Linux 应用服务中间件 网络安全
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
|
4月前
|
应用服务中间件 Linux 网络安全
【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
|
4月前
|
Linux PHP
【Azure 应用服务】PHP项目部署到App Service for Linux环境中,如何修改上传文件大小的限制呢?
【Azure 应用服务】PHP项目部署到App Service for Linux环境中,如何修改上传文件大小的限制呢?
|
4月前
|
存储 安全 Linux
【Azure 应用服务】App Service For Linux 怎么安装Composer,怎么安装PHP扩展,怎么来修改站点根路径启动程序?
【Azure 应用服务】App Service For Linux 怎么安装Composer,怎么安装PHP扩展,怎么来修改站点根路径启动程序?
|
4月前
|
存储 关系型数据库 Linux
【Azure 应用服务】App Service For Linux 部署PHP Laravel 项目,如何修改首页路径为 wwwroot\public\index.php
【Azure 应用服务】App Service For Linux 部署PHP Laravel 项目,如何修改首页路径为 wwwroot\public\index.php
|
4月前
|
应用服务中间件 Linux PHP
Linux搭建tengine2.0<Nginx>+php7环境
本文介绍了在Linux系统上搭建Tengine 2.0(一个Nginx的增强版本)和PHP 7环境的详细步骤,包括创建安装目录、下载源码包及依赖库、编译安装Nginx、配置Nginx、安装PHP及其依赖、设置PHP-FPM、配置环境变量、安装Git和Composer,以及服务管理和日志查看等。
104 0