你遇到过这个吗?



织梦:为什么我总是受伤?
1.除了程序本身之外,漏洞的数量还与使用量有关。 梦编织纸的市场份额很高,很多人都在使用它。 肯定有更多人在寻找安全漏洞,甚至是在网上也是如此。还有各种各样的工具可以爆破挂马的工具,以织梦的脆弱性,甚至还有成批的挂马工具,甚至可以由新生婴儿操作。 询问您是否害怕, 相反,有的程序使用的人很少,并且没有人找漏洞,暴露出的也就少了
2。 织梦dedecms的官方无为而治。 除了过去一两年中的定期更新之外,很长一段时间以来,其他更新都已停止。
3。 由于织梦dedecms使用简单上手快,许多新手和小白对早期织梦安全性一无所知。 网站上线以后,即使后端目录dede文件夹也没有更改,甚至是默认管理用户帐户密码也是默认密码,其他用户则随意进入后台弄乱了密码。
Ps:如果您想安全并且不想放弃织梦,请跟随我阅读以下教程,并开始建立一个安全的织梦网站。 以下教程只是一个常规的预防措施,足以应付那些利用工具扫站和弄乱事情的漏洞,在下一个教程中将讨论更深入的安全保护。 我们将讨论织梦内核的重命名以及每个文件夹的权限。 一开始,它太复杂了。 恐怕会让你晕倒。 它对您的身心健康更好。 从简单开始。
【前言】
无论您的网站是被篡改,被黑客入侵,被挂马还是仅由织梦打造,我都建议您跟随我并尝试一下给网站打一针预防针,万一有效果呢。
教程的每一步都禁止在记事本上面修改,强烈建议使用Noptepad或Sublime Text或Dreamweaver进行修改。
该网站上的教程中所有图片均带有QQ水印,以防止某些恶棍利用这些原始的免费教程欺骗人和金钱。
本教程篇幅较长,并且有很多地方可以操作。 我建议您先阅读几次,并先了解大纲和步骤,然后再执行这些步骤。 如果做不到的话,可以花钱请我帮你,嘿嘿〜
虚拟主机篇

服务器篇

第一步:备份
1-1、后台-系统-数据库备份/还原,数据备份。

1-2、打包整站下载到你电脑上来,防止被改坏了无法还原回来。打包可以利用主机面板的打包功能,快速又方便。
第二步:最新织梦
http://www.dedecms.com/products/dedecms/downloads/ [官网] 下载对应编码的最新织梦程序包

第三步:删除最新织梦程序包那些没用的又容易被挂马入侵的程序文件
3-1、删除以下文件夹和文件
member 会员文件夹整个删除
special 专题文件夹整个删除
install 安装文件夹整个删除
robots.txt 文件删除

3-2、删除 /templets/default 官方默认模板这个文件夹

3-3、plus 文件夹除了以下 1个文件夹 和 5个php文件,其他的文件统统删除
/plus/img (这个文件夹)
/plus/count.php
/plus/diy.php
/plus/list.php
/plus/search.php
/plus/view.php

3-4、把 dede 后台文件夹改名,改复杂一点,改成爹妈都不认识它。

第四步:修复刚刚下载的织梦最新程序包里已知漏洞
https://www.dedehtml.com/safe/
第五步:从第一步的整站备份文件夹里检查 模板 和 文档图片文件夹 是否有挂马和后门等可疑文件或代码
这一步需要一点专业知识,如果你实在不懂,就到群里虚心请教,遇到可疑的地方截图请教别人,慢慢见的后门和木马代码多了,你就离成为大神不远了。
也可以借助D盾,扫描一下

D盾官方下载 http://www.d99net.net/
5-1、每一个跟模板有关的js文件都要一一打开来细心检查,因为挂马很多在js文件中,不然你前面和后面的工作都白做了。
5-2、每一个跟模板有关的css 和 images 文件夹下都要细心检查是否有后门文件,除了图片文件、css文件、字体文件,其他的一律删除,删错了也不用担心,有整站打包的备份在。
5-3、每一个模板htm文件都要细心检查是否有挂马代码存在,检查你的模板文件夹里是否有后门文件,比如php文件,asp文件,其他可疑的格式文件一律删除,删错了也不用担心,有整站打包的备份在。
5-4、你备份文件中的文档图片文件夹 uploads 文件夹,每一个文件夹都要打开,都要细心检查是否有后门文件,除了图片文件和你的附件,其他的一律删除,删错了也不用担心,有整站打包的备份在。
例如,在uploads文件夹里发现了一个图片木马文件,它是看不到图的,所以uploads文件夹里面的所有文件都要看一遍

5-5、/data/common.inc.php 和 /data/config.cache.inc.php 一会配合打包要用到,所以也要检查。
5-6、/include/extend.func.php 和 /include/common.func.php 可能有二次开发的自定义方法在里面,所以也要检查。
5-7、其他你曾经二次开发修改过的文件。
第六步:把第五步处理过的以下文件和文件夹复制到你第一步处理过的官方最新程序而且删除和修复漏洞的那个文件夹对应的位置里
/data/common.inc.php
/data/config.cache.inc.php
/include/extend.func.php
/include/common.func.php
/templets/你的模板文件夹
/uploads
其他你曾经二次开发修改过的文件
还有可能你的模板关联的css 和 js 和 images图片,这个自己看着办
复制进来后,打包本地整好的文件
第七步:清空线上网站所有文件,上传本地整好的文件包
7-1、把主机里现在网站里的所有文件清空,不需要到mysql清除数据哦。虚拟主机的小伙伴可以借助主机面板一键清空,省事又干净。
7-2、把刚刚整理好的最新程序打包上传到主机里解压出来,不需要重新安装哦
7-3、登录网站后台,打开 系统-系统设置-基本参数,点击确认一次,更新栏目缓存,更新系统缓存,再去生成全站。
第八步:后台-模块-广告管理,检查是否有挂马的广告,如果不用广告模块记得清空所有广告,或者用SQL命令一键批量删除
后台-系统-SQL命令行工具,执行
TRUNCATE dede_search_keywords; TRUNCATE dede_myad; TRUNCATE dede_myadtype; TRUNCATE dede_mytag; |
如果有防火墙限制了执行,可以到phpmyadmin里执行,那样的话记得把dede_改成你的表前缀,例如 dede_
第九步:主机或服务器环境的重要性
尽量选择linux环境的主机或者服务器
尽量选择最高PHP版本
虚拟主机尽量禁止不必要的环境参数和函数


第十步:利用伪静态功能禁止以下目录运行php脚本
linux主机的用户一般都是apache环境,使用 .htaccess 文件来设置,如果你网站根目录已经存在这个文件,那就复制一下代码添加进去,没有这个文件的小伙伴可以下载下来放进去
RewriteEngine on #安全设置 禁止以下目录运行指定php脚本 RewriteCond % !^$ RewriteRule a/(.*).(php)$ – [F] RewriteRule data/(.*).(php)$ – [F] RewriteRule images/(.*).(php)$ – [F] RewriteRule css/(.*).(php)$ – [F] RewriteRule js/(.*).(php)$ – [F] RewriteRule style/(.*).(php)$ – [F] RewriteRule skin/(.*).(php)$ – [F] RewriteRule templets/(.*).(php|htm)$ – [F] RewriteRule uploads/(.*).(php)$ – [F] |
.htaccess 文件下载:https://cloud.189.cn/t/Mb6J7nmuEzmu
windows主机的用户一般都是iis7、iis8环境,使用 web.config 文件来设置,请确认你的主机已经开启了伪静态而且网站根目录有 web.config 文件,有这个文件的可以复制以下代码添加到对应的rules内,没有这个文件的小伙伴可以下载下来放进去
<rule name="Block a" stopProcessing="true"> <match url="^a/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="a" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /> </rule> <rule name="Block data" stopProcessing="true"> <match url="^data/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="data" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /> </rule> <rule name="Block skin" stopProcessing="true"> <match url="^skin/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="skin" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /> </rule> <rule name="Block style" stopProcessing="true"> <match url="^style/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="style" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /> </rule> <rule name="Block css" stopProcessing="true"> <match url="^css/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="css" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /> </rule> <rule name="Block js" stopProcessing="true"> <match url="^js/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="js" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /> </rule> <rule name="Block images" stopProcessing="true"> <match url="^images/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="images" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /> </rule> <rule name="Block templets" stopProcessing="true"> <match url="^templets/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="templets" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /> </rule> <rule name="Block uploads" stopProcessing="true"> <match url="^uploads/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="uploads" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /> </rule> |
web.config 文件下载: https://cloud.189.cn/t/zayUvyMVbqYn
Nginx下禁止指定目录运行PHP脚本
注意:这段配置文件一定要放在 location ~ .php(.*)$ 的前面才可以生效,配置完后记得重启Nginx生效。
location ~* /(a|data|style|skin|images|css|js|templets|uploads)/(.*).(php)$ { return 403; } |

宝塔面板的在配置文件里找到PHP引用配置
宝塔面板的小伙伴想要一次性给所有网站加这个的话,看下图操作

百度云Nginx虚拟主机,开启伪静态后,手动添加个 bcloud_nginx_user.conf 放网站根目录,不会的到这里下载
https://cloud.189.cn/t/NVFNfqmYZFbq

第十步尤其重要,如何验证第十步是否生效呢
用 Noptepad++ 或者 Sublime Text 或者 Dreamweaver 新建一个php文件,名为1.php,里面随便打几个数字即可

上传到你网站的 uploads 文件夹里,然后在浏览器上打开 http://域名/uploads/1.php
出现403Forbidden提示表示生效了,出现的还是123表示没有生效
测试完后就可以删除这个1.php文件了
第十一步,投诉快照,申诉QQ红名
如果你的网站在百度或者谷歌快照有误,去快照里投诉。

QQ聊天红名,点进去,申诉一下。

好了,自己动手做一下织梦安全防护或者挂马处理的教程到此结束,有什么地方写的不妥你来打我啊,开玩笑的,不妥的地方还请海涵或者私聊告诉我,多谢。