PHPCMS整站系统漏洞分析

合集下载

[漏洞分析]thinkphp5.x全版本任意代码执行分析全记录

[漏洞分析]thinkphp5.x全版本任意代码执行分析全记录

[漏洞分析]thinkphp5.x全版本任意代码执⾏分析全记录0x00 简介2018年12⽉10⽇中午,thinkphp官⽅公众号发布了⼀个更新通知,包含了⼀个5.x系列所有版本存在被getshell的⾼风险漏洞。

吃完饭回来看到这个公告都傻眼了,整个tp5系列都影响了,还是getshell。

(以下截图为后截图,主要是想讲⼀下从⽆到有,如何分析漏洞,整个过程是怎么样的。

)0x01 漏洞原理下午睡醒,赶紧起来分析漏洞。

结合官⽅公告说的由于对控制器名没有⾜够的检测,再查看官⽅git commit信息拉⼀个tp下来,⽤的是tp 5.1.29的版本,windows+phpstudy ⼀把梭,搭建好环境。

在官⽅修改的地⽅加断点(thinkphp\library\think\route\dispatch\Module.php),加载默认的控制器来分析。

请求:http://127.0.0.1/index.php/index/index/index命中断点。

⼀步步跟进controller的⾛向,发现在同⽂件下的 exec函数,实例化控制器跟进controller⽅法,thinkphp\library\think\App.php使⽤parseModuleAndClass⽅法来解析,继续跟进分析⼀下代码,发现会有⼀个判断,当控制器名中包含了反斜杠,就会直接返回,继续跟踪。

此处没有包含,所以会进⼊下⾯的判断,最后使⽤parseClass来解析,跟如parseClass函数发现进过parseName之后index变成了⾸字母⼤写,原因是经过了命名风格转换。

最后会将命名空间等进⾏拼接返回我们带命名空间的完整类名。

跟进,回到了controller⽅法,此时判断类是否存在,不存在会触发⾃动加载类。

之后就是实例化类,使⽤反射来调⽤类的相应⽅法了。

(偷懒省略掉了,主要是介绍⼀下分析的过程)⼤概流程摸清楚了,那么这个漏洞是怎么触发的呢?在跟踪的时候我们发现,类名都是带有完整的命名空间的,⽽命名空间恰好就是使⽤反斜杠来划分,结合那⼀个判断代码:反斜杠是否存在,直接返回类名的操作。

PHP文件包含漏洞详解

PHP文件包含漏洞详解

PHP文件包含漏洞详解(1)一、什么才是”远程文件包含漏洞”?回答是:服务器通过php的特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从而可以去包含一个恶意文件,而我们可以构造这个恶意文件来达到邪恶的目的。

涉及到的危险函数:include(),require()和include_once(),require_once()Include:包含并运行指定文件,当包含外部文件发生错误时,系统给出警告,但整个php文件继续执行。

Require:跟include唯一不同的是,当产生错误时候,include下面继续运行而require停止运行了。

Include_once:这个函数跟include函数作用几乎相同,只是他在导入函数之前先检测下该文件是否被导入。

如果已经执行一遍那么就不重复执行了。

Require_once:这个函数跟require的区别跟上面我所讲的include和include_once是一样的。

所以我就不重复了。

php.ini配置文件:allow_url_fopen=off 即不可以包含远程文件。

Php4存在远程&本地,php5仅存在本地包含。

二、为什么要包含文件?程序员写程序的时候,不喜欢干同样的事情,也不喜欢把同样的代码(比如一些公用的函数)写几次,于是就把需要公用的代码写在一个单独的文件里面,比如 share.php,而后在其它文件进行包含调用。

在php里,我们就是使用上面列举的那几个函数来达到这个目的的,它的工作流程:如果你想在 main.php里包含share.php,我将这样写include(“share.php”)就达到目的,然后就可以使用share.php中的函数了,像这个写死需要包含的文件名称的自然没有什么问题,也不会出现漏洞,那么问题到底是出在哪里呢?有的时候可能不能确定需要包含哪个文件,比如先来看下面这个文件index.php的代码:if ($_GET[page]) {include $_GET[page];} else {include ”home.php”;}很正常的一段PHP代码,它是怎么运作的呢?上面这段代码的使用格式可能是这样的:/m4r10/php/index.php?page=main.php或者/m4r10/php/index.php?page=downloads.php结合上面代码,简单说下怎么运作的:1.提交上面这个URL,在index.php中就取得这个page的值($_GET[page])。

安全测评漏洞分析报告

安全测评漏洞分析报告

安全测评漏洞分析报告安全测评漏洞分析报告一、漏洞描述通过对目标系统进行安全测评,发现以下漏洞:1. SQL注入漏洞:存在SQL注入漏洞,攻击者可以通过构造恶意的SQL语句,绕过应用程序的验证机制,直接操作数据库,获取敏感信息或进行非法操作。

2. XSS跨站脚本攻击漏洞:存在未对用户输入进行过滤和转义处理的情况,攻击者可以通过在页面中注入恶意的脚本,窃取用户的敏感信息,或进行其他恶意操作。

3. 文件上传漏洞:存在未对上传文件进行有效的验证和限制的情况,攻击者可以上传恶意的文件,包括木马程序或向量图等,进行远程执行恶意代码或窃取敏感信息。

二、风险分析1. SQL注入漏洞带来的风险:攻击者通过利用SQL注入漏洞,可以绕过用户身份验证,获取数据库中的敏感信息,如用户密码、用户私密数据等。

攻击者还可以通过修改数据库的内容,执行恶意操作,如删除数据、篡改数据等。

2. XSS跨站脚本攻击漏洞带来的风险:攻击者通过注入恶意的脚本代码,可以窃取用户的敏感信息,如用户的登录凭证、用户的个人信息等。

攻击者还可以通过恶意脚本代码进行钓鱼操作,如欺骗用户输入敏感信息或下载恶意软件等。

3. 文件上传漏洞带来的风险:攻击者通过上传恶意文件,可以在目标服务器上执行任意的恶意代码。

攻击者可以窃取服务器上的敏感信息,如用户私密数据、数据库信息等。

攻击者还可以利用上传的恶意文件,在服务器上进行远程控制,进行其他恶意操作。

三、修复建议1. SQL注入漏洞修复建议:应使用参数化查询和输入过滤来防止SQL注入攻击。

对于用户输入的数据,应使用数据库提供的参数化查询功能,避免将用户输入直接拼接到SQL语句中。

同时,还应对用户输入进行严格的过滤和校验,确保输入的数据符合预期的格式和范围。

2. XSS跨站脚本攻击漏洞修复建议:应对用户输入进行有效的过滤和转义处理。

在展示用户输入的内容时,应将特殊字符进行转义,避免被当做脚本执行。

同时,还应限制用户输入的规范,在输入框中禁止输入HTML标记和JavaScript代码。

Jieqi(杰奇)CMSV1.6PHP代码执行0day漏洞EXP漏洞预警-电脑资料

Jieqi(杰奇)CMSV1.6PHP代码执行0day漏洞EXP漏洞预警-电脑资料

Jieqi(杰奇)CMSV1.6PHP代码执行0day漏洞EXP漏洞预警-电脑资料杰奇网站管理系统(简称JIEQI CMS,中国国家版权局著作权登记号:2006SR03382)是一套模块化的网站架设系统,具备简单灵活、性能卓越、安全可靠等特性,。

我们为大家提供了目前最流行的杰奇小说连载系统、杰奇原创漫画系统及数字出版解决方案,并提供各类网站定制服务。

该系统存在多个远程安全漏洞,今天报告的这个是1.6版本的一个远程代码执行漏洞,应该有2年多历史了。

需要有一个能创建圈子的用户。

<?php print_r('+---------------------------------------------------------------------------+Jieqi CMS V1.6 PHP Code Injection Exploitby flyh4tmail: phpsec at hotmail dot comteam: +---------------------------------------------------------------------------+'); /** * works regardless of php.ini settings*/ if ($argc < 5) { print_r('+---------------------------------------------------------------------------+Usage: php '.$argv[0].' host path usernamehost: target server (ip/hostname)path: path to jieqicms uasename: a username who can create groupExample:php '.$argv[0].' localhost /jieqicmsv1.6/ vipuser1 password+---------------------------------------------------------------------------+'); exit; } error_reporting(7); ini_set('max_execution_time', 0); $host = $argv[1]; $path = $argv[2]; $username = $argv[3]; $password = $argv[4]; /*get cookie*/ $cookie_jar_index = 'cookie.txt'; $url1 = "http://$host/$path/login.php"; $params = "password=$password&username=$username&usecookie=86400&submit=%26%23160%3B%B5%C7%26%23160%3B%26%23160%3B%C2%BC%26%23160%3B&action=login&jumpreferer= 1"; $curl1 = curl_init(); curl_setopt($curl1, CURLOPT_URL, $url1); curl_setopt($curl1, CURLOPT_COOKIEJAR, $cookie_jar_index); curl_setopt($curl1, CURLOPT_POST, 1); curl_setopt($curl1, CURLOPT_POSTFIELDS, $params); ob_start(); $data1 = curl_exec($curl1); if ($data1 === FALSE) { echo "cURL Error: " . curl_error($ch); exit('exploit failed'); } curl_close($curl1); ob_clean(); /*get shell*/ $params ='-----------------------------23281168279961Content-Disposition: form-data; name="gname" '; $params .="';"; $params .='eval($_POST[p]);//flyh4t-----------------------------23281168279961Content-Disposition: form-data; name="gcatid" 1-----------------------------23281168279961Content-Disposition: form-data; name="gaudit" 1-----------------------------23281168279961Content-Disposition: form-data; name="gbrief" 1-----------------------------23281168279961--'; $url2 = "http://$host/$path/modules/group/create.php"; $curl2 = curl_init(); $header =array( 'Content-Type: multipart/form-data; boundary=---------------------------23281168279961' ); curl_setopt($curl2, CURLOPT_URL, $url2); curl_setopt($curl2, CURLOPT_HTTPHEADER, $header); curl_setopt($curl2, CURLOPT_COOKIEFILE, $cookie_jar_index); curl_setopt($curl2, CURLOPT_POST, 1); curl_setopt($curl2, CURLOPT_POSTFIELDS, $params); ob_start(); curl_exec($curl2); curl_close($curl2); $resp = ob_get_contents(); //$rs就是返回的内容ob_clean(); preg_match('/g=([0-9]{1,4})/', $resp, $shell); //print_r($shell); //print_r($resp); $url = "http://$host/$path/files/group/userdir/0/$shell[1]/info.php"; echo "view you shell here(password:p)\r\n" ; echo $url;作者:fly@wolvez。

网站安全漏洞报告

网站安全漏洞报告

网站安全漏洞报告概述本报告旨在汇报关于网站安全方面存在的漏洞问题。

通过对该网站的审查和测试,我们发现了以下的安全漏洞。

漏洞详情1. CSRF漏洞:网站存在跨站请求伪造(Cross-Site Request Forgery,CSRF)漏洞。

攻击者可以伪造用户请求,从而执行未经授权的操作。

建议立即修复此漏洞,加入合适的防护措施。

2. XSS漏洞:网站存在跨站脚本攻击(Cross-Site Scripting,XSS)漏洞。

攻击者可以注入恶意脚本代码,从而盗取用户信息或篡改页面内容。

建议对用户输入进行合适的过滤和转义,以防止XSS攻击。

3. 密码安全性弱:网站的用户密码安全性较弱。

建议采用更强的密码策略,如要求用户使用包含字母、数字和特殊字符的复杂密码,并加强密码加密算法。

4. 未安全处理敏感数据:网站在处理敏感数据时存在安全漏洞,如明文存储用户密码、未加密传输敏感信息等。

建议采用合适的加密算法,确保敏感数据的安全处理。

建议措施为了确保网站的安全性,我们建议采取以下措施进行漏洞修复和加强防护。

1. 及时修复漏洞:根据提供的漏洞详情,立即修复存在的漏洞,并确保修复措施的有效性和完整性。

2. 强化用户密码策略:要求用户使用复杂密码,并进行密码强度校验。

同时,定期提示用户修改密码,增加密码的安全性。

3. 注入攻击防护:对用户输入进行严格的过滤和转义,以防止XSS等注入攻击。

确保用户输入的数据安全性。

4. 加密敏感数据:在存储和传输敏感数据时,采用适当的加密算法,确保数据的机密性和完整性。

总结本报告总结了网站存在的安全漏洞问题,并提供了相应的修复和加强防护的建议措施。

请尽快采取措施修复漏洞,以确保网站的安全性和用户的信息安全。

PHP网站常见的安全漏洞

PHP网站常见的安全漏洞

PHP网站常见的安全漏洞PHP网站常见的安全漏洞目前PHP网站常见的漏洞有五种,分别是Session文件漏洞、SQL注入漏洞、脚本命令执行漏洞、全局变量漏洞和文件漏洞。

下面为大家简单介绍一些。

1、session文件漏洞Session攻击是黑客最常用到的攻击手段之一。

当一个用户访问某一个网站时,为了免客户每进人一个页面都要输人账号和密码,PHP 设置了Session和Cookie用于方便用户的使用和访向。

2、SQL注入漏洞在进行网站开发的时候,程序员由于对用户输人数据缺乏全面判断或者过滤不严导致服务器执行一些恶意信息,比如用户信息查询等。

黑客可以根据恶意程序返回的结果获取相应的信息。

这就是月行胃的SQL注入漏洞。

3、脚本执行漏洞脚本执行漏洞常见的`原因是由于程序员在开发网站时对用户提交的URL参数过滤较少引起的,用户提交的URL可能包含恶意代码导致跨站脚本攻击。

脚本执行漏洞在以前的PHP网站中经常存在,但是随着PHP版本的升级,这些间题已经减少或者不存在了。

4、全局变量漏洞PHP中的变量在使用的时候不像其他开发语言那样需要事先声明,PHP中的变量可以不经声明就直接使用,使用的时候系统自动创建,而且也不需要对变量类型进行说明,系统会自动根据上下文环境自动确定变量类型。

这种方式可以大大减少程序员编程中出错的概率,使用起来非常的方便。

5、文件漏洞文件漏洞通常是由于网站开发者在进行网站设计时对外部提供的数据缺乏充分的过滤导致黑客利用其中的漏洞在Web进程上执行相应的命令。

假如在lsm.php中包含这样一段代码:include($b.”/aaa.php”.),这对黑客来说,可以通过变量$b来实现远程攻击,可以是黑客自已的代码,用来实现对网站的攻击。

可以向服务器提交 a.php include=http://lZ7.0.0. 1/b.php,然后执行b.php的指令。

下载全文。

常见的操作系统漏洞及解决方法

常见的操作系统漏洞及解决方法

常见的操作系统漏洞及解决方法操作系统功能强大,但同样也会有漏洞会被病毒利用。

下面由店铺整理了常见的操作系统漏洞及解决方法,希望对你有帮助。

常见的操作系统漏洞及解决方法常见的操作系统漏洞一、SQL注入漏洞SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。

在设计程序,忽略了对输入字符串中夹带的SQL指令的检查,被数据库误认为是正常的SQL指令而运行,从而使数据库受到攻击,可能导致数据被窃取、更改、删除,以及进一步导致网站被嵌入恶意代码、被植入后门程序等危害。

通常情况下,SQL注入的位置包括:(1)表单提交,主要是POST请求,也包括GET请求;(2)URL参数提交,主要为GET请求参数;(3)Cookie参数提交;(4)HTTP请求头部的一些可修改的值,比如Referer、User_Agent等;(5)一些边缘的输入点,比如.mp3文件的一些文件信息等。

SQL注入的危害不仅体现在数据库层面上,还有可能危及承载数据库的操作系统;如果SQL注入被用来挂马,还可能用来传播恶意软件等,这些危害包括但不局限于:(1)数据库信息泄漏:数据库中存放的用户的隐私信息的泄露。

作为数据的存储中心,数据库里往往保存着各类的隐私信息,SQL注入攻击能导致这些隐私信息透明于攻击者。

(2)网页篡改:通过操作数据库对特定网页进行篡改。

(3)网站被挂马,传播恶意软件:修改数据库一些字段的值,嵌入网马链接,进行挂马攻击。

(4)数据库被恶意操作:数据库服务器被攻击,数据库的系统管理员帐户被篡改。

(5)服务器被远程控制,被安装后门。

经由数据库服务器提供的操作系统支持,让黑客得以修改或控制操作系统。

(6)破坏硬盘数据,瘫痪全系统。

解决SQL注入问题的关键是对所有可能来自用户输入的数据进行严格的检查、对数据库配置使用最小权限原则。

通常使用的方案有:(1)所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。

漏洞分析报告

漏洞分析报告

漏洞分析报告
标题:漏洞分析报告
1. 引言
介绍分析报告的目的和背景,概述所分析的漏洞的重要性和
影响。

2. 漏洞概述
提供漏洞的基本信息,包括漏洞类型、风险级别、受影响系
统/应用程序和相关的CVE标识。

3. 漏洞分析
对漏洞进行详细分析,包括以下方面内容:
- 漏洞触发条件:介绍漏洞被利用的触发条件,例如输入特
定的数据、特定的用户权限等。

- 漏洞利用方式:描述黑客可以如何利用漏洞来攻击系统/应
用程序。

- 漏洞影响范围:分析漏洞可能造成的影响,例如数据泄露、权限提升或系统崩溃等。

- 漏洞利用示例:提供一个具体的漏洞利用示例,以帮助读
者更好地理解漏洞。

- 漏洞修复建议:针对漏洞提出相应的修复建议,包括修补
程序、配置改进或安全策略调整等。

4. 漏洞验证
通过实际验证,证明漏洞存在,以确保分析结果的准确性和
可靠性。

可以提供漏洞验证过程中使用的测试环境和操作步骤。

5. 漏洞报告
包括对漏洞的推广,包括将该漏洞报告给相关的安全厂商、开发者或组织,以便他们及时修复漏洞。

6. 结论
总结分析报告的主要内容,指出漏洞的严重程度和紧急性,并提出应对策略。

7. 参考文献
引用文献、工具和其他资源,以支持分析报告中提出的观点和建议。

注意事项:
- 报告应该简明扼要,但又包含必要的详细信息。

- 报告应具备逻辑结构,以便读者能够轻松理解。

- 报告应采用客观、中立的态度,不带有个人偏见或情绪化的词语。

PHP-CGI远程代码执行漏洞分析与防范

PHP-CGI远程代码执行漏洞分析与防范

PHP-CGI远程代码执⾏漏洞分析与防范CVE-2012-1823出来时据说是“PHP远程代码执⾏漏洞”,曾经也“轰动⼀时”,当时的我只是刚踏⼊安全门的⼀个⼩菜,直到前段时间tomato师傅让我看⼀个案例,我才想起来这个漏洞。

通过在中对这个漏洞环境的搭建与漏洞原理的分析,我觉得还挺有意思的,故写出⼀篇⽂章来,和⼤家分享。

⾸先,介绍⼀下PHP的运⾏模式。

下载PHP源码,可以看到其中有个⽬录叫sapi。

sapi在PHP中的作⽤,类似于⼀个消息的“传递者”,⽐如我在《》⼀⽂中介绍的fpm,他的作⽤就是接受Web容器通过fastcgi协议封装好的数据,并交给PHP解释器执⾏。

除了fpm,最常见的sapi应该是⽤于Apache的mod_php,这个sapi⽤于php和apache之间的数据交换。

php-cgi也是⼀个sapi。

在远古的时候,web应⽤的运⾏⽅式很简单,web容器接收到http数据包后,拿到⽤户请求的⽂件(cgi 脚本),并fork出⼀个⼦进程(解释器)去执⾏这个⽂件,然后拿到执⾏结果,直接返回给⽤户,同时这个解释器⼦进程也就结束了。

基于bash、perl等语⾔的web应⽤多半都是以这种⽅式来执⾏,这种执⾏⽅式⼀般就被称为cgi,在安装Apache的时候默认有⼀个cgi-bin⽬录,最早就是放置这些cgi脚本⽤的。

但cgi模式有个致命的缺点,众所周知,进程的创建和调度都是有⼀定消耗的,⽽且进程的数量也不是⽆限的。

所以,基于cgi 模式运⾏的⽹站通常不能同时接受⼤量请求,否则每个请求⽣成⼀个⼦进程,就有可能把服务器挤爆。

于是后来就有了fastcgi,fastcgi进程可以将⾃⼰⼀直运⾏在后台,并通过fastcgi协议接受数据包,执⾏后返回结果,但⾃⾝并不退出。

php有⼀个叫php-cgi的sapi,php-cgi有两个功能,⼀是提供cgi⽅式的交互,⼆是提供fastcgi⽅式的交互。

也就说,我们可以像perl⼀样,让web容器直接fork⼀个php-cgi进程执⾏某脚本;也可以在后台运⾏php-cgi -b 127.0.0.1:9000(php-cgi作为fastcgi 的管理器),并让web容器⽤fastcgi协议和9000交互。

漏洞分析报告

漏洞分析报告

漏洞分析报告综述:本次漏洞分析报告旨在深入探讨现代社会中的漏洞问题。

漏洞即系统或技术中的缺陷或弱点,存在漏洞将导致安全风险。

在这个信息社会中,漏洞的分析和对策显得尤为重要。

本文将从多个方面进行漏洞的分析与防护建议。

一、网络安全漏洞分析1. 从技术层面看漏洞网络安全漏洞是指网络设备、系统软件或应用等方面存在的安全隐患。

在网络快速发展的今天,隐患也越来越多。

例如,存储在云端的大量用户数据面临被黑客入侵的危险,系统中弱密码的使用、安全更新的滞后等都是潜在的风险源。

2. 从人为因素看漏洞虽然技术层面的漏洞是网络安全的一大隐患,但人为因素同样不容忽视。

比如,人们对密码保护的忽视,或是恶意的社会工程攻击,都可能导致用户信息的泄露。

因此,提高员工的安全意识和加强教育培训尤为重要。

二、软件漏洞分析1. 常见的软件漏洞类型软件漏洞可以分为多类,最常见的是缓冲区溢出漏洞、代码注入漏洞以及后门等。

缓冲区溢出攻击是黑客利用程序设计错误,将超出设计边界的数据输入到缓冲区中,以获取系统权限。

代码注入漏洞则是黑客通过在受攻击的应用程序中注入恶意代码,实现远程控制。

了解这些常见漏洞类型对于增强软件安全具有重要意义。

2. 漏洞利用与修复一旦软件漏洞被黑客发现,迅速修复是至关重要的。

软件供应商应通过发布安全补丁来修复漏洞,并及时向用户通报。

同时,用户也应保持软件的及时更新,减少漏洞被利用的风险。

三、物理安全漏洞分析1. 物理安全漏洞与防范物理安全漏洞是指在现实世界中的物理环境中存在的安全隐患。

例如,一些企业的服务器房门未经锁定,容易受到恶意人员的潜入,从而导致系统被入侵。

因此,加强物理安全措施,比如监控系统的设置与维护、严格的门禁管理,对于保护重要设备和数据的安全至关重要。

2. 社交工程与物理安全社交工程是黑客利用人们的社交心理进行欺骗的一种手段。

在物理安全领域,如果不加以警惕,社交工程攻击也可能导致物理安全漏洞。

比如,黑客通过伪装维修人员或其他身份,进入特定区域实施非法操作。

论PHP常见的漏洞WooYun知识库

论PHP常见的漏洞WooYun知识库

论PHP 常见的漏洞WooYun 知识库首先拿到一份源码 肯定是先install 上。

而在安装文件上又会经常出现问题。

一般的安装文件在安装完成后 基本上都不会自动删除这个安装的文件 我遇到过的会自动删除的好像也就qibocms 了。

其他的基本都是通过生成一个lock 文件 来判断程序是否安装过了 如果存在这个lock 文件了 就会退出了。

这里首先 先来说一下安装文件经常出现的问题。

根本无验证。

这种的虽然不多 但是有时还是会遇到个。

在安装完成后 并不会自动删除文件 又不会生成lock 来判断是否安装过了。

导致了可以直接重装过例子: WooYun: PHPSHE B2C 重装。

安装file因为install 一般都会有step 步骤啥的。

Step 1 check 啥啥 step 2 是安装啥的。

而一些cms 默认step 是1 而step 又是GET 来的 而他check lock 的时候就是在step1里面。

这时候如果我们直接用GET 提交step 2 那么就直接进入下一步了 就没check lock 了。

例如某cms 中的安装文件1 2 3 4 5 6 7 8 9 if (empty ($step)){$step = 1;//当用户没有提交step 的时候 赋值为1}require_once ("includes/inc_install.php");$gototime = 2000;/*------------------------显示协议文件------------------------*/10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 if ($step == 1) //当1才检测lock{if (file_exists('installed.txt')){echo '<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/></head><body>你已经安装过该系统,如果想重新安装,请先删除install 目录下的 installed.txt 文件,然后再安装。

PHP常见漏洞的防范措施

PHP常见漏洞的防范措施

PHP常见漏洞的防范措施PHP常见漏洞的防范措施目前,基于PHP的网站开发已经成为目前网站开发的主流,下面整理了一些PHP常见漏洞的防范措施,希望对大家有所帮助!1、对于Session漏洞的防范从前面的分析可以知道,Session攻击最常见的就是会话劫持,也就是黑客通过各种攻击手段获取用户的Session ID,然后利用被攻击用户的身份来登录相应网站。

为此,这里可以用以下几种方法进行防范:一是定期更换Session ID,更换Session ID可以用PHP自带函数来实现;二是更换Session名称,通常情况下Session的默认名称是PHPSESSID,这个变量一般是在cookie中保存的,如果更改了它的名称,就可以阻档黑客的部分攻击;三是对透明化的Session ID进行关闭处理,所谓透明化也就是指在http请求没有使用cookies来制定Session id时,Sessioin id使用链接来传递.关闭透明化Session ID可以通过操作PHP.ini文件来实现;四是通过URL传递隐藏参数,这样可以确保即使黑客获取了session数据,但是由于相关参数是隐藏的,它也很难获得Session ID变量值。

2、对SQL注入漏洞的防范黑客进行SQL注入手段很多,而且灵活多变,但是SQL注人的共同点就是利用输入过滤漏洞。

因此,要想从根本上防止SQL注入,根本解决措施就是加强对请求命令尤其是查询请求命令的过滤。

具体来说,包括以下几点:一是把过滤性语句进行参数化处理,也就是通过参数化语句实现用户信息的输入而不是直接把用户输入嵌入到语句中。

二是在网站开发的时候尽可能少用解释性程序,黑客经常通过这种手段来执行非法命令;三是在网站开发时尽可能避免网站出现bug,否则黑客可能利用这些信息来攻击网站;仅仅通过防御SQL注入还是不够的,另外还要经常使用专业的漏洞扫描工具对网站进行漏洞扫描。

3、对脚本执行漏洞的防范黑客利用脚本执行漏洞进行攻击的手段是多种多样的,而且是灵活多变的,对此,必须要采用多种防范方法综合的手段,才能有效防止黑客对脚本执行漏洞进行攻击。

「原创」萌新也能看懂的ThinkPHP3.2.3漏洞分析

「原创」萌新也能看懂的ThinkPHP3.2.3漏洞分析

「原创」萌新也能看懂的ThinkPHP3.2.3漏洞分析ThinkPHP是⼀个快速、兼容⽽且简单的轻量级国产PHP开发框架,可以⽀持Windows/Unix/Linux等服务器环境,正式版需要PHP5.0以上版本⽀持,⽀持MySql、PgSQL、Sqlite多种数据库以及PDO扩展。

⽹上关于ThinkPHP的漏洞分析⽂章有很多,今天分享的内容是 i 春秋论坛作者佳哥原创的⽂章。

本⽂是作者在学习ThinkPHP3.2.3漏洞分析过程中的⼀次完整的记录,⾮常适合初学者,⽂章未经许可禁⽌转载!注:i 春秋公众号旨在为⼤家提供更多的学习⽅法与技能技巧,⽂章仅供学习参考。

where注⼊在控制器中,写个demo,利⽤字符串⽅式作为where传参时存在注⼊。

public function getuser(){$user = M('User')->where('id='.I('id'))->find();dump($user);}在变量user地⽅进⾏断点,PHPSTROM F7进⼊,I⽅法获取传⼊的参数。

switch(strtolower($method)) {case 'get' :$input =& $_GET;break;case 'post' :$input =& $_POST;break;case 'put' :if(is_null($_PUT)){parse_str(file_get_contents('php://input'), $_PUT);}$input = $_PUT;break;case 'param' :switch($_SERVER['REQUEST_METHOD']) {case 'POST':$input = $_POST;break;case 'PUT':if(is_null($_PUT)){parse_str(file_get_contents('php://input'), $_PUT);}$input = $_PUT;break;default:$input = $_GET;}break;......重点看过滤函数先利⽤htmlspecialchars函数过滤参数,在第402⾏,利⽤think_filter函数过滤常规sql函数。

网站漏洞情况汇报

网站漏洞情况汇报

网站漏洞情况汇报近期,我们网站的技术团队对网站进行了全面的安全漏洞检测和分析,发现了一些重要的漏洞情况,现将情况汇报如下:首先,我们在网站登录模块中发现了一个严重的安全漏洞。

通过简单的SQL注入攻击,黑客可以轻易地绕过登录验证,获取用户的个人信息甚至篡改数据。

这一漏洞存在的时间较长,可能已经被不法分子利用,给用户信息安全带来了潜在的风险。

其次,在网站的文件上传功能中存在一处漏洞,黑客可以利用这一漏洞上传包含恶意脚本的文件,从而对网站服务器进行攻击或者窃取用户信息。

这一漏洞的存在严重威胁了网站的安全性,需要尽快进行修复。

另外,我们发现网站的跨站脚本漏洞较为严重。

黑客可以通过在网站提交表单或者发布内容时注入恶意脚本,从而在用户浏览网站时进行攻击或者窃取用户信息。

这种漏洞的存在严重影响了网站的信誉和用户体验,需要尽快进行修复和加强防护措施。

此外,我们还发现了一些较为常见的安全漏洞,如密码明文存储、未授权访问、目录遍历等问题。

这些漏洞虽然不如前述的漏洞严重,但同样需要引起重视,及时进行修复,以确保网站的安全性和稳定性。

针对以上漏洞情况,我们已经组织技术团队进行了紧急会商,并制定了相应的修复方案和加固措施。

我们将立即对网站进行安全漏洞修复工作,并加强对用户数据的保护和安全防护措施,以确保网站的安全性和稳定性。

在此,我们也呼吁用户加强对个人信息的保护意识,定期修改密码,避免使用简单易猜的密码,以降低被黑客攻击的风险。

同时,我们也欢迎用户对网站的安全问题提出意见和建议,共同维护网站的安全和稳定。

最后,我们将持续关注网站的安全情况,加强漏洞排查和修复工作,确保网站的安全性和稳定性。

我们也欢迎用户监督和指导,共同维护网站的安全和健康发展。

DeDeCMS v5.7最新漏洞分析

DeDeCMS v5.7最新漏洞分析
DeDeCMS v5.7最新漏洞分析
DeDeCMS(织梦CMS)是一款国内比较专业的PHP网站内容管理系统,从04年发行至今,已近七个年头,也经历了无数次的升级和改版,最新版本为8月12更新的V5.7正式版,功能也不断增强。笔者原本以为这应该是一款安全性比较高的CMS系统,然而分析后令人感到迷茫,迷茫国内比较专业的系统经历七年发展,其安全还是令人堪忧。或许网络原本就没有绝对的安全。
绕过防注入。CheckSql()函数定义在/include/dedesql.class.php或/include/dedesqli.class.php数据库类文件中,代码如下:
if (!function_exists('CheckSql'))
{ function CheckSql($db_string,$querytype='select')
fputs(fopen($log_file,'a+'),"$userIP||$getUrl||$db_string||$error\r\n");
exit("<font size='5' color='red'>Safe Alert: Request Error step 2!</font>");
exit;
}
$sql = "UPDATE ` SET `groupid`='{$membergroup}' WHERE `fid`='{$mid}' AND `mid`='{$cfg_ml->M_ID}';";
$dsql->ExecuteNoneQuery($sql);

企业网站漏洞整改情况报告

企业网站漏洞整改情况报告

企业网站漏洞整改情况报告前言作为企业的重要组成部分,网站不仅是企业形象的体现,也是与客户、合作伙伴进行信息共享与交流的重要平台。

然而,随着互联网的快速发展,网络安全问题也日益突出。

为了加强企业网站的安全性,我们开展了漏洞整改工作,并向各相关方报告整改情况。

一、漏洞检测为了全面了解企业网站的安全状况,我们委托专业的网络安全团队进行了漏洞检测工作。

通过对网站的系统、代码、网络等方面进行全面扫描和分析,发现了以下漏洞:1. SQL注入漏洞:在网站数据库的查询过程中,未对用户输入的数据进行充分校验与过滤,导致攻击者可以通过构造恶意输入来执行非法的SQL查询,直接威胁到数据库的安全性。

2. 跨站脚本漏洞(XSS):网站在输出用户输入内容时,未对其进行足够的转义与过滤处理,导致攻击者可以注入恶意代码,窃取用户信息或进行其他恶意行为。

3. 未授权访问漏洞:部分敏感目录未设置访问权限控制,攻击者可以直接通过URL访问到敏感信息。

4. 弱密码漏洞:部分系统管理员密码设置过于简单,容易被猜解或暴力破解。

二、漏洞整改措施针对以上发现的漏洞情况,我们采取了以下措施进行整改:1. SQL注入漏洞整改:- 对用户输入数据进行严格的校验和过滤,禁止特殊字符的使用。

- 对所有数据库查询语句进行参数化处理,而不是直接拼接SQL语句。

2. 跨站脚本漏洞(XSS)整改:- 对用户输入的内容进行有效的过滤和转义处理,确保输出的内容不包含可执行的恶意代码。

3. 未授权访问漏洞整改:- 对敏感目录进行权限控制,设置访问权限,确保只有授权人员能够访问其中的内容。

- 配置Web服务器的目录访问权限,禁止通过URL直接访问敏感目录。

4. 强化密码策略:- 强制要求所有用户(包括系统管理员和普通用户)定期更改密码,并设置密码复杂度要求。

- 限制登录失败次数,设置账号锁定机制,防止暴力破解。

除了以上整改措施,我们还将定期进行漏洞扫描和漏洞修复工作,以保障网站的安全性。

常见网站安全漏洞及解决方案

常见网站安全漏洞及解决方案

常见网站安全漏洞及解决方案随着互联网的发展,越来越多的人开始使用网站进行各种操作,如购物、社交、金融等。

但是,网络安全风险也在不断增加,很多网站面临着各种安全漏洞。

为了保障用户信息的安全,网站管理员需要注意常见的安全漏洞并采取相应的措施加以解决。

一、SQL注入攻击SQL注入攻击是指黑客利用漏洞通过输入恶意代码或脚本来访问数据库,导致数据库被攻击者篡改,从而破坏或者获取网站内部敏感信息的攻击手法。

例如,黑客通过特定的输入字符串直接访问数据库,使得数据库中的信息毫无保留地被窃取。

为了避免SQL注入攻击,网站管理员需要对输入的数据进行有效的过滤和验证,并将输入的数据与数据库中的数据进行比对,防止恶意攻击者通过SQL注入手法破坏网站数据。

二、跨站脚本攻击(XSS)跨站脚本攻击是指黑客通过前端网站中的恶意脚本,将输入到网站中的信息传输到服务器上,导致信息泄露或被篡改。

例如,黑客在网页中进行脚本注入,用户在该网页进行输入操作时,使得输入的信息被恶意脚本篡改,从而导致信息的损失和泄露。

为了防止跨站脚本攻击,网站管理员需要在前端进行有效的过滤和验证,并对输入数据进行必要的转义处理,防止恶意攻击者通过脚本注入手法破坏网站数据。

三、密码被盗密码被盗是指本应该保密的密码被他人获取,从而导致账户信息被盗窃。

黑客获取密码的方式有多种,例如通过钓鱼网站或钓鱼邮件来获取用户密码,或者利用社交网络关系来获取用户的密码。

为了避免密码被盗,用户需要加强自身的安全意识,不轻易泄露个人密码。

同时,网站管理员需要建立有效的账户安全机制,如定期更改密码、设定强密码限制、采用二步验证等方式来提高账号安全性。

四、DDoS攻击DDoS攻击是指通过恶意攻击者将大量的数据流量强加到服务器上,导致其失去功能,从而瘫痪网站的攻击手法。

例如,黑客借助僵尸网络大量向服务器发送请求,导致服务器无法正常工作并瘫痪。

为了避免DDoS攻击,网站管理员需要在服务器上设置有效的安全防护系统,如Web防火墙、资源分配器等,及时发现和拦截恶意请求,提高网站的安全性和稳定性。

最详尽的PHP整站代码解析

最详尽的PHP整站代码解析

用到这两个变量多。所以干脆定义为常量。方便使用。再多说一个技巧: 定
$CONFIG[rootpath] 但是最好不要这样。为什么呢。因为PHP引擎会先判断 rootpath 是不是常量。如果不是才会认 $CONFIG[rootpath] 是数组。 这样性能上就差了一点点了。 再多说一个技巧: 为什么程序多数都用 引号呢而不用 "" 双引号呢。因为这样效率好, "" 双引号。 php 引擎还会先检查里面是否有变量,如果有就解释。而 '' 单引号不会做这一步的检查。而直接就当成字符窜了。所以效 率上也会有一点点影响哦。 */ $CONFIG['enablephplog'] ? set_error_handler('phpcms_error') : error_reporting(E_ERROR | E_WARNING | E_PARSE); /** $CONFIG['enablephplog'] 是否开启错误日志设置。这个设置在全局配置文件里面.config.inc.php 。 这里使用了 算符 偶最喜欢用了。一些简短的逻辑判断。可以使用 ?: ; 来实现比较简洁 三目运
PHPCMS 整站代码分析讲解(一)
首先我对 PHPCMS 的 头程序文件开始讲解 : include/common.inc.php
这个文件是程序启动的核心文件. [Copy to clip<?php /** 代码讲解分析: 逆雪寒. 2007 - 12 - 20 */ $mtime = explode(' ', microtime()); $phpcms_starttime = $mtime[1] + $mtime[0]; /** 计算脚本开始运行的时间。很常见的写法。最后结算还在程序运行的终点位置。讲到了在给各位说。 */ unset($LANG, $_REQUEST, $HTTP_ENV_VARS, $HTTP_POST_VARS, $HTTP_GET_VARS, $HTTP_POST_FILES, $HTTP_COOKIE_VARS); /** 把 $HTTP_ENV_VARS $HTTP_POST_VARS 全局变量设置为 NULL 因为 php4.1.0 以上默认以 $_POST 来替代。unset 后 防止程序运行在低版本会出现安全等问题。比如变量注入 */ set_magic_quotes_runtime(0); //地球人都知道。关了字符窜入库自动转意 比如 my name is on'x 们关掉吧~哈哈 define('IN_PHPCMS', TRUE); /** 程序入口标记。为什么需要这个东西呢。就好比你进一个小区,保安大哥哥肯定要你签字或是挂个鸟牌证明你是从正门进来 的。防止你翻墙进入去偷东西搞破坏。这个入口标记也有这个功能。 在这里定义了一个常量 IN_PHPCMS 为 TRUE ,然 后我在其他程序文件里面检查这个标记。如果不存在或不为真, 那么就基本可以肯定你这个家伙是个小偷来的。 人可能翻墙进入。但程序怎么翻墙呢。只要在 php.ini 文件里面激活 allow_url_fopen 选项,include() 就可以包含 URL 地址了。你想下如果你有个 放密码的 PHP 文件。如果给人家 include 了 以后。你怕不怕。 */ define('PHPCMS_ROOT', str_replace("\\", '/', substr(dirname(__FILE__), 0, -8))); /** 为了程序产品的跨平台。自动获取程序的安装目录路径 ,定义为 PHPCMS_ROOT 常量。方便以后程序使用。建议大家都这 样做哦 */ require PHPCMS_ROOT.'/include/global.func.php'; /** 包含 全局函数 global.func.php 文件。里面放了些程序全局都有需要用的函数.大家看到了吧。 常量 PHPCMS_ROOT 已 经发挥作用。 这样程序给人家发布到了 二级目录下。也不需要人家手动改整站根目录路径了。 自己好好理解下。。。。。 */ $search_arr = array("/ union /i","/ select /i","/ update /i","/ outfile /i","/ or /i"); 1 转成 my name is on \'x 为了最大的程序性能所以我

网站漏洞危害及整改建议

网站漏洞危害及整改建议

网站漏洞危害及整改建议网站漏洞是指在网站的设计、开发、运行或维护过程中存在的各种安全隐患和漏洞。

这些漏洞可能导致用户数据泄露、信息篡改、非法访问和恶意攻击等危害。

了解这些漏洞的危害以及整改建议可以帮助网站管理员更好地保护网站和用户的安全。

网站漏洞的危害:1.信息泄露:网站漏洞可能导致用户的个人信息、账号密码、支付信息等敏感数据被黑客获取并滥用。

这可能会给用户带来巨大的损失,还可能面临身份盗窃和信用卡诈骗等风险。

2.数据篡改:黑客可以利用网站漏洞篡改网站上的数据,比如篡改新闻内容、修改商品价格等,从而误导用户或骗取他们的财产。

3.服务拒绝:一些漏洞可以导致网站无法正常运行,从而无法提供服务给用户。

这可能会导致用户流失,影响网站形象和品牌价值。

4.恶意代码注入:黑客可以通过漏洞向网站注入恶意代码,比如病毒、木马和钓鱼页面等。

用户访问受感染的网站时,可能会被感染恶意软件,进而遭受损失。

整改建议:1. 定期漏洞扫描和安全测试:网站管理员应该定期进行漏洞扫描和安全测试,以及时发现并修复潜在的漏洞。

可以借助各种安全工具和服务,如漏洞扫描工具、Web应用程序防火墙(WAF)等。

2.按需更新和升级软件:及时安装官方提供的安全补丁和更新,以修复已公开的漏洞。

同时,对于不再维护的软件版本,需要尽快升级到最新版本。

3.强化访问控制:合理管理用户权限,给予最低限度的访问权限,对敏感数据进行加密存储和传输。

另外,对于未经验证的用户请求,应该进行严格的输入校验和过滤。

4.增强账号安全性:加强密码策略,要求用户使用复杂的密码并定期更换。

同时,还可以引入多因素身份认证(MFA)机制,以提高账号安全性。

5.监控和日志审计:配置日志监控和审计系统,定期检查异常访问和操作。

对于异常事件,需要及时进行分析和响应,以阻止潜在攻击并收集证据。

6.加强培训和意识教育:对网站管理员和用户进行安全培训,教育他们有关常见的网络攻击和安全防范知识,提高其安全意识和技能。

基于PHP的网络安全漏洞分析与防护策略研究

基于PHP的网络安全漏洞分析与防护策略研究

基于PHP的网络安全漏洞分析与防护策略研究1. 研究背景随着互联网的快速发展,网络安全问题日益凸显,各种网络安全漏洞频繁暴露,给信息系统的稳定性和可靠性带来了严重威胁。

PHP作为一种广泛应用于Web开发的脚本语言,其安全性备受关注。

本文旨在通过对基于PHP的网络安全漏洞进行深入分析,探讨有效的防护策略,以提升网络系统的安全性。

2. PHP网络安全漏洞分析2.1 SQL注入攻击SQL注入是常见的网络安全漏洞之一,黑客通过在输入框中输入恶意SQL语句,从而获取数据库中的敏感信息或对数据库进行破坏。

在PHP开发中,未对用户输入数据进行充分过滤和验证是导致SQL注入漏洞产生的主要原因之一。

2.2 XSS跨站脚本攻击XSS攻击是指黑客通过在Web页面中插入恶意脚本代码,使用户在浏览器端执行恶意脚本,从而窃取用户信息或进行其他恶意操作。

在PHP开发中,未对用户输入数据进行适当的转义和过滤是XSS攻击的主要入侵点。

2.3 文件上传漏洞文件上传漏洞是指黑客通过上传包含恶意代码的文件来执行攻击,例如上传木马文件、恶意脚本等。

在PHP开发中,未对上传文件进行类型、大小等限制以及未对上传文件进行充分检测是导致文件上传漏洞产生的原因之一。

3. PHP网络安全防护策略3.1 输入过滤与验证在PHP开发中,对用户输入数据进行严格的过滤和验证是防范SQL注入和XSS攻击的有效手段。

可以通过使用预定义过滤器函数、正则表达式等方式对输入数据进行过滤,确保用户输入符合预期格式。

3.2 输出转义与过滤在PHP输出页面内容时,应该对输出内容进行适当的转义处理,避免恶意脚本被执行。

可以使用htmlspecialchars等函数对输出内容进行转义,确保页面内容不会被当做HTML或JavaScript代码执行。

3.3 文件上传限制与检测针对文件上传漏洞,可以通过设置上传文件类型、大小限制,并对上传文件进行严格检测来提升系统安全性。

同时,在保存上传文件时,建议将文件保存在非Web目录下,避免直接访问执行。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PHPCMS整站系统漏洞分析
(原始稿件,已发表于2010年黑客手册第一季)
(廖坚先)Bykid@广东科干
今天要跟大家分享这个漏洞是版本为phpcms2008SP3 _gbk_20100125的整站系统的,这是个包含漏洞。

立刻进正题,最后再总结分析;
漏洞还是出现在最容易被忽视的wap模块,打开wap文件夹下的index.php文件,关键代码如下:
第14行也就是“include './include/'.$action.'.inc.php';”,程序员很放心的直接把用户提交的$action变量放进了包含文件的路径中,虽然后缀被限制成“.inc.php”,但是有没有想过管理员的管理模块的文件也是后缀为“.inc.php”的呢?而且很多这些模块文件都是用常量“IN_PHPCMS”作为防止直接访问的标识,同时管理员的管理模块的访问权限的检查是在整站根目录的admin.php文件进行的,那样我也就可以放心的包含了。

还有一点值得高兴的是因为是“变异”的包含文件所以有的变量是没有初始化的也就是我们可以控制了。

但“杯具”的是很多模块的功能小模块是通过“switch($action)”来运行的,也就是这类型的文件我们只能找“default”语句块来利用了。

经过双手都数不清双击打开文件检查,找到了一个不算完美的利用方法。

可以包含的文件是“include/fields/box/field_add.inc.php和field_delete.inc.php”,“fields”下的文件都是对表中的字段操作的文件。

这次要进行操作的字段是“phpcms_member_cache”表(PS:这个表是phpcms_member的镜像表,真搞不懂为什么要搞出这个表来)中的“password”字段。

为什么我会说不完美呢,因为是操作的是password字段,不是一个记录,但是却可以达到进入管理后台的目的。

field_add.inc.php和field_delete.inc.php关键代码如下:
接下来说我的思路,首先是通过“field_delete.inc.php”删掉password字段,然后再通过“field_add.inc.php”添加一个默认值为admin的MD5值的password字段,这样所有的记录的password都是admin了(很郁闷吧),不过最后还是可以把“phpcms_member”重新复制到“phpcms_member_cache”表中的。

实践是检验真理的唯一标准。

实践用的是“phpcms2008sp3_gbk_091230”,但打过“phpcms2008_patch_gbk_100125”补丁。

实践要用到的文件如图一:
首先运行“drop_cache_password.bat”删掉删掉password字段,相关文件“drop_cache_password.bat”(内容如图二)和“drop.txt”(内容如图三)。

“drop.txt”提交了变量action(包含的文件),tablename(表的名称),field(字段)。

执行之后如图四表明成功删除表,:
接下来运行“add_cache_password.bat”,相关文件“add_cache_password.bat”(内容如图五)和“add.txt”(内容如图六)。

“add.txt”增加提交了变量fieldtype(字段的类型),maxlength(类型的最大长度),defaultvalue (默认值),执行之后如图七表明成功。

现在看看表“phpcms_member_cache”有没有被改掉,如图八:
最后上传“recoverCache.php”到phpcms的根目录恢复“phpcms_member_cache”表。

如图九运行成功:
再看看“phpcms_member_cache”表如图十:
漏洞的修补,最简单的修补方法是也用switch($action)语句,毕竟wap下要包含的文件就四个;修改后的代码如下(PS:代码没有测试,短短几个语句我觉得是没问题的):
$lang = include './include/lang.inc.php';
if(preg_match('/(mozilla|m3gate|winwap|openwave)/i', $_SERVER['HTTP_USER_AGENT'])) {
header('location:../');
}
wmlHeader($PHPCMS['sitename']);
$action = isset($action) && !empty($action) ? $action : 'index';
switch($action) //修改后代码--开始
{
case 'index':
include './include/index.inc.php';
case 'list':
include './include/list.inc.php';
case 'show_info':
include './include/show_info.inc.php';
case 'show_news':
include './include/show_news.inc.php';
}//修改后代码—结束
$html = CHARSET != 'utf-8' ? iconv(CHARSET, 'utf-8', $html) : $html;
echo str_replace('<br/>', "<br/>\n", $html);
wmlFooter();
?>
最后,大家要是有兴趣可以找更加完美的利用方法。

我只是想证明这个漏洞的严重性,所以就不去继续找更好的方法了。

相关文档
最新文档