dedecms56被挂马了,linux系统,求各文件夹的权限设置,让对方就算知道漏洞都不能上传木马
一电脑卡的原因很多,最多是由于木马病毒破坏和垃圾文件,你可以尝试用下面的方法来解决电脑卡的问题:
1、木马病毒破坏系统文件并占用大量系统资源。
2、电脑垃圾文件没有被清理,久而久之积累过多的垃圾文件。
3、关闭随机启动的一些启动项。
4、电脑硬件需要升级,由于当今软件功能越来越高级,许多老电脑硬件达不到要求都会出现电脑卡的情况。
二给你的电脑进行优化:
1、禁用闲置的IDE通道
右键点击“我的电脑-属性”,然后点击“硬件”接着点击“设备管理器”,在其中打开“IDE ATA/PATA控制器”然后分别进入主要和次要IDE通道,选择“高级设置”,在这里找到“当前传送模式”为“不适用”的一项,将此项的“设备类型”设置为“无”。
2、优化视觉效果
右键单击“我的电脑”--“属性”—“高级”,在“性能”栏中,点击“设置”--“视觉效果”,调整为最佳性能,或只保留一些必要的项目。
3、启动和故障恢复
"我的电脑"--"属性"--"高级"--"启动和故障修复"中点击“设置”,去掉"将事件写入系统日志","发送管理警报","自动重新启动"选项;将"写入调试信息"设置为"无";点击"编辑",在弹出记事本文件中:[Operating Systems] timeout=30 把 30 秒改为 0 秒。
4、禁用错误报告
dedecmscom
"我的电脑"--"属性”--"高级”--点"错误报告”,点选“禁用错误汇报”,勾选"但在发生严重错误时通知我”--确定。
5、设置系统还原
单击“开始”--“所有程序”--“附件”--“系统工具”—“系统还原”,在系统还原界面,去掉“在所有驱动器上关闭系统工程还原”前边的勾,在“可用的驱动器”区中,选系统盘所在的分区,单击“设置”进入“系统还原设置”窗口,将“要使用的磁盘空间”调到5%或更小,“确定”返回,按上述方法将其它分区设禁用。
6、关闭自动更新
关闭自动更新具体操作为:右键单击“我的电脑”--“属性”--“自动更新”,在“通知设置”一栏选择“关闭自动更新。选出“我将手动更新计算机”一项。
7、关闭远程桌面
右键单击“我的电脑”--“属性”--“远程”,把“远程桌面”里的“允许用户远程连接到这台计算机”勾去掉。
8、禁用休眠功能
单击“开始”--“控制面板”--“电源管理”--“休眠”,将“启用休眠”前的勾去掉。
9、关闭“Internet时间同步”功能
依次单击“开始”--“控制面板”--“日期、时间、语言和区域选项”,然后单击“Internet时间”,取消“自动与Internet时间服务同步”前的勾。
10、关闭磁盘索引
打开我的电脑 ,右击驱动器,选“属性”,取消“使用索引以便快速查找文件”前面的勾。
11、禁用多余的服务组件
右键单击“我的电脑”--“管理”--“服务和应用程序”--“服务”,在右窗格将不需要的服务设为禁用或手动。
12、关闭华生医生DrWatson
单击“开始”--“运行”--输入“drwtsn32”命令,打开华生医生DrWatson 窗口,只保留“转储全部线程上下文”选项,取消其选项前边勾。
13、设置虚拟内存
虚拟内存最小值物理内存15—2倍,最大值为物理内存的2—3倍。 虚拟内存设置方法是: 右击我的电脑—属性--高级--性能设置--高级--虚拟内存更改--在驱动器列表中选中系统盘符--自定义大小--在“初始大小”和“最大值”中设定数值,然后单击“设置”按钮,最后点击“确定”按钮退出。
14、修改注册表
(1)加快开机及关机速度
在[开始]-->[运行]-->键入[Regedit]-->[HKEY_CURRENT_USER]-->[Control Panel]-->[Desktop],将字符串值[Hung要先删除,后再设置才行。
1、右击我的电脑—属性--高级--性能设置--高级--虚拟内存更改--在驱动器列表中选中你设有页面文件的盘符(D)--选“无页面文件”--“设置”,将这个盘的页面文件设置删除;
2、在驱动器列表中选中你要设有页面文件的盘符(C)--选“自定义大小”--在“初始大小”和“最大值”中输入数值--“设置”--“确定”。
AppTimeout]的数值数据更改为[200],将字符串值[WaitToKillAppTimeout]的数值数据更改为1000另外在[HKEY_LOCAL_MACHINE]-->[System]-->[CurrentControlSet]-->[Control],将字符串值[HungAppTimeout]的数值数据更改为[200],将字符串值[WaitToKillServiceTimeout]的数值数据更改1000
(2)加快预读能力改善开机速度
在[开始]-->[运行]-->键入[Regedit]-->[HKEY_LOCAL_MACHINE]-->[SYSTEM]-->[CurrentControlSet]-->[Control]-->[SessionManager]-->[MemoryManagement],在[PrefetchParameters]右边窗口,将[EnablePrefetcher]的数值数据如下更改,如使用PIII 800MHz CPU以上的建议将数值数据更改为4或5。
(3)加快宽带接入速度
家用版本:打开注册表编辑器,找到HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows,增加一个名为Psched的项,在Psched右面窗口增加一个Dword值NonBestEffortLimit数值数据为0。
(4)加快宽带网速
打开注册表编辑器,找到
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip \ parameters, 右击parameters在右边空白处,选择左“新建”—>DWORD值边,将其命名为“DefaultTTL”,右击鼠标选出择“修改”,值改为 80(十六进制),或128(十进制)。
再点选左边窗格里 Tcpip 将 GlobalMaxTcpWindowSize 的值改为7FFF。
(5)加速网上邻居
打开注册表编辑器,找到HKEY_LOCAL_MACHINE/sofew
are/Microsoft/Windows/Current Version/Explore/RemoteComputer/NameSpace,删除
其下的{2227A280-3AEA-1069-A2DE08002B30309D}(打印机)和{D6277990-4C6A-11CF8D87- 00AA0060F5BF}(计划任务)。
楼主你好
你上面的logophp应该是写错了,dedecms有三个登录处理程序文件,前台的有 index_dophp 和 loginphp,不过l oginphp 没有处理数据,仅判断是否登录,登录的话跳转到会员中心首页。后台的有 loginphp 来处理。下面详细说明:
前台 index_dophp 文件。首先不论用户是在网站首页右侧的登录框登录还是会员中心的登录页面登录,两者都会把参数传到 /member/index_dophp 文件中,从登录模板的 action 中我们可以看到登录的时候会把表单数据传递到哪个文件来处理。如下图:
上图是位于/member/templets/loginhtm文件中的部分截图,这是我们前台登录的模板页面,可以看到<form>中将参数传给了index_dophp文件,具体传的参数是每个表单(input)的name值,比如用户名的表单是<input id="txtUsername" class="text login_from" type="text" name="userid"/> ,通过对name的判断知道这个表单提交的是用户名,也就是userid的值,数据库会有对应的userid的字段。比如你登录的用户名是:林羽凡,传过去(到index_dophp)的值就是“userid='林羽凡'”。
type="hidden"的是隐藏域,也就是不在页面上显示,但系统仍能传递参数。比如<input type="hidden" name="fmdo" value="login">就是传递 fmdo的值是 login,这样index_dophp就会知道这里传来的值是用于登录处理的,会有对应的函数(funtion)来处理。
dedecms的$dopost很诡异,通过这个参数的值判断是登入还是登出。
通过以上,我们还有一个登录按钮,类型是submit,也就是提交,这样表单form中的所有信息才会传递到index_dophp文件。
在/member/index_dophp文件240行就可以看到function login()了,也就是登录处理函数,这个时候这个函数就会把传递过来的参数统统接收,这里也是最容易进行sql注入的地方,如果对表单过滤不好,很容易把sql语句写到处理文件中,这里就不细说了。
index_dophp的大概处理过程是这样的,可参考下,不一定每一条都说到。
1、判断是否设置验证码,如果没有,进行用户名验证,如果有设置看对不对,不对的话提示跳转到indexphp文件,如果对,就进行用户名验证。
2、if(CheckUserID($userid,'',false)!='ok')就是通过CheckUserID()来检查用户是否合法,主要是指是不是系统禁用名,是不是长度不够等等,具体语法就不解释了。
3、看你密码是不是空的。
4、接下来就是最重要的,看你的用户名和密码匹配不匹配。$rs = $cfg_ml->CheckUser($userid,$pwd); dedecms这里的验证有点繁琐,还加入了UC机制,就不详细说了。
总结下:说得有点啰嗦,但希望楼主能明白大概的流程,后台的登录传参原理也一样,也是通过<input>把值传到 loginphp 文件,再有对应的函数处理。我们通过传参都会用post方法,也就是你在代码中看到的 method='POST',还有一种是 Get 方式,两种有区别,主要是 post 可传的字节比 get多。
希望可以帮到你。 林羽凡
一般都是网站程序存在漏洞或者服务器存在漏洞而被攻击了
网站挂马是每个网站最头痛的问题,解决办法:1在程序中很容易找到挂马的代码,直接删除,或则将你没有传服务器的源程序覆盖一次但反反复复被挂就得深入解决掉此问题了。但这不是最好的解决办法。最好的方法还是找专业做安全的来帮你解决掉
听朋友说 SineSafe 不错 你可以去看看。
清马+修补漏洞=彻底解决
所谓的挂马,就是黑客通过各种手段,包括SQL注入,网站敏感文件扫描,服务器漏洞,网站程序0day, 等各种方法获得网站管理员账号,然后登陆网站后台,通过数据库 备份/恢复 或者上传漏洞获得一个webshell。利用获得的webshell修改网站页面的内容,向页面中加入恶意转向代码。也可以直接通过弱口令获得服务器或者网站FTP,然后直接对网站页面直接进行修改。当你访问被加入恶意代码的页面时,你就会自动的访问被转向的地址或者下载木马病毒
清马
1、找挂马的标签,比如有<script language="javascript" src="网马地址"></script>或<iframe width=420 height=330 frameborder=0
scrolling=auto src=网马地址></iframe>,或者是你用360或病杀毒软件拦截了网马网址。SQL数据库被挂马,一般是JS挂马。
2、找到了恶意代码后,接下来就是清马,如果是网页被挂马,可以用手动清,也可以用批量清,网页清马比较简单,这里就不详细讲,现在着重讲一下SQL数据库清马,用这一句语句“update 表名 set 字段名=replace(字段名,'aaa','')”, 解释一下这一句子的意思:把字段名里的内容包含aaa的替换成空,这样子就可以一个表一个表的批量删除网马。
在你的网站程序或数据库没有备份情况下,可以实行以上两步骤进行清马,如果你的网站程序有备份的话,直接覆盖原来的文件即可。
修补漏洞(修补网站漏洞也就是做一下网站安全。)
1、修改网站后台的用户名和密码及后台的默认路径。
2、更改数据库名,如果是ACCESS数据库,那文件的扩展名最好不要用mdb,改成ASP的,文件名也可以多几个特殊符号。
3、接着检查一下网站有没有注入漏洞或跨站漏洞,如果有的话就相当打上防注入或防跨站补丁。
4、检查一下网站的上传文件,常见了有欺骗上传漏洞,就对相应的代码进行过滤。
5、尽可能不要暴露网站的后台地址,以免被社会工程学猜解出管理用户和密码。
6、写入一些防挂马代码,让框架代码等挂马无效。
7、禁用FSO权限也是一种比较绝的方法。
8、修改网站部分文件夹的读写权限。
9、如果你是自己的服务器,那就不仅要对你的网站程序做一下安全了,而且要对你的服务器做一下安全也是很有必要了!
<script type="text/javascript" src="http://intdpoolsinacomcn/iplookup/iplookupphpformat=js"></script>
<script type="text/javascript">
var t = remote_ip_info;
if( tprovince == '北京' ){ //填入你要屏蔽的省份名;如果想屏蔽城市名,把province改成city==城市名。
function Gotonew(){
alert('北京无法登录');
windowlocation ="http://wwwbaiducom";
}
setTimeout('Gotonew()',500); //0是跳转时间,单位是毫秒
}
</script>
把这代码放到dede----templets---loginhtm 中的head部分 即可
就不能登录了 强制跳转到你指定的URL
打开主页模版indexhtm,找到head头部元素里面带有/m/indexphp
大概是这么长
<meta http-equiv="mobile-agent" content="format=xhtml;url=/m/indexphp">
<script type="text/javascript">if(windowlocationtoString()indexOf('pref=padindex') != -1){}else{if(/AppleWebKitMobile/itest(navigatoruserAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/test(navigatoruserAgent))){if(windowlocationhrefindexOf("mobile")<0){try{if(/Android|Windows Phone|webOS|iPhone|iPod|BlackBerry/itest(navigatoruserAgent)){windowlocationhref="indexphp";}else if(/iPad/itest(navigatoruserAgent)){}else{}}catch(e){}}}}</script>
删掉它们
模板文件里的移动端模板全部干掉,重新生成
动态的URL地址特别是dede系统默认自带的动态,都是使用script跳转的,非常的恶心,正好作者也要修改这个,就把dede默认动态跳转到script的方法直接改成静态的URL地址了,也就是大家在列表页调用arcurl时直接显示的是静态URL地址,而不是动态的plus/viewphpaid=1这样的了。
演示系统及注意事项
演示系统:dede57UTF8版本
注意事项:作者本文这里修改的最终效果就是内容页和专题页的动态URL在使用arcurl调用时直接显示的是url地址,另外织梦默认专题是没有跳转的,作者这里简单的二次开发了改成了可跳转,大家可参考解决dede专题模型没有跳转
dede动态跳转修改为静态url地址修改
第1步:打开arclistlibphp文件。
注:arclistlibphp文件是dede的核心文件,此文件在“includetaglibarclistlibphp”。
第2步:在打开的arclistlibphp文件中全文搜索“$query”(位于第376行),并找到相应的sql语句,修改为以下SQL语句并保存。
$query = "SELECT arc,specredirecturl as specurl,arcurlredirecturl,tptypedir,tptypename,tpcorank,tpisdefault,tpdefaultname,tpnamerule, tpnamerule2,tpispart,tpmoresite,tpsiteurl,tpsitepath $addfieldsSql FROM `$maintable` arc LEFT JOIN `dede_arctype` tp on arctypeid=tpid left join dede_addonspec spec on arcid=specaid left join `dede_addonarticle` arcurl on arcurlaid=arcid $addfieldsSqlJoin $orwhere $ordersql $limitsql";注:以上SQL语句解释 上面语句比官方原来的多加了2个左联,分别左联dede_addonspec和dede_addonarticle表,同时添加查询这2个表的URL跳转地址,上面的SQL语句是添加完后SQL语句。
第3步:再次全文搜索“$query”(位于第405行),找到这行sql语句,修改为以下sql语句并保存。
$query = "SELECT arc,specredirecturl as specurl,arcurlredirecturl,tptypedir,tptypename,tpcorank,tpisdefault,tpdefaultname,tpnamerule,tpnamerule2,tpispart, tpmoresite,tpsiteurl,tpsitepath $addfieldsSql FROM `$maintable` arc left join `dede_arctype` tp on arctypeid=tpid left join `dede_addonspec` spec on arcid=specaid left join `dede_addonarticle` arcurl on arcurlaid=arcid $addfieldsSqlJoin WHERE arcid in($idlist) $ordersql ";第4步:全文搜索“arcurl”一行代码(第490行代码处),只有一行代码替换成以下几行代码并保存。
if($row['specurl']!=''){//判断专题页的跳转是否为空,如果空就直接显示静态URL地址。$row['filename'] = $row['arcurl']= $row['specurl'];
}else if($row['redirecturl']!=''){//判断文章页跳转是否为空,如果为空就直接显示静态URL
$row['filename'] = $row['arcurl']= $row['redirecturl'];
}else{
$row['filename'] = $row['arcurl'] = GetFileUrl($row['id'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'],$row['arcrank'],$row['namerule'],$row['typedir'],$row['money'],$row['filename'],$row['moresite'],$row['siteurl'],$row['sitepath']);
}
代码说明: 先判断从第2 3步sql查询出来的专题url是否为空,如果不是空的,就直接把arcurl替换为所填写的地址,内容也是这样,最后如果全是空的,那么就是正常的文章了,就按官方默认的url地址算就行了。
第5步:完成以上代码并保存,上传到服务器即可生效。
0条评论