卡饭茶舍 | 软件下载专区 | HIPS专区 | 防火墙专区 | 病毒样本区 | 国内杀软专区 | 国外杀软专区 | 卡饭计算机安全软件下载中心
免费的安全盛宴 | 关于安全软件的12个谣言和误会~ 卡巴官方最新正式版 | 官方最新测试版帮助他人,快乐自己 | 助人者,人助之91款国外杀毒软件官方介绍 附优秀文章
论坛常见问题解答 | 相逢在论坛从杀毒软件到文化 | 我们为什么要装防火墙hips新手入门 | 卡饭HIPS教程集合病毒样本区 | 费尔区
发新话题
打印

[技术探讨] 卡巴所有版本离线升级包制备之完美方案

卡巴所有版本离线升级包制备之完美方案

卡巴所有版本离线升级包制备之完美方案

     现有离线升级包制备工具的情况:通用性不好、所需更新文件的复制标准很乱。从而升级不能保证100%成功。下面本人
将提供一种卡巴所有版本离线升级包制备之完美方案。
    此方案的特点为:
1、模拟更新服务器中更新文件的存放环境,从卡巴更新的根源来提取所需更新文件的详细信息;
2、利用这些信息,复制相应的更新所需文件,制备出完美的离线升级包。可以保证100%离线升级成功;
3、用此方案,可以制备出所有卡巴版本的离线升级包。
    不过,此方案要求的技术性比较高。本人对DOS编程熟悉,但用DOS本人无法作出此方案的相应工具。现在将方案发布于
此,希望有编程高手可以将此方案做成相应的工具,以利于使用者能制备出真正的完美离线升级包。。
   下面我将详细说明改方案的情况,在此以KIS6.0.2.621的文件来说明:
   卡巴更新服务器里面的更新文件,都是存放在三个文件夹里面的,分别是: index ,bases和autopatches。其中:
index 表示索引目录,bases表示为病毒库目录,autopatches表示程序、网络模块的补丁目录
   卡巴每次更新,都要调用到XML文件(更新索引文件),每个更新索引文件里面包含各文件的大小、日期、特征等信息。
卡巴都会最开始从index/6/这个服务器路径中下载文件u0607g.xml(不同卡巴版本,最前面的字母会有所不同),然后在下
载其它的*.xml文件。最后再下载别的更新文件。这些xml文件里面的内容,其实就是每次更新文件的信息。具体如下:

一、从index/6/这个服务器路径中下载的更新索引文件u0607g.xml。里面包含所有*0607g.xml文件的信息。如下:
<UpdateFiles
UpdateDate="21052007 0215">
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/av/avc/i386"
  Filename="av-i386-0607g.xml"
  FileDate="21052007 0057" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/as/kis"
  Filename="as-0607g.xml"
  FileDate="21052007 0202" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/ids/i386"
  Filename="ah-i386-0607g.xml"
  FileDate="18052007 1408" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/ids/x64"
  Filename="ah-x64-0607g.xml"
  FileDate="18052007 1418" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/ids/i386-x64"
  Filename="ah-i386-x64-0607g.xml"
  FileDate="18052007 1427" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/aspy"
  Filename="aspy-0607g.xml"
  FileDate="10052007 1553" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/blst"
  Filename="blst-0607g.xml"
  FileDate="16052007 1210"
  MD5="yXVPXuP1jjOFyuoWtE04UA==" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/av/klava/webav"
  Filename="wm-0607g.xml"
  FileDate="09032007 0721" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/pdm"
  Filename="pdm-0607g.xml"
  FileDate="18052007 1432" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/upd"
  Filename="upd-0607g.xml"
  FileDate="10042007 1431" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/info"
  Filename="info-0607g.xml"
  FileDate="10052007 1333" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/pcdb"
  Filename="pcdb-0607g.xml"
  FileDate="11052007 1547" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/av/klava/emu/i386"
  Filename="emu-i386-0607g.xml"
  FileDate="16052007 1706" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/av/klava/wa/i386"
  Filename="wa-i386-0607g.xml"
  FileDate="10052007 0755" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav6"
  Filename="kav6-0607g.xml"
  FileDate="20022007 1213" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav_aol"
  Filename="kav_aol-0607g.xml"
  FileDate="02042007 1140" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav_dt"
  Filename="kav_dt-0607g.xml"
  FileDate="27022007 1109" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav_jp"
  Filename="kav_jp-0607g.xml"
  FileDate="16042007 1153" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav_kpss"
  Filename="kav_kpss-0607g.xml"
  FileDate="26042007 0817" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav_mais"
  Filename="kav_mais-0607g.xml"
  FileDate="12032007 1024" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav_pcss"
  Filename="kav_pcss-0607g.xml"
  FileDate="13042007 1411" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav_rss"
  Filename="kav_rss-0607g.xml"
  FileDate="26042007 1117" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav_stg"
  Filename="kav_stg-0607g.xml"
  FileDate="12032007 0939" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../AutoPatches/kav_xss"
  Filename="kav_xss-0607g.xml"
  FileDate="12032007 0939" />
<FileDescription
  Comp
  UpdateType="desc"
  ServerFolder="../../bases/rt"
  Filename="rt-0607g.xml"
  FileDate="07022007 1106" />
<Registry
  Comp
  UpdateType="KLKEY"
  LocalPath="%DSKM%"
    从电脑中复制上面所有的Filename文件,并保存在每个文件所对应的ServerFolder路径中。在这里,将
路径统一为这种形式:
                 AVP——index/6
                         │
                         ├─bases——/av/avc/i386
                         │        │-/as/kis
                         │        │-/ids/i386
                         │        │-/ids/x64
                         │        │-/ids/i386-x64
                         │        │-/aspy
                         │        │-/blst
                         │        │-/av/klava/webav
                         │        │-/pdm
                         │        │-/upd
                         │        │-/info
                         │        │-/pcdb
                         │        │-/av/klava/emu/i386
                         │        │-/av/klava/wa/i386
                         │        │-/rt
                         │
                         └─AutoPatches——/kav6
                                         │-/kav_aol
                                         │-/kav_dt
                                         │-/kav_jp
                                         │-/kav_kpss
                                         │-/kav_mais
                                         │-/kav_pcss
                                         │-/kav_rss
                                         │-/kav_stg
                                         │-/kav_xss

二、读取刚才所保存的每个xml文件,根据里面的内容(主要是文件),从电脑中复制所有文件到当前目录中。比如说:
upd-0607g.xml这个文件,它就存放在路径AVP/bases/upd子文件夹里面,读取它的内容为:
<UpdateFiles
UpdateDate="10042007 1431">
<FileDescription
  Comp
  UpdateType="base"
  LocalPath="%DataFolder%"
  Filename="updcfg.xml"
  FileSize="20586" />
<Registry
  Comp
  UpdateType="REGISTRY"
  LocalPath="%DSKM%",
然后,将updcfg.xml这个文件从电脑中也复制到当前目录下,即AVP/bases/upd里面。
三、注意ids目录下,三个子文件夹内的文件之间的比较,大部份都是一样的名称。但有些是不同的,这个可以通过查看文件
的大小来区别。在复制是,得将文件的大小考虑进去,不然,可能会将文件存放的路径搞错。

    OK。一个离线升级包制备的完美方案就已经出来了。。接下来的工作,就让编程高手来完成吧。很希望这个完美的升级
包制备工具能早日和大家见面。在此,先谢过那些将方案实践的朋友!

    有什么还不是很明白的,可以和我联系。QQ:441976341




本帖最近评分记录
落霞与孤鹜齐飞,秋水共长天一色。
kav_dt kav_rss这些是做什么用的




TOP

哦,分析的不错啊。有空再说罢 呵呵




不错,支持!



梅,遇寒而发,不肯结春缘。风霜助香味,寒雪显傲骨。君当如梅,自强不息。

TOP

等待高手,辛苦搂住了


TOP

貌似很高深!!


TOP

大概dos可以实现的


TOP

我怎么觉得好像看过了。。


TOP

谢谢楼主,等编程高手


TOP

等待高手,辛苦楼住了


TOP

发新话题
本功能由奇虎问答实现

相关主题

标题 作者 最后发表
"卡饭学院-卡巴斯基系列"资料总索引 剑指七星 2007-09-23
卡巴离线升级包制备工具--完美版 zfznbic 2007-06-01
批处理制作的卡巴所有版本离线升级包制作工具 曾大虾 2007-05-23
4月28日发布最新--卡巴6.0离线升级包通用制备工具WM1.0版 zfznbic 2007-04-14
卡饭论坛