Linux 版 (精华区)
发信人: don (孤独的人是可耻的), 信区: Linux
标 题: 关于6.22 bbs发生故障一点说明(转载)
发信站: 哈工大紫丁香 (2000年06月23日21:08:47 星期五), 站内信件
【 以下文字转载自 HITNews 讨论区 】
【 原文由 deem 所发表 】
6.22也就是昨天, 先是有人发现邮件全没了, 后来发现有人的好友名单
也全丢了! 这时候! cucme从北京登回来和wugang发现bbs的目录已经被
什么东西删的差不多了, 没有办法,只好紧急决定停机!
停机后, 我和wugang,sun在机房开始查找事故原因.
开始以为bbs被人控制了! 或者有人在系统上做了木马! 查了很长时间
也没有结果, 后来wugang发现bbs的日志中有这样一件事发生的时间和
目录被删时间和相似: "KILL 字谦". 于是我们查找源代码写下这条日
志的地方发现是注册新用户时查找过期id的一段代码, 这时很快想到
有可能是由中文id引起的故障. 于是试着new了一个账号, 果然,发现
终端没有反应了, 而且home下的文件和目录开始一个一个被删了!
到这里总算发现故障原因了, 故障代码如下:
if (!bad_user_id(utmp.userid)) {
sprintf(genbuf, "mail/%c/%s",
toupper(utmp.userid[0]), utmp.userid);
f_rm(genbuf);
sprintf(genbuf, "home/%c/%s",
toupper(utmp.userid[0]), utmp.userid);
f_rm(genbuf);
}
也就是sprintf在处理中文时出现了故障, 转化没有成功,使得指定目录
变成了home, mail, 也就是一顿狂删了! 这是fb2000自己的代码, 现在的问
提时究竟是什么引起的中文id, 事实上,中文id石注册不上的!还有就是如果
上午就有人发现无法注册新账号报告一下bug的话, 这次停机就不会拖这么长
时间了!
--
_|_|_|
_| _| _|_| _|_| _|_|_| _|_|
_| _| _|_|_|_| _|_|_|_| _| _| _|
_| _| _| _| _| _| _|
_|_|_| _|_|_| _|_|_| _| _| _|
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.243.42]
--
※ 修改:·tcpip 於 06月23日21:38:11 修改本文·[FROM: mtftp.hit.edu.cn]
※ 转载:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: 202.118.243.42]
--
※ 转载:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: 202.118.239.63]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.224毫秒