主题:如何用绿坝养肉鸡(一) -- 代码ABC
消遣过程中我不断被大正和金惠的开发人员雷到,搞得浑身发痒。
通过抓包分析很容易就看出其软件更新过程。
首先访问一个countuser.asp获取一个动态文件,这个文件很简单只包含一个数字标题(当前是1515),内容只有一句errorcode=5369,估计是他们用来判断更新什么的依据吧。在这里我被雷了好几下(后来也习惯了)。
被雷第一下,asp?天,这是什么时代的技术啊。按互联网日新月异的更新速度,这种技术不说是史前文明,至少也是满清民国的事情了。那么他们的开发工具基本可以确定只有一个Visual Studio 6.0(经典的版本,现在作为收藏正在我书架上的一个角落吸引灰尘)。接着我在这个服务器返回的文件中确定了他们就是用这个软件开发的(其实他们也只能用这个工具,后面还要提及),因为在返回的文件中赫然有一句<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">!很雷吧。
被雷第N下(没数了),从服务器返回的头部看到他们用的Web服务器是Apache 2.2.11并且使用的是Windows服务(32位的版本)。我纳闷,他们有架构师吗?Windows服务器装Apache用php不好,居然用微软已经抛弃的asp,用ASP的话还不如直接用Windows自带的IIS。
后来想想,有点明白了。他们用Visual Studio 6.0也是迫不得已,因为他们的程序必须用C++开发,这样如果使用微软的开发工具的话就只能用这个老掉牙的东西了(新版本的Visual Studio上开发非托管的C++不是他们能掌握的)。而Visual Studio 6.0在网站开发上也就只能开发asp。所以一事不烦二主,就这么决定了。按本网管监资深程序员的猜想,这个开发团队应该是一个技术非常保守的团队。基本上对新技术和新操作系统一窍不通,这点可以从LB在Vista和Win7上的拙劣表现看得出来。
看看访问的URL,我又被小小的雷了一下,在LB提交的数据中赫然出现本机的当前登录用户名,由于这些数据是明码传递,所以用户的登录名是很容易泄露的。不过这点比起后来发现的东西就小儿科了。
接下来LB还要访问一个文件,其路径是/softpatch/vNew.bmp,看起来是一个图片文件。但是里面只有5个字——3.173。这是软件的版本号。这个手法有点熟悉,我手下曾经的一个二流程序员使用过这种方式。问他为什么不返回一个正常页面呢?当时他告诉我,这样在客户端处理起来就比较方便,不用去分析一大堆Html标记。同样的那个手下也是用C++,他对处理字符串的工作非常不熟练。所以我判断LB的开发人员在C++上的功力也不会太深。
果然,稍稍试验一下就证实了我的想法。
待续(接下来是他们第一个Bug)
- 相关回复 上下关系8
🙂赞这句 wwwfarm 字85 2009-06-15 05:02:47
🙂能不能具体的讲讲缓冲区溢出阿? jet 字117 2009-06-12 11:15:01
🙂简单原理 4 代码ABC 字933 2009-06-12 21:32:51
🙂如何用绿坝养肉鸡(二)
🙂开发这个软件的人可怜啊,被您这么分析,不过人家拿钱了 当年万户侯 字0 2009-06-19 07:09:00
🙂被雷了一下 众生相 字103 2009-06-13 09:22:53
🙂VB6 还OK的啦 jet 字74 2009-06-12 11:11:48
🙂要是老掉牙到汇编的程度倒是值得尊敬的了 1 老驴 字344 2009-06-12 07:43:58