Summary of the invention
Technical matters to be solved by this invention provides a kind of computer security means of defence and system, makes to rely on virus base and software action identification, can move unknown executable module, and the application data of operating system with safety not damaged.
For solving the problems of the technologies described above, technical scheme of the present invention is following:
A kind of computer security means of defence may further comprise the steps:
Generate and safe executable module characteristic of correspondence sign indicating number and class indication sign indicating number at central server, this class indication sign indicating number comprises type codes and name of product sign indicating number;
Set up social district, system region and workspace in client computer, this society district is included in the assigned catalogue of setting up on the client computer disk, and the assigned finger of setting up at registration table; This system region comprises the operating system catalogue; This workspace comprises catalogue and the registration table except that system region is distinguished with society;
When client computer operation process or thread; Calculate the condition code of this process or thread, carry out for the first time in this way, and the local condition code that does not have coupling; Then in central server, retrieve through this condition code; There is the name of product sign indicating number corresponding like central server, then download all corresponding condition codes of this name of product sign indicating number, add local module feature database with this condition code;
For the process or the thread of client computer operation, judge whether following condition is all set up:
The condition code of the executable module that loads is the condition code in the local module feature database;
There is not the network address beyond the access security network address;
Process or thread be not at the assigned catalogue in society district;
If all set up, then process or thread are marked as working attributes: be marked as the process or the thread of working attributes, can carry out all operations to system region and workspace, have only the operating system process just can visit to the society district;
Otherwise; Process or thread are marked as social property: be marked as the process or the thread of social property, except that process or thread place catalogue, can't see any information in workspace; And, be redirected to the assigned finger and the assigned catalogue in society district to registration table and disk operating beyond the society district.
Said generation comprises with the step of executable module characteristic of correspondence sign indicating number of safety: judge the form of executable module, and calculation check with; Calculate the Length Indication of executable module.
Said computer security means of defence can comprise further that also the condition code of the new executable module that the process that will be marked as working attributes automatically or thread produce joins local module feature database.
Said computer security means of defence can comprise further that also prohibition flag is the process or the thread load driver of social property.
Said computer security means of defence can comprise further that also the process that is labeled as social property or thread global application hook return failure when calling.
Said computer security means of defence can comprise further that also the process that is labeled as social property or thread remote thread return failure when injecting;
Said computer security means of defence can comprise further that also prohibition flag is the process of social property or the process process in addition that thread stops being marked as social property, and direct read disk and internal memory.
According to a further aspect in the invention, a kind of computer security guard system is provided, comprises:
Central server, it generates executable module characteristic of correspondence sign indicating number and class indication sign indicating number with safety, and this class indication sign indicating number comprises type codes and name of product sign indicating number;
Computer security protection client, it sets up social district, system region and workspace in client computer, and this society district is included in the assigned catalogue of setting up on the client computer disk, and the assigned finger of setting up at registration table; This system region comprises the operating system catalogue; This workspace comprises catalogue and the registration table except that system region is distinguished with society;
When client computer operation process or thread; Said computer security protection client is calculated the condition code of this process or thread, carries out for the first time in this way, and the local condition code that does not have coupling; Then in central server, retrieve through this condition code; There is the name of product sign indicating number corresponding like central server, then download all corresponding condition codes of this name of product sign indicating number, add local module feature database with this condition code;
For the process or the thread of client computer operation, said computer security protection client judges whether following condition is all set up:
The condition code of the executable module that loads is the condition code in the local module feature database;
There is not the network address beyond the access security network address;
Process or thread be not at the assigned catalogue in society district;
If all set up, then process or thread are marked as working attributes: be marked as the process or the thread of working attributes, can carry out all operations to system region and workspace, have only the operating system process just can visit to the society district;
Otherwise; Process or thread are marked as social property: be marked as the process or the thread of social property, except that process or thread place catalogue, can't see any information in workspace; And, be redirected to the assigned finger and the assigned catalogue in society district to registration table and disk operating beyond the society district.
A kind of computer security means of defence of the present invention and system; Be divided into system region, workspace and society district to client resource; Through the different access authority to these three districts being set for the process or the thread that are marked as different operation attributes, realize the isolation in workspace and society district.For a large amount of unknown executable modules; When operation, all can be labeled as social property; Be marked as the process or the thread of social property, can only carry out read-only operation, every other operation beyond the society district all is redirected to society's district's operation system region and current directory; Owing to can't see workspace information, reached of the isolation of social district with the workspace data.Simultaneously system there is the operation conductively-closed of destruction.Therefore,, can not cause the leakage of any damage or workspace data yet, reach the effect of the viral wooden horse of thorough shielding the workspace data even a large amount of Viruses are arranged.Than higher environment, all right total ban social property process or thread operation can avoid viral wooden horse to utilize this machine that remote machine is attacked like this for security level required.
Embodiment
According to accompanying drawing, provide preferred embodiment of the present invention, and describe in detail below, enable to understand better function of the present invention, characteristics.
Computer security guard system of the present invention comprises central server and computer security protection client.
Central server generates the executable module characteristic of correspondence sign indicating number with safety, and collects these condition codes, as the part of executable module sign, adds the center module feature database.
The form of executable module file comprises com, MZ, NE, LE, PE, and most executable modules are PE forms.Corresponding condition code building method is following:
Calculation check with:
For the executable module of com, MZ form, generally to whole file calculation check with;
For the executable module of NE, LE form, only DOS head and corresponding NE head, LE head are carried out verification and calculating;
For the executable module of PE form, only DOS head and corresponding PE head and joint table are carried out verification and calculating.
2. calculate the Length Indication of executable module:
If the physical length of executable module is no more than 2 bytes, then with the Length Indication of the physical length of executable module as this executable module; Otherwise, through the physical length of executable module is divided by with the signless integer of double byte, thereby obtain the remainder of 2 bytes, with of the Length Indication of this remainder as this executable module.
The verification of calculating is 2 bytes with, Length Indication, and they constitute the condition code of the executable module of 4 bytes together.For example, for executable module qq.exe, its condition code is:
10110000000000000000011100000000。
It will be understood by those of skill in the art that above-mentioned condition code can adopt the additive method structure, as long as executable module can be unique corresponding with this condition code.
In order at central server executable module to be carried out Classification Management and to be convenient to computer security protection client downloads with the relevant condition code of current computer; The executable module sign of each executable module is except the condition code of 4 bytes; The class indication sign indicating number that also has 4 bytes; Generated by central server, this class indication sign indicating number comprises type codes and name of product sign indicating number.
Type codes: consider that 512 types should be enough to therefore arrange 8 positions to the executable module classification.For example, can be with 00110000 expression instant messaging type.
The name of product sign indicating number: consider the diversity of product, 24 of each type arrangements are used to represent name of product.For example, can be with 000000000000000000110001 expression Tengxun instant messaging product.
So each executable module sign comprises 8 bytes, wherein 4 bytes are class indication sign indicating numbers, and other 4 bytes are condition codes.
The generation method of above-mentioned condition code and class indication sign indicating number also is applicable to the executable module that security is uncertain.
After client installs, when moving first can to the current operation system version and installation application software scan.For operating system, directly download and operating system version characteristic of correspondence sign indicating number; For mounted application software; Can calculate 4 byte condition codes of arbitrary executable module under the installation directory; And in central server, retrieve through this condition code; There is the name of product sign indicating number corresponding like central server, then download all corresponding condition codes of this name of product sign indicating number, add local module feature database with this condition code; For the new application software of subsequent installation, also can download the characteristic of correspondence sign indicating number when using for the first time through top method.These condition codes constitute local module feature database.
Set up social district, system region and workspace in client computer after installing client.
System region comprises the operating system catalogue, just is meant other catalogues that Windows or WINNT catalogue and operating system installation produce for Windows operating system.
Society distinguishes the assigned catalogue that is included in each disk partition, and promptly society distinguishes catalogue, and for example the HU119VM catalogue under the root directory for Windows operating system, also comprises all assigned finger in the registration table, and promptly society distinguishes and props up, for example HU119VM branch.
The workspace comprises removes system region and society's outer all catalogues and registration table in district.
Working attributes: in the time of process or thread operation; If the condition code of the executable module that loads is the condition code in the local module feature database; There is not the network address (safe network address is provided by central server) beyond the access security network address simultaneously; The process current directory then is marked as working attributes not in the society district simultaneously.Be marked as the process or the thread of working attributes, can carry out all operations, have only the operating system process just can visit society's district's information to system region and workspace.Process or thread with working attributes all are true operation to the visit of operating system and the operation of file data.
Social property: in the time of process or thread operation; If the condition code of the executable module that loads is the condition code beyond the local module feature database; Or visited the network address beyond the safe network address, or the process current directory is arranged in the society district, then is marked as social property.Be marked as the process or the thread of social property; Except that current directory, can't see any information in workspace and, all be virtual registration table and disk operating beyond the society district; Be redirected to society and distinguish and society's district's catalogue, but be fully transparent for current process or thread.
The society's allocation manager of district in registration table described below for example.To arbitrary registry operations, the courses of action that are reflected to core have only both of these case:
, and
\\\\Registry\\USER\\xxxxxx\\xxxxxx。
Society's district's registry branches fixedly is arranged in the 3rd joint back:
, and
\\\\Registry\\USER\\xxxxxx\\hu119vm\\xxxxxx。
So be labeled as process or the thread of social property revise registration table the time, actual be to modification.
The society's allocation manager of district in disk partition described below for example.To any file partition, this partition root catalogue all can be distributed society's district's catalogue "/hu119vm ".
Module characteristic, web-page requests mode and the residing position of process current directory of the executable module that loads according to process or thread, this process or thread are dynamically labeled to be two operation attributes: working attributes and social property.Process or thread with different attribute have different access client access authorization for resource: the process of social property or thread, except self current directory, can't see workspace information; The process of working attributes and thread (except the operating system process) can't see social district information.So just workspace and the social data of distinguishing have been accomplished the effect of isolating, the process of social property or thread can not actual modification society be distinguished any information in addition simultaneously, have also guaranteed the stable of operating system, remove operating system file.
In order both to guarantee the operation of unknown program, again system region and workspace data are had no destruction simultaneously, therefore process or the thread authority that is labeled as social property is provided with as follows:
A) all drive to load and to be under an embargo, and that is to say process or thread with social property, can only move in application layer, can not installing drive;
B) the global application hook calls, and returns failure;
C) remote thread injects, and returns failure;
D) forbid stopping being marked as process beyond the process of social property;
E) direct read disk and internal memory are under an embargo;
F) except that self catalogue, the file that can not visit the workspace;
G) all write operations to registration table beyond the society district and file all are redirected to society's differentiation and prop up district's catalogue with society.
Introduce for example the visit of the process that is labeled as social property or thread below to client resource:
1. to the write operation of file beyond the society district, all be redirected in society's district's catalogue of current disk partition.As: written document c: the time, filter Driver on FSD can write c:; Want written document d: the time, filter Driver on FSD can write d:.
2. to the read operation of file, except can seeing the system region catalogue, just can only see the information under society district (hu119vm) catalogue under program self current path and each disk partition.As read file c:; Filter Driver on FSD can read earlier c:; Do not exist like this file, just can go to read real file c:.As read file d:; Filter Driver on FSD can directly read d:; Like failure, then directly return failure, because the workspace is not allow process with social property and thread accesses; Catalogue as corresponding in the society district does not exist, and just representes that this document does not exist.
3. to the write operation of registration table, fixing social a differentiation of all being redirected to corresponding registration table is propped up, and society distinguishes to prop up and distributes the face introduction of seing before.As: write registration table, the registration table filtration drive can write; Write the registration plain, the registration table filtration drive can write.
4. to the read operation of registration table.As: read registration table; The registration table filtration drive is Du earlier, then can show disrespect on true Di Fang like failure;
Described in top access file and registration table, realize invisible between workspace and the society district through filter Driver on FSD, through the protection of registration table filtration drive realization to registration table.
For the installation kit with the social property operation, the program of installation all can be write in the society district, handles through merging like this as not, from start menu, just can't see the application program of firm installation.At this time; System process is through merging processing to corresponding start menu catalogue in corresponding catalogue of start menu such as the society district in internal memory; The operating system process just can show the application program of firm installation on start menu like this, other special processings, by that analogy.
With reference to figure 1; The protection flow process of computer security protection client is (convenient for describing as follows; The executable module that condition code is recorded in the local module feature database is defined as known module, and the executable module that condition code is not recorded in the local module feature database is defined as unknown modules):
Start new process: the condition code of calculating 4 bytes of this executable module earlier; Calculate the condition code of this process or thread, carry out for the first time in this way, and the local condition code that does not have coupling; Then in central server, retrieve through this condition code; There is corresponding name of product sign indicating number like central server, then downloads all corresponding condition codes of this name of product sign indicating number, add local module feature database;
For the process or the thread of client computer operation, judge whether following condition is all set up:
The condition code of the executable module that loads is the condition code in the local module feature database;
There is not the network address beyond the access security network address;
Process or thread be not at the assigned catalogue in society district;
If all set up, then process or thread are marked as working attributes: be marked as the process or the thread of working attributes, can carry out all operations to system region and workspace, have only the operating system process just can visit to the society district;
Otherwise; Process or thread are marked as social property: be marked as the process or the thread of social property, except that process or thread place catalogue, can't see any information in workspace; And, be redirected to society's differentiation and prop up district's catalogue with society to registration table and disk operating beyond the society district.
For the new executable module of process that is marked as working attributes or thread generation, the condition code with this executable module joins local module feature database automatically.
Obviously, under above-mentioned instruction, possibly carry out multiple correction and modification, and within the scope of the appended claims, the present invention can implement to be different from specifically described mode to the present invention.