2013 年 12 月 2 日
正在上量子力学课,接到黄老师的电话说院网后台登陆不了,让我马上过去修。于是翘课去了院办,检测了很久,发现原来是 session 变量失效的问题,导致登陆参数传递不了,所以后台登不上去,试过很多次方法,修复不了这一问题,却偶然间发现了木马文件,原来是被黑了,院网代码中被植入了百家乐网站的垃圾信息。
删除了几个垃圾文件,还有三个木马始终删不掉,于是去了网络中心找蔡老师帮忙,蔡老师检测了一下 CPU,发现达到了 90%以上,有个叫 w3wp.exe 的文件占用了系统的大部分 CPU,而且手动停止之后又能自动运行。由于 CPU 占用过高,这时候的 IIS 已经跑不起来了,院网自然也访问不了。蔡老师也没找到解决的方法,叫我回院办给服务器装个杀毒软件杀杀毒,于是我就回院办了。当天下午尝试了很多办法解决 IIS 运行的问题,无果。傍晚的时候黄老师叫了樊学长去帮忙修复,樊学长说 w3wp.exe 是 IIS 运行时候的应用程序,不是病毒,但是同时很多个 w3wp.exe 一起运行占用 CPU 达 90%以上很明显不正常。每次重启之后 CPU 会降低到 20%左右,经过十几分钟之后又会自动上升到 90%以上。我们便是趁着 CPU 较低院网能正常访问的时候去修复 session 失效的问题。既然 session 不能正确传递参数,樊学长想到了用 URL 传递 id 参数的办法,来替代 session 保存登陆信息,但是这样做的不便之处是改动量比较大,每一个后台操作页面都需要写一个参数读取的代码,工作量很大。我们两一直改到晚上 10 点才回宿舍。解决的问题只是暂时性的能登陆进后台,但是不能进行文章添加修改删除的操作。IIS 占用 CPU 过高的问题还是没解决。回宿舍后头痛的要死,躺床上就睡了。2 号,翘课一天。说好的学习呵呵了。。。
2013 年 12 月 3 日
上午还在睡觉被黄老师一个电话叫醒,起来买了点吃的匆匆忙忙跑去院办继续修复院网,上午的工程热力学自然翘了。翘课对于我来说已经是家常便饭了。还是 CPU 占用过高和 session 不能传递参数的问题,我说卸掉 IIS,用 php 重新改写院网,黄老师坚持让我修复 IIS,一天之内恢复院网,为此与她大吵了一架。对于一个程序员而言,维护别人的代码比自己重新设计花的时间要多得多,虽然我极力要求重新设计,但还是拗不过领导,只能妥协,又尝试了很多办法解决 IIS 的问题,无果。再一次去网络中心找蔡老师,蔡老师建议换系统,回来跟黄老师汇报,黄老师要求立刻马上换系统,虽然我给十几台电脑换过系统,但只换过 win7、win8 和 XP,院网服务器用的是 windows 2003 server,我不敢贸然尝试,万一出了什么问题那个责任我负担不起。跟黄老师说我不会,得到了一个白眼。黄老师打电话给戴尔客服,被告知院网服务器过了保修期,需要续保他们才会过来修。后来黄老师又联系上了一个以前负责维护院网的学长,他现在已经毕业参加工作了,那学长很热心,通过远程控制的方式帮我们查找问题,弄了几十分钟也没找到解决办法。于是我联系上了泽韬,他是国软的技术大神,现在负责未来网服务器的维护,泽韬一整天都有课,抽不出时间。最终还是在傍晚的时候来帮忙,检测了一遍,得出的结论还是挂马的问题,说要把木马文件检测出来需要对后台文件一个一个进行检测,可能需要花一个礼拜的时间。我们想到一个权宜之计解决 session 变量传递参数的问题,就是限定登陆 id 为某一个特定的值,只有该 id 对应的用户名才能登陆后台进行相关操作,虽然黄老师还是要求把问题彻底解决,但迫于无奈还是妥协了,要求把 id 设置成她的登陆 id,其他人把新闻发给她由她来发。6 点多的时候,泽韬要回信息学部上课,我们便收工了。3 号,又翘课一天,对院网的修复心灰意冷,暗地下决心,只要这次能把院网修复,我特么就辞职不干了,到现在为止还一毛钱工资没给我,我还每天翘课来搞这堆破事,真特么自找罪受。但是院网毕竟是在我任职期间被黑的,不修好就辞职心里过意不去,还是接着修呗。。。
2013 年 12 月 4 日
上午一二节课是传热学,三四节是量子力学,毫无疑问是翘了的,跑去院办继续修院网,还是老毛病,最主要的两个问题:IIS 启动不正常导致院网不能访问、session 变量不能传递导致后台无法登陆。刚到院办的时候黄老师就问我问题解决了没有,我很大声的跟她说我不想解决了,花时间找别人代码的漏洞还不如我重新设计,我明确的表示我不愿意修复问题,我想重新设计院网。黄老师叹了口气很无奈的答应了,让我去重新设计,要求尽快弄好,要跟原来的院网做的一模一样。顶着巨大的压力我开工了,用的是暑假给武装部做的那网站的模板,把数据插入院网的前台来进行重新设计,刚开始一切挺顺利,前台设计的差不多了,我想登陆后台改一下数据,结果发现登陆不了,仔细研究了一下发现还是 session 的问题,突然之间觉得很绝望,如果 session 问题解决不了,那么不管是用 asp 或者是 php 重新设计,后台还是登陆不了,那么我所做的一切都是无用功。于是停止了重新设计,继续百度 session 失效的解决办法,却一不小心找到了一篇博客,上面说的是因为黑客挂马的问题,在 IIS 根目录下会生成一个后缀名为 asa 的配置文件,这个文件的存在导致 session 失效。抱着试一试的心态我找了一下 IIS 根目录,真的发现了那个.asa 文件,而且有两个,于是我把那两个文件删掉,重启之后登陆院网后台,竟然登上了,一下子都不知道说什么好了,麻痹老子翘课两天半试了那么多种方法,找了好几个大神帮忙都没解决的问题,竟然就在删掉两个文件之后都解决了,真特么操蛋。两天半的时间就这么浪费了。
院网被黑、三天两头崩溃已经是很平常的事了,经常上课时接到黄老师的电话让立刻去院办修复服务器也已经习惯了。通过这两天半修复院网的经历,收获了很多,至少锻炼了我的耐心,毕竟现在成熟很多了,要是以前那性格早就不干了。把这些事写出来也为了以后院网再出现类似的情况知道怎么处理,最主要的还是为了发泄一下压抑两天的心情,许多事情真的无力吐槽,还好挺过来了。本来说这次修好院网之后就辞职不干了的,现在还是得继续干下去,毕竟还没有找到合适的接班人,而且也希望在我任职的阶段把院网重新设计一遍,现在的代码漏洞很多,指不定哪天突然又坏了。
生活如此艰难,说多了都是泪。12 月一定要好好学习。