荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: roic (病毒小子), 信区: InstallBBS
标  题: [合集]ytht代码 web精华区权限检查漏洞
发信站: 荔园晨风BBS站 (2005年06月17日18:27:58 星期五), 站内信件

☆   1  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 03:37:44 2005

原描述 by chutium@zzu(这个猪头还用这个bug跑到我们站大肆偷窥了一下):

这个本来是我没有权限进去看的封闭俱乐部精华区,但是以前的ytht代码有bug,注意
/groups/GROUP_C//BMClub 这里是两个 // ,如果是一个/ 就进不去了
比如用这个地址
http://wusetu.cn/wusetu.cn/bbs0an?path=/groups/GROUP_C/
就啥隐藏版面的精华区都能给guest我看到并访问了:)

分析产生原因:
    ytht系统精华区采用两种不同的机制来判断目录权限,对于版面精华区,检查对应的版面
权限,来设置精华区,对于其他非版面目录,则仅判断是否为hide目录.
    其判断精华区目录权限时,首先检查是否为版面目录.如判断为非版面目录,则不进行版
面权限判断.
    漏洞产生于版面目录检查过程中.因为浏览器中传递的/ 与 // 甚至是///////相等或者
相似,但目录判断函数在处理/与//或者////过程中存在漏洞.导致利用特殊手段可欺骗系统
,使版面根目录跳过权限判断函数,从而达到越权观看精华区的目的

解决方案:
    1.过虑畸形路径,在nju09/bbs0an.c内添加路径过虑函数
        bbs0an_main()
{
        FILE *fp;
        int index = 0;
        //int visit[2];
        char *ptr, papath[PATHLEN], path[PATHLEN], names[PATHLEN],
            file[80], buf[PATHLEN], title[256] = " ";
        char *board;
        html_header(1);
        changemode(DIGEST);
        check_msg();
        printf("<script src=/function.js></script>\n");
        printf("<body topmargin=0><center>\n");
        strsncpy(path, getparm("path"), PATHLEN - 1);
        if (strstr(path, ".."))
                http_fatal("此目录不存在");
        if (strstr(path, "//"))
              http_fatal("此目录不存在");
        snprintf(names, PATHLEN, "0Announce%s/.Names", path);
        strcpy(papath, path);
        ptr = strrchr(papath, '/');
...........

     此方法可过虑所有//,///,////等非法格式,效果比较明显,但可能会影响正常精华区浏


方法2:更改目录判断函数

在 libythtbbs/announce.c下getbfroma函数更改
添加非法字符过虑
char *
getbfroma(char *path)
{
        static char board[30];
        char *ptr;
        if (*path == '/')
                path++;
        if (!strncmp(path, "0Announce/", 10))
                path += 10;
        if (strncmp(path, "groups/GROUP_", 13))
                return "";
        ptr = strchr(path + 13, '/');
        if (!ptr)
                return "";
while (1)
        {
        if (strncmp(ptr+1, "/", 1) == 0 )
                ptr++;
        else
            break;
        }

        strsncpy(board, ptr + 1, sizeof (board));
        ptr = strchr(board, '/');
        if (ptr)
                *ptr = 0;
        return board;
}



☆   2  ──────────── 我是分割线 ─────────────────☆
发信人: tnds@feeling.smth.org-SPAM.no (拖泥带水), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 16:52:31 2005

测试了一下,fb2000系统同样存在此问题。
【 在 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 原描述 by chutium@zzu(这个猪头还用这个bug跑到我们站大肆偷窥了一下):
: 这个本来是我没有权限进去看的封闭俱乐部精华区,但是以前的ytht代码有bug,注意
: /groups/GROUP_C//BMClub 这里是两个 // ,如果是一个/ 就进不去了
: ...................



☆   3  ──────────── 我是分割线 ─────────────────☆
发信人: KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 18:17:16 2005

  这两种方法修改方法仍然可以被绕开.....
【 在 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 原描述 by chutium@zzu(这个猪头还用这个bug跑到我们站大肆偷窥了一下):
: 这个本来是我没有权限进去看的封闭俱乐部精华区,但是以前的ytht代码有bug,注意
: /groups/GROUP_C//BMClub 这里是两个 // ,如果是一个/ 就进不去了
: ...................



☆   4  ──────────── 我是分割线 ─────────────────☆
发信人: zxtg.bbs@bbs.tju.edu.cn.no.spam (中型太贵), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 18:23:09 2005

啊。。上帝给个办法,难道是像水木那样的%2F?
【 在 KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   这两种方法修改方法仍然可以被绕开.....
: 【 在 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : 原描述 by chutium@zzu(这个猪头还用这个bug跑到我们站大肆偷窥了一下):
: : 这个本来是我没有权限进去看的封闭俱乐部精华区,但是以前的ytht代码有bug,注意
: : /groups/GROUP_C//BMClub 这里是两个 // ,如果是一个/ 就进不去了
: : ...................



☆   5  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 18:22:54 2005

eeee


除非检查每一个目录的权限了
【 在 KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   这两种方法修改方法仍然可以被绕开.....
: 【 在 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : 原描述 by chutium@zzu(这个猪头还用这个bug跑到我们站大肆偷窥了一下):
: : 这个本来是我没有权限进去看的封闭俱乐部精华区,但是以前的ytht代码有bug,注意
: : /groups/GROUP_C//BMClub 这里是两个 // ,如果是一个/ 就进不去了
: : ...................



☆   6  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 18:23:16 2005

9494

kcn给个办法吧
【 在 zxtg.bbs@bbs.tju.edu.cn.no.spam (中型太贵) 的大作中提到: 】
: 啊。。上帝给个办法,难道是像水木那样的%2F?
: 【 在 KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~) 的大作中提到: 】
: :   这两种方法修改方法仍然可以被绕开.....



☆   7  ──────────── 我是分割线 ─────────────────☆
发信人: yuhuan@smth.org-SPAM.no (556), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 18:52:49 2005

你个大黑客!
【 在 KCN (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   这两种方法修改方法仍然可以被绕开.....



☆   8  ──────────── 我是分割线 ─────────────────☆
发信人: weccpafik@smth.org-SPAM.no (冥落金山), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 18:56:39 2005

哈哈,献给yuhuan

http://mathbbs.8866.org/MathBBSAAmAAGHLU/con?B=16&F=M.1103416652.A&T=-190

【 在 yuhuan (556) 的大作中提到: 】
: 你个大黑客!



☆   9  ──────────── 我是分割线 ─────────────────☆
发信人: KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 19:07:18 2005

  比不上yuhuan....
【 在 yuhuan (556) 的大作中提到: 】
: 你个大黑客!



☆  10  ──────────── 我是分割线 ─────────────────☆
发信人: kxn@smth.org-SPAM.no (感谢大家,参见说明档), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 19:10:27 2005

因为 K 核心实在是太伟大了
【 在 KCN (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   这两种方法修改方法仍然可以被绕开.....



☆  11  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 19:10:41 2005

郁闷哦

难道要过滤所有可能的非法url
【 在 KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   比不上yuhuan....
: 【 在 yuhuan (556) 的大作中提到: 】
: : 你个大黑客!



☆  12  ──────────── 我是分割线 ─────────────────☆
发信人: windtear@smth.org-SPAM.no (追求完美 ipcn/ipchina.org  windtear.net), 信
区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 19:18:55 2005

以后注册个k什么n

【 在 kxn (感谢大家,参见说明档) 的大作中提到: 】
: 因为 K 核心实在是太伟大了



☆  13  ──────────── 我是分割线 ─────────────────☆
发信人: chutium@smth.org-SPAM.no (阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 20:04:52 2005

nod,还有bbsanc.c和bbslib.c里的其它函数都有权限检查上的疏漏。

只做上面那两处修改是远远不够的,而且第一种修改根本就是没有意义的,这个漏洞和以前
windows的那个二次解码漏洞差不多,并不是只过滤 / 就可以解决的。

我们站的代码已经基本改好了,我在前面的帖子也提到了,telnet下的代码发在smth了已经
,web下面的比较麻烦,要注意的地方很多,所以还没来得及整理出来具体哪改了……

朱雀mm太心急了,呵呵,不过各位用相关代码的先把这个补上,元旦放假结束前我把我们那
里改的整理出来争取

【 在 KCN (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   这两种方法修改方法仍然可以被绕开.....



☆  14  ──────────── 我是分割线 ─────────────────☆
发信人: chutium@smth.org-SPAM.no (阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 20:05:49 2005

你说对了:)unicode,以前绿盟的那个%1c%c1还是啥的漏洞,就是这个。

【 在 zxtg.bbs@bbs.tju.edu.cn.no.spam (中型太贵) 的大作中提到: 】
: 啊。。上帝给个办法,难道是像水木那样的%2F?



☆  15  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 20:30:09 2005

偶现在准备重写权限检查了:(

【 在 chutium@smth.org-SPAM.no (阿新) 的大作中提到: 】
: nod,还有bbsanc.c和bbslib.c里的其它函数都有权限检查上的疏漏。
: 只做上面那两处修改是远远不够的,而且第一种修改根本就是没有意义的,这个漏洞和以
: 我们站的代码已经基本改好了,我在前面的帖子也提到了,telnet下的代码发在smth了已
: 朱雀mm太心急了,呵呵,不过各位用相关代码的先把这个补上,元旦放假结束前我把我们
: 【 在 KCN (毒中之毒~我已剪短了长发~) 的大作中提到: 】
: :   这两种方法修改方法仍然可以被绕开.....



☆  16  ──────────── 我是分割线 ─────────────────☆
发信人: chutium@smth.org-SPAM.no (阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 20:43:46 2005

【 在 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
:      此方法可过虑所有//,///,////等非法格式,效果比较明显,但可能会影响正常精华区
效果不见得那么明显吧……

: 方法2:更改目录判断函数
: 在 libythtbbs/announce.c下getbfroma函数更改
: 添加非法字符过虑
: char *
: getbfroma(char *path)
: {
:         static char board[30];
:         char *ptr;
:         if (*path == '/')
:                 path++;
:         if (!strncmp(path, "0Announce/", 10))
:                 path += 10;
:         if (strncmp(path, "groups/GROUP_", 13))
:                 return "";
:         ptr = strchr(path + 13, '/');
:         if (!ptr)
:                 return "";
: while (1)
:         {
:         if (strncmp(ptr+1, "/", 1) == 0 )
:                 ptr++;
:         else
:             break;
:         }
:         strsncpy(board, ptr + 1, sizeof (board));
:         ptr = strchr(board, '/');
:         if (ptr)
:                 *ptr = 0;
:         return board;
: }
这个其实是正确的方法。不过可以简化一点
在ptr = strchr(path + 13, '/');前面加一个
while(path[14] == '/')
        path++;
就可以了,而且,绝对不会影响正常的精华区浏览:)



☆  17  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 20:43:32 2005

目前是默认允许查看精华区,权限检查不通过不允许查看

我准备尝试改成默认禁止,然后放权限
【 在 chutium@smth.org-SPAM.no (阿新) 的大作中提到: 】
: 【 在 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: :      此方法可过虑所有//,///,////等非法格式,效果比较明显,但可能会影响正常精华
: 效果不见得那么明显吧……
: : 方法2:更改目录判断函数
: : 在 libythtbbs/announce.c下getbfroma函数更改
: : 添加非法字符过虑
: : char *
: : getbfroma(char *path)
: ...................


☆  18  ──────────── 我是分割线 ─────────────────☆
发信人: chutium.bbs@wusetu.cn (秋天|阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 20:50:20 2005

恩……最好写成统一的函数,这是我想做而没能做的了的……

要注意的

给没有发消息或者邮件权限的用户,发消息或者发邮件,他就能回复,而且回复邮件的时候
把收件人改一下就可以实现发邮件给任何人。。。

另外还有转贴、转寄什么的一些地方,没有检查用户是不是在转到的版面被封,或者被封全
站,而成功的转载过去文章,还有被禁发信权限的用户可以转寄文章给任何人……等等

以上两个是telnet下和web下做的比较乱的,有些telnet里做了检查,有些web里做了检查…
…写成统一的函数比较好统一调用……
不过我们那里都是陆陆续续改的,现在整理起来比较麻烦,也就放弃了去整合到一个函数里
了,反正已经实现了:p

另外就是精华区和个人文集的权限检查,在我的总结里也写了一些,尤其是telnet里精华区
的转寄和访问时的。。。web下的你也知道了,还有要注意web下的个人文集,没有实现对自
己的<HIDE>目录的访问。。。这个我做了,一会把代码整理一下发出来~

以上这个精华区的,因为涉及的代码文件比较少,做不做函数无所谓了,不过自己好好看看
重新写写还是很支持的:)

【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 偶现在准备重写权限检查了:(
: 【 在 chutium@smth.org-SPAM.no (阿新) 的大作中提到: 】
: : nod,还有bbsanc.c和bbslib.c里的其它函数都有权限检查上的疏漏。
: : 只做上面那两处修改是远远不够的,而且第一种修改根本就是没有意义的,这个漏洞和
: : 我们站的代码已经基本改好了,我在前面的帖子也提到了,telnet下的代码发在smth了
: : 朱雀mm太心急了,呵呵,不过各位用相关代码的先把这个补上,元旦放假结束前我把我



☆  19  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 20:54:57 2005

我这里一直都是乱七八糟的乱改
没有统一做过,这个寒假准备不回家在这里做了

btw:刚才我试验了一下
http://wusetu.cn/wusetu.cn/bbs0an?path=/groups/GROUP_C/%2F%2F

这个貌似也无效了
从来没用过这种攻击方式,所以不熟悉

唉!

代码对我来说一直都是比较棘手的.偶是建筑专业的
【 在 chutium (秋天|阿新) 的大作中提到: 】
: 恩……最好写成统一的函数,这是我想做而没能做的了的……
: 要注意的
: 给没有发消息或者邮件权限的用户,发消息或者发邮件,他就能回复,而且回复邮件的时
: 另外还有转贴、转寄什么的一些地方,没有检查用户是不是在转到的版面被封,或者被封
: 以上两个是telnet下和web下做的比较乱的,有些telnet里做了检查,有些web里做了检查
: 不过我们那里都是陆陆续续改的,现在整理起来比较麻烦,也就放弃了去整合到一个函数
: 另外就是精华区和个人文集的权限检查,在我的总结里也写了一些,尤其是telnet里精华
: 的转寄和访问时的。。。web下的你也知道了,还有要注意web下的个人文集,没有实现对
: ...................


☆  20  ──────────── 我是分割线 ─────────────────☆
发信人: chutium.bbs@wusetu.cn (秋天|阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 20:56:41 2005

啥叫放权限?就是不检查权限了么?那不行啊……禁止查看要做,权限检查也要做。要不如
果有人知道隐藏版的版名,直接输入GROUP_?/版名也可以进去的。

从根本上来说,要改bbs0an.c里读item那个anc_readitem里,判断是否有read_perm,而且
要在做这个判断前做一个检查,看是不是dir(file_isdir()),要不随便就去调用
read-perm的话可能会搞出大乱子……

【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 目前是默认允许查看精华区,权限检查不通过不允许查看
: 我准备尝试改成默认禁止,然后放权限
: 【 在 chutium@smth.org-SPAM.no (阿新) 的大作中提到: 】
: : 效果不见得那么明显吧……
: : ...................



☆  21  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 20:59:52 2005

不是

我得意思是
首先设置所有精华区目录不可见,然后对应相应权限允许读取

这样的话,权限检查旧好做多了

【 在 chutium (秋天|阿新) 的大作中提到: 】
: 啥叫放权限?就是不检查权限了么?那不行啊……禁止查看要做,权限检查也要做。要不
: 从根本上来说,要改bbs0an.c里读item那个anc_readitem里,判断是否有read_perm,而?
: 【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : 目前是默认允许查看精华区,权限检查不通过不允许查看
: : 我准备尝试改成默认禁止,然后放权限



☆  22  ──────────── 我是分割线 ─────────────────☆
发信人: chutium.bbs@wusetu.cn (秋天|阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 21:02:44 2005

这东西其实就是拿时间往里砸……要这么说我们学c那都是几年前的事了……而且基本上考
完数据结构就再没怎么翻过与c有关的书~~语言上没啥太多东西,一些新增加的功能和修改
牵扯出来的其他问题是最可怕的~

【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 我这里一直都是乱七八糟的乱改
: 没有统一做过,这个寒假准备不回家在这里做了
: btw:刚才我试验了一下
: http://wusetu.cn/wusetu.cn/bbs0an?path=/groups/GROUP_C/%2F%2F
: 这个貌似也无效了
: 从来没用过这种攻击方式,所以不熟悉
: 唉!
: 代码对我来说一直都是比较棘手的.偶是建筑专业的
: ...................



☆  23  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 21:04:03 2005


同感
【 在 chutium (秋天|阿新) 的大作中提到: 】
: 这东西其实就是拿时间往里砸……要这么说我们学c那都是几年前的事了……而且基本上?
: 【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : 我这里一直都是乱七八糟的乱改
: : 没有统一做过,这个寒假准备不回家在这里做了
: : btw:刚才我试验了一下
: : http://wusetu.cn/wusetu.cn/bbs0an?path=/groups/GROUP_C/%2F%2F
: : 这个貌似也无效了
: : 从来没用过这种攻击方式,所以不熟悉
: ...................


☆  24  ──────────── 我是分割线 ─────────────────☆
发信人: chutium.bbs@wusetu.cn (秋天|阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 21:04:09 2005

可大部分版面都是普通人可见的啊

貌似做起来基本是一样的,不敢讲,试试吧

【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 不是
: 我得意思是
: 首先设置所有精华区目录不可见,然后对应相应权限允许读取
: 这样的话,权限检查旧好做多了
: 【 在 chutium (秋天|阿新) 的大作中提到: 】
: : 啥叫放权限?就是不检查权限了么?那不行啊……禁止查看要做,权限检查也要做。要
: : 从根本上来说,要改bbs0an.c里读item那个anc_readitem里,判断是否有read_perm,?



☆  25  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 21:06:50 2005


我得想法是,现在可以利用特殊字符跳过版面权限检查,而我要做的就是必须做版面权限检查
,如果跳过得话,默认就是不可见,这样应该根本解决了跳过得问题
【 在 chutium (秋天|阿新) 的大作中提到: 】
: 可大部分版面都是普通人可见的啊
: 貌似做起来基本是一样的,不敢讲,试试吧
: 【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : 不是
: : 我得意思是
: : 首先设置所有精华区目录不可见,然后对应相应权限允许读取
: : 这样的话,权限检查旧好做多了



☆  26  ──────────── 我是分割线 ─────────────────☆
发信人: KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 22:24:32 2005

  主要是需要检查到最终的真实目录,这个比较麻烦。所以要考虑
各种可能的路径写法。另外就是目录权限的实现了,如果要考虑
目录权限嵌套的话,更麻烦,只能一层层查下来。
【 在 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 郁闷哦
: 难道要过滤所有可能的非法url



☆  27  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 22:30:51 2005



好的
【 在 KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   主要是需要检查到最终的真实目录,这个比较麻烦。所以要考虑
: 各种可能的路径写法。另外就是目录权限的实现了,如果要考虑
: 目录权限嵌套的话,更麻烦,只能一层层查下来。
: 【 在 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : 郁闷哦
: : 难道要过滤所有可能的非法url



☆  28  ──────────── 我是分割线 ─────────────────☆
发信人: chutium@smth.org-SPAM.no (阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 22:54:36 2005

我把我们那的代码大致整理了一下,k大侠给看看了...

主要就是在读.Names的时候用
if (*ptr && (file_isdir(buf)) && !has_read_perm(currentuser, ptr))
去判断读出来的一个path是不是目录,用户对这个目录有没有读的权限,这个
has_read_perm函数就是返回 has_read_perm_x 的值,这个函数基本上没有做修改

不知道这个“目录权限嵌套”咋理解?

http://bbs.abcn.net/ZZU/con?B=BBSDev&F=M.1104676845.A

http://bbs.zzu.edu.cn/ZZU/con?B=BBSDev&F=M.1104676845.A

【 在 KCN (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   主要是需要检查到最终的真实目录,这个比较麻烦。所以要考虑
: 各种可能的路径写法。另外就是目录权限的实现了,如果要考虑
: 目录权限嵌套的话,更麻烦,只能一层层查下来。
: ...................



☆  29  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 22:56:09 2005

【 在 chutium@smth.org-SPAM.no (阿新) 的大作中提到: 】
: 我把我们那的代码大致整理了一下,k大侠给看看了...
: 主要就是在读.Names的时候用
: if (*ptr && (file_isdir(buf)) && !has_read_perm(currentuser, ptr))

利用那个getbfroma函数返回"//"返回的是一个0或者空
这个判断应该没有作用啊

: 去判断读出来的一个path是不是目录,用户对这个目录有没有读的权限,这个has_read_p
: 不知道这个“目录权限嵌套”咋理解?
: http://bbs.abcn.net/ZZU/con?B=BBSDev&F=M.1104676845.A
: http://bbs.zzu.edu.cn/ZZU/con?B=BBSDev&F=M.1104676845.A
: 【 在 KCN (毒中之毒~我已剪短了长发~) 的大作中提到: 】
: ...................


☆  30  ──────────── 我是分割线 ─────────────────☆
发信人: chutium.bbs@wusetu.cn (秋天|阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 23:17:44 2005

啥?……

char *getbfroma(char *path)
明显是返回一个字符串啊……

再者我说的不仅仅是修补那个带多余/的漏洞了,我是在说如何对一个精华区目录的权限进
行检查……
/那个很好解决啊,就是ptr++一下就可以跳过了,我发在bbs.zzu.edu.cn的里已经说到了

我这个修改的作用是在读.Names的时候就把没有读权限的版面隐藏掉,不知道我说明白没。
。。是在读.Names的时候用的……

当然,只把版面隐藏掉是不够的,如果对方知道这个版面的英文名,还是可以进去,所以隐
藏不能读取的版面上第一步,第二步就是还要在bbs0an.c里判断打开的版面是不是有读取权
限。

然后只在bba0an里检查了权限也是不够的,因为如果有nb人士神通广大,知道隐藏版面里的
某个文件的文件名,他就可以用bbsanc去打开他本不能看到的文件。所以在bbsanc.c里也要
加权限检查…………这就是第三步。

我整理的那个文章也是按照这个顺序把我们对这几个代码的修改发出来的。

over.

【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 【 在 chutium@smth.org-SPAM.no (阿新) 的大作中提到: 】
: : 我把我们那的代码大致整理了一下,k大侠给看看了...
: : 主要就是在读.Names的时候用
: : if (*ptr && (file_isdir(buf)) && !has_read_perm(currentuser, ptr))
: 利用那个getbfroma函数返回"//"返回的是一个0或者空
: 这个判断应该没有作用啊
: : 去判断读出来的一个path是不是目录,用户对这个目录有没有读的权限,这个has_read
: : 不知道这个“目录权限嵌套”咋理解?
: ...................



☆  31  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 23:34:57 2005


我明白你的意思了:)
我是说
char *getbfroma(char *path)返回的是版面名称
而我们所说的漏洞是利用两个或者多个/来跳过版面权限检查
而漏洞产生于char *getbfroma(char *path)这个函数
当发送类似groups/GROUP_*//之类字符串的时候,判断返回的版面名称为 0
具体作用是这句:
strsncpy(board, ptr + 1, sizeof (board));
        ptr = strchr(board, '/');
*【1;31m        if (ptr)
         *【1;31m       *ptr = 0;
        return board;
我不是很明白这句的作用,但是就是这句话导致//返回的目录是0,猜想是去掉
groups/GROUP_*//版面名/.....用的

而bbs0an_main()中
if (*ptr && !has_read_perm(currentuser, ptr))
根据返回的版面名称判断权限
因为getbfroma的问题。造成所有利用//制造的url都不会检查权限
所以我改了一下getbfroma
因为在bbs0an_main()中,无论是浏览目录还是文件,只要是精华区url都会通过这个函数判
断一下文件或者目录所属版面的权限。

【 在 chutium (秋天|阿新) 的大作中提到: 】
: 啥?……
: char *getbfroma(char *path)
: 明显是返回一个字符串啊……
: 再者我说的不仅仅是修补那个带多余/的漏洞了,我是在说如何对一个精华区目录的权限?
: /那个很好解决啊,就是ptr++一下就可以跳过了,我发在bbs.zzu.edu.cn的里已经说到了
: 我这个修改的作用是在读.Names的时候就把没有读权限的版面隐藏掉,不知道我说明白没
: 当然,只把版面隐藏掉是不够的,如果对方知道这个版面的英文名,还是可以进去,所以
: 然后只在bba0an里检查了权限也是不够的,因为如果有nb人士神通广大,知道隐藏版面里
: ...................


☆  32  ──────────── 我是分割线 ─────────────────☆
发信人: chutium.bbs@wusetu.cn (秋天|阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  2 23:57:36 2005

呼呼,if (*ptr && !has_read_perm(currentuser, ptr))是不行的,我开始也是这么做的
,没有考虑到非目录不能带进去给has_read_perm的问题,导致有些文件也不能出现在精华
区列表里了。

bbs0an.c里做这个判断必须要加(file_isdir(buf))的,bbs0an.c里不会显示文件内容,只
会读.names去列出标题

判断一个文件所在的版面是不是能被读应该在bbsanc.c里做啊

【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 嗯
: 我明白你的意思了:)
: 我是说
: char *getbfroma(char *path)返回的是版面名称
: 而我们所说的漏洞是利用两个或者多个/来跳过版面权限检查
: 而漏洞产生于char *getbfroma(char *path)这个函数
: 当发送类似groups/GROUP_*//之类字符串的时候,判断返回的版面名称为 0
: 具体作用是这句:
: strsncpy(board, ptr + 1, sizeof (board));
:         ptr = strchr(board, '/');
:         if (ptr)
:                 *ptr = 0;
:         return board;
: 我不是很明白这句的作用,但是就是这句话导致//返回的目录是0,猜想是去掉groups/GR
: 而bbs0an_main()中
: if (*ptr && !has_read_perm(currentuser, ptr))
: 根据返回的版面名称判断权限
: 因为getbfroma的问题。造成所有利用//制造的url都返回版面名称为0,结果不会进行检?
: 所以我改了一下getbfroma
: 因为在bbs0an_main()中,无论是浏览目录还是文件,只要是精华区url都会通过这个函数
: 【 在 chutium (秋天|阿新) 的大作中提到: 】
: : 啥?……
: : char *getbfroma(char *path)
: : 明显是返回一个字符串啊……
: : 再者我说的不仅仅是修补那个带多余/的漏洞了,我是在说如何对一个精华区目录的权?
: : /那个很好解决啊,就是ptr++一下就可以跳过了,我发在bbs.zzu.edu.cn的里已经说到
: : 我这个修改的作用是在读.Names的时候就把没有读权限的版面隐藏掉,不知道我说明白
: : 当然,只把版面隐藏掉是不够的,如果对方知道这个版面的英文名,还是可以进去,所
: : 然后只在bba0an里检查了权限也是不够的,因为如果有nb人士神通广大,知道隐藏版面
: : ...................



☆  33  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 00:18:52 2005

收到
:)
【 在 chutium (秋天|阿新) 的大作中提到: 】
: 呼呼,if (*ptr && !has_read_perm(currentuser, ptr))是不行的,我开始也是这么做?
: bbs0an.c里做这个判断必须要加(file_isdir(buf))的,bbs0an.c里不会显示文件内容,?
: 判断一个文件所在的版面是不是能被读应该在bbsanc.c里做啊
: 【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : 嗯
: : 我明白你的意思了:)
: : 我是说
: : char *getbfroma(char *path)返回的是版面名称
: ...................


☆  34  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 00:53:19 2005

eee
刚才又来偷看
哼唧

这个(file_isdir(buf))改成(file_isdir(ptr))比较好,否则还是能够直接用文件名来透窥
【 在 chutium (秋天|阿新) 的大作中提到: 】
: 呼呼,if (*ptr && !has_read_perm(currentuser, ptr))是不行的,我开始也是这么做?
: bbs0an.c里做这个判断必须要加(file_isdir(buf))的,bbs0an.c里不会显示文件内容,?
: 判断一个文件所在的版面是不是能被读应该在bbsanc.c里做啊
: 【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : 嗯
: : 我明白你的意思了:)
: : 我是说
: : char *getbfroma(char *path)返回的是版面名称
: ...................


☆  35  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 01:38:49 2005

整理:
只关于透窥隐藏精华区

1.在nju09/bbs0an.c
int
bbs0an_main()
更改
int
bbs0an_main()
{
        FILE *fp;
        int index = 0;
        //int visit[2];
        char *ptr, papath[PATHLEN], path[PATHLEN], names[PATHLEN],
            file[80], buf[PATHLEN], title[256] = " ";
        char *board;
        html_header(1);
        changemode(DIGEST);
        check_msg();
        printf("<script src=/function.js></script>\n");
        printf("<body topmargin=0><center>\n");
        strsncpy(path, getparm("path"), PATHLEN - 1);
       if (strstr(path, "..")|| strstr(path, "/.")||strstr(path, "./")||strstr(p

        在kcn以及chutium提醒下,觉得直接过滤掉危险字串比较保险。
                http_fatal("此目录不存在");

同时在libythtbbs/announce.c内过滤多个 //
char *
getbfroma(char *path)
{
        static char board[30];
        char *ptr;
        if (*path == '/')
                path++;
        if (!strncmp(path, "0Announce/", 10))
                path += 10;
        if (strncmp(path, "groups/GROUP_", 13))
                return "";
        ptr = strchr(path + 13, '/');
        if (!ptr)
                return "";
        while (1)
        {
        if (strncmp(ptr+1, "/", 1) == 0)
                ptr++;
        else
            break;
        }


        strsncpy(board, ptr + 1, sizeof (board));
        ptr = strchr(board, '/');
        if (ptr)
                *ptr = 0;
        return board;
}

ps:个人觉得,问题主要出在这个函数上,这个函数应该改写一下了
基本上这样能从表面上挡住了一些

希望高手们不吝赐教
【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: eee
: 刚才又有人来偷看
: 哼唧
: 【 在 chutium (秋天|阿新) 的大作中提到: 】
: : 呼呼,if (*ptr && !has_read_perm(currentuser, ptr))是不行的,我开始也是这么?
: : bbs0an.c里做这个判断必须要加(file_isdir(buf))的,bbs0an.c里不会显示文件内容?
: : 判断一个文件所在的版面是不是能被读应该在bbsanc.c里做啊
: : ...................
: ...................


☆  36  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 01:52:55 2005

总算搞完了,感谢chutium的帮助

嗯嗯
【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: eee
: 刚才又有人来偷看
: 哼唧
: 【 在 chutium (秋天|阿新) 的大作中提到: 】
: : 呼呼,if (*ptr && !has_read_perm(currentuser, ptr))是不行的,我开始也是这么?
: : bbs0an.c里做这个判断必须要加(file_isdir(buf))的,bbs0an.c里不会显示文件内容?
: : 判断一个文件所在的版面是不是能被读应该在bbsanc.c里做啊
: : ...................
: ...................


☆  37  ──────────── 我是分割线 ─────────────────☆
发信人: chutium.bbs@wusetu.cn (秋天|阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 02:09:05 2005

八成能上转信十大了。。。:p

整理的文档就是那个
http://bbs.zzu.edu.cn/ZZU/con?B=BBSDev&F=M.1104676845.A

基本上把上面提到的修改都做了,还有其它的一些改进

唯一的一个就是(file_isdir(buf))用buf还是ptr不太确定,因为file_isdir跟的参数应该
是一个完整的路径的。。。ptr只是一个版名,我不知道用ptr做参数能不能正常完成功能…

【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 总算搞完了,感谢chutium的帮助
: 嗯嗯
: 【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : eee
: : 刚才又有人来偷看
: : 哼唧
: : ...................



☆  38  ──────────── 我是分割线 ─────────────────☆
发信人: chutium.bbs@wusetu.cn (秋天|阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 02:09:40 2005

这就叫通宵啊…………嘿,小意思小意思……

【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 总算搞完了,感谢chutium的帮助,感谢kcn的批评指导,感谢大家的帮助,我可以睡觉了
: 另外:感谢bbs代码,我又连续2天通宵
: 嗯嗯
: 【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : eee
: : 刚才又有人来偷看
: : 哼唧
: : ...................
: ...................



☆  39  ──────────── 我是分割线 ─────────────────☆
发信人: chutium.bbs@wusetu.cn (秋天|阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 02:14:37 2005

..pfpf

【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 元旦晚上通宵,昨晚通宵,加上今晚到现在
: 【 在 chutium (秋天|阿新) 的大作中提到: 】
: : 这就叫通宵啊…………嘿,小意思小意思……



☆  40  ──────────── 我是分割线 ─────────────────☆
发信人: 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 02:13:27 2005

元旦晚上通宵,昨晚通宵,加上今晚到现在
【 在 chutium (秋天|阿新) 的大作中提到: 】
: 这就叫通宵啊…………嘿,小意思小意思……
: 【 在 朱雀 (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: : 总算搞完了,感谢chutium的帮助,感谢kcn的批评指导,感谢大家的帮助,我可以睡觉?
: : 另外:感谢bbs代码,我又连续2天通宵
: : 嗯嗯
: : ...................



☆  41  ──────────── 我是分割线 ─────────────────☆
发信人: atppp@smth.org-SPAM.no (Big Mouse), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 04:40:31 2005

有个函数叫 realpath...
加上目录权限检查应该就可以了
【 在 KCN (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   主要是需要检查到最终的真实目录,这个比较麻烦。所以要考虑
: 各种可能的路径写法。另外就是目录权限的实现了,如果要考虑
: 目录权限嵌套的话,更麻烦,只能一层层查下来。
: ...................



☆  42  ──────────── 我是分割线 ─────────────────☆
发信人: KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 10:56:18 2005

  看看linux man里面对 realpath的说明...这个函数是有些不好的..
【 在 atppp (Big Mouse) 的大作中提到: 】
: 有个函数叫 realpath...
: 加上目录权限检查应该就可以了



☆  43  ──────────── 我是分割线 ─────────────────☆
发信人: atppp@bbs.stanford.edu-SPAM.no (Big Mouse), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 11:17:13 2005

你是说以前那个缓冲区溢出漏洞吗...
另外这个函数几个平台也没统一,dst缓冲区到底应该留多少要根据平台来判断...
为此php里面还有人争论过是不是php应该自己写一个realpath函数
不过linux+glibc里面用也有问题?
【 在 KCN@smth.org-SPAM.no (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   看看linux man里面对 realpath的说明...这个函数是有些不好的..
: 【 在 atppp (Big Mouse) 的大作中提到: 】
: : 有个函数叫 realpath...
: : 加上目录权限检查应该就可以了



☆  44  ──────────── 我是分割线 ─────────────────☆
发信人: flyriver@smth.org-SPAM.no (江~~每天进步一点点), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 12:01:39 2005

realpath 对精华区目录来说用处不大,不管怎样都需要检查每一级目录的 .Names 文件。

【 在 atppp (Big Mouse) 的大作中提到: 】
: 有个函数叫 realpath...
: 加上目录权限检查应该就可以了



☆  45  ──────────── 我是分割线 ─────────────────☆
发信人: rwayan@smth.org-SPAM.no (阿言), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 13:18:16 2005

难道FreeBSD下面的实现也是有问题的??

【 在 KCN (毒中之毒~我已剪短了长发~) 的大作中提到: 】
:   看看linux man里面对 realpath的说明...这个函数是有些不好的..



☆  46  ──────────── 我是分割线 ─────────────────☆
发信人: atppp@bbs.stanford.edu-SPAM.no (Big Mouse), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 13:23:34 2005

我们是在说同一个问题么...赫赫...
【 在 flyriver@smth.org-SPAM.no (江~~每天进步一点点) 的大作中提到: 】
: realpath 对精华区目录来说用处不大,不管怎样都需要检查每一级目录的 .Names 文件?
: 【 在 atppp (Big Mouse) 的大作中提到: 】
: : 有个函数叫 realpath...
: : 加上目录权限检查应该就可以了



☆  47  ──────────── 我是分割线 ─────────────────☆
发信人: chutium@smth.org-SPAM.no (阿新), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 13:51:52 2005

试了一下,ptr是版名,不能带进去给file_isdir(ptr)的

http://bbs.zzu.edu.cn/ZZU/bbs0an?path=/groups/GROUP_C
这个是 file_isdir(ptr) 的,是不能正确处理的。。。
虽然你现在看的到那个“丫头的小木屋”,但是你进不去

如果用 file_isdir(buf) 就可以正确实现你不能进的版面也不在精华区列表里显示
http://bbs.abcn.net/ZZU/bbs0an?path=/groups/GROUP_C
这个是 file_isdir(buf) 的

检查文件所在版面是否有权限读的都应该在bbsanc.c里做

【 在 朱雀.bbs@wusetu.cn (睡觉§暗黑§魔兽§凤凰涅磐不加人) 的大作中提到: 】
: 这个(file_isdir(buf))改成(file_isdir(ptr))比较好,否则还是能够直接用文件名来透



☆  48  ──────────── 我是分割线 ─────────────────☆
发信人: flyriver@smth.org-SPAM.no (江~~每天进步一点点), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Mon Jan  3 17:22:05 2005

难道不是在讨论精华区目录权限问题?

【 在 atppp@bbs.stanford.edu-SPAM.no (Big Mouse) 的大作中提到: 】
: 我们是在说同一个问题么...赫赫...



☆  49  ──────────── 我是分割线 ─────────────────☆
发信人: Youngod.bbs@wusetu.cn (▓出了名的快▓), 信区: InstallBBS
标  题: Re: ytht代码 web精华区权限检查漏洞
时  间: Sun Jan  9 20:37:03 2005

k叉n

【 在 windtear@smth.org-SPAM.no (追求完美 ipcn/ipchina.org  w 的大作中提到: 】
: 以后注册个k什么n
: 【 在 kxn (感谢大家,参见说明档) 的大作中提到: 】
: : 因为 K 核心实在是太伟大了


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店