A computer software daemon method and system
By setting the BIOS boot order and administrator password, combined with the detection and recovery mechanisms of miniagent and agent, the problem of protecting and recovering software and data in operating system change scenarios in existing technologies is solved, realizing protection and recovery before the operating system starts, and preventing computer bypass tampering.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- KUNLUN TECH (BEIJING) TECH CO LTD
- Filing Date
- 2022-05-13
- Publication Date
- 2026-07-24
Smart Images

Figure CN115033424B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer firmware technology, and specifically to a computer software protection method and system. Background Technology
[0002] Existing computer software protection often relies on security software, but this approach has several drawbacks, such as: 1) Computer software and its data can be stopped, deleted, or tampered with, leaving critical software and data unprotected. 2) Security software products built on top of the operating system cannot protect or recover software and data in scenarios such as operating system reinstallation, operating system replacement, storage formatting, or hard drive replacement. 3) Security software products built on top of the operating system cannot prevent the computer from deleting or tampering with critical software and data. Summary of the Invention
[0003] In view of this, the present invention provides a computer software protection method and system that can protect and restore software and data in cases such as operating system reinstallation, replacement and formatting.
[0004] The specific technical solution adopted in this invention is as follows:
[0005] A computer software protection method for setting the boot order and administrator password of the computer's Basic Input / Output System (BIOS);
[0006] When the computer starts up, the BIOS checks the computer's operating system version and basic software agent (miniagent), and recovers if the miniagent is abnormal.
[0007] After the computer's operating system starts up, the miniagent detects and protects the software and data, and restores the abnormal software and data to a running state.
[0008] Furthermore, the boot sequence of the BIOS is as follows:
[0009] Step 1: Start the software agent, use the agent to set the BIOS boot order and administrator password, and report the BIOS status to the server.
[0010] Step 2: The computer starts up. The BIOS detects the operating system version and the miniagent, and performs recovery processing for any abnormalities in the miniagent.
[0011] Step 3: Activate the miniagent, perform detection on the agent, and handle any abnormal situations of the agent.
[0012] Step 4: Start the agent, verify and load the protection policy, and detect and run the protected software according to the protection policy.
[0013] Furthermore, in step two, the recovery process for miniagent anomalies is as follows: if miniagent and its configuration file do not exist, the configuration file is written back to the hard disk; if miniagent and its configuration file exist but the verification fails, the configuration file is updated to the correct file.
[0014] Furthermore, in step three, the recovery process for agent anomalies is as follows: if the agent configuration file does not exist, the configuration file is downloaded from the server and its integrity is verified. If the integrity verification is retried more than three times, a download anomaly log is reported to the server. This process is repeated after an interval of one hour until the integrity verification is successful.
[0015] Then, the configuration file is loaded, the monitoring process is started, and communication with the monitoring process is initiated. If communication fails, the existence of the agent and its dependent files is checked. If they do not exist, the agent and its dependent files are downloaded from the server, and their integrity is checked. If they exist but are incomplete, the agent and its dependent files are downloaded from the server again until the number of downloads exceeds three. A download failure log is then reported to the server, and after a ten-minute interval, the configuration file is reloaded, the monitoring process is started, and communication with the monitoring process is initiated.
[0016] A computer software protection system includes a BIOS setting control module and a firmware detection and recovery module for the computer's basic input / output system.
[0017] The control module includes a BIOS control system unit and a BIOS control unit; the control system unit is used to uniformly set the BIOS boot order and administrator password; the BIOS control unit is used to update the BIOS boot order and administrator password.
[0018] The firmware detection and recovery module is used to detect the computer's operating system version and basic software agent (miniagent) when the computer starts up, and to recover the system if the miniagent is abnormal.
[0019] After the computer's operating system starts up, the miniagent detects and protects the software and data, and restores the abnormal software and data to a running state.
[0020] Furthermore, the computer software protection system also includes an agent protection module and a miniagent protection module; the BIOS boot sequence is as follows:
[0021] Step 1: The control module starts the software agent, uses the agent to set the BIOS boot order and administrator password, and reports the BIOS status to the server.
[0022] Step 2: The computer starts up. The firmware detection and recovery module detects the operating system version and the miniagent, and performs recovery processing for any abnormalities in the miniagent.
[0023] Step 3: The miniagent guardian module starts the miniagent, detects the agent, and performs recovery processing for any abnormal situations of the agent;
[0024] Step 4: The agent protection module starts the agent, verifies and loads the protection policy, and detects and runs the protected software according to the protection policy.
[0025] Furthermore, in the firmware detection and recovery module, the recovery process for miniagent anomalies is as follows: if miniagent and its configuration file do not exist, the configuration file is written back to the hard disk; if miniagent and its configuration file exist but the verification fails, the configuration file is updated to the correct file.
[0026] Furthermore, in the miniagent guardian module, the recovery process for agent anomalies is as follows: if the agent configuration file does not exist, the configuration file is downloaded from the server and its integrity is verified. If the integrity verification is retried more than three times, a download anomaly log is reported to the server. This process is repeated after an interval of one hour until the integrity verification is successful.
[0027] Then, the configuration file is loaded, the monitoring process is started, and communication with the monitoring process is initiated. If communication fails, the existence of the agent and its dependent files is checked. If they do not exist, the agent and its dependent files are downloaded from the server, and their integrity is checked. If they exist but are incomplete, the agent and its dependent files are downloaded from the server again until the number of downloads exceeds three. A download failure log is then reported to the server, and after a ten-minute interval, the configuration file is reloaded, the monitoring process is started, and communication with the monitoring process is initiated.
[0028] Beneficial effects:
[0029] (1) A computer software protection method that prevents software from being tampered with or deleted through computer bypass by uniformly setting the boot order and administrator password of the computer's Basic Input / Output System (BIOS). During computer startup, the BIOS checks the computer's operating system version and the basic software agent (miniagent). If the miniagent is abnormal, it is restored. This method not only protects software under the operating system but also protects and restores software and data before the operating system starts, while preventing computer bypass deletion and tampering. It is suitable for software protection in scenarios such as operating system reinstallation, operating system replacement, storage space formatting, and hard drive storage media replacement.
[0030] (2) Through agent protection, it is possible to execute and respond to control commands issued to the BIOS management system, as well as to execute and respond to protection policies against shutdown, tampering, and recovery of third-party application software running on the operating system. Through miniagent protection, it is possible to detect the existence and integrity of agent protection software, as well as to execute protection policies against shutdown, tampering, and recovery of agent protection software. Attached Figure Description
[0031] Figure 1 This is a schematic diagram of a computer software protection system framework according to the present invention.
[0032] Figure 2 This is a flowchart of the BIOS management process in a computer software protection method according to the present invention.
[0033] Figure 3 This is a flowchart illustrating the firmware detection and recovery process in a computer software protection method according to the present invention.
[0034] Figure 4 This is a flowchart of the miniagent protection process in a computer software protection method of the present invention.
[0035] Figure 5 This is a flowchart illustrating the agent protection process in a computer software protection method according to the present invention. Detailed Implementation
[0036] A computer software protection method and system are disclosed, which uniformly sets the boot order and administrator password of the computer's Basic Input / Output System (BIOS). During computer startup, the BIOS checks the computer's operating system version and the basic software agent (miniagent), and recovers from any miniagent malfunctions. After the operating system boots, the miniagent checks the protection software and data, restoring any abnormal software and data to their running state. This method is suitable for software protection in scenarios such as operating system reinstallation, operating system replacement, storage space formatting, and hard drive storage media replacement.
[0037] The present invention will now be described in detail with reference to the accompanying drawings and embodiments.
[0038] A computer software protection method of the present invention includes:
[0039] Step 1: Start the software agent, use the agent to set the BIOS boot order and administrator password, and report the BIOS status to the server.
[0040] This step is part of the BIOS control process, such as... Figure 2 As shown, the specific steps include:
[0041] Step 1.1: The server-side administrator configures BIOS control policies. These policies include: setting the BIOS boot order and updating the BIOS administrator password.
[0042] Step 1.2: Agent startup. The agent receives the BIOS control policy issued by the server.
[0043] Step 1.3: The agent executes BIOS control policies. The agent sets the BIOS boot order and updates the BIOS administrator password.
[0044] Step 1.4: If the setup is successful, report the result to the server. If the setup fails, report the error status to the server.
[0045] Step 2: The computer starts up, and the BIOS checks the operating system version and miniagent, and performs recovery processing for miniagent abnormalities. Recovery processing for miniagent abnormalities involves: if the miniagent and its configuration file do not exist, the configuration file is written back to the hard drive; if the miniagent and its configuration file exist but fail verification, the configuration file is updated to the correct file.
[0046] This step is the firmware detection and recovery process, such as... Figure 3 As shown, the specific steps include:
[0047] Step 2.1: The computer starts up, and the BIOS loads and runs the hard drive driver.
[0048] Step 2.2: The BIOS checks the operating system version information installed on the hard drive.
[0049] Step 2.3: The BIOS checks whether a miniAgent (basic software agent) exists in the operating system-specified storage area on the hard drive.
[0050] If the miniAgent is detected as missing, the BIOS will write the miniAgent stored in the BIOS program to the operating system's designated memory area.
[0051] If miniAgent is detected, proceed to step 2.4.
[0052] Step 2.4: Check if miniAgent is legitimate.
[0053] If the miniAgent is found to be legitimate, proceed to step 2.5.
[0054] If an invalid miniAgent is detected, the BIOS will write the miniAgent stored in the BIOS program to the operating system's designated memory area.
[0055] Step 2.5: Check if the miniAgent software version is consistent with the version stored in the program in the BIOS.
[0056] If the detected miniAgent software version is higher than the version stored in the BIOS program, update the version stored in the BIOS program.
[0057] If the detected miniAgent software version is the same as or lower than the version stored in the BIOS program, proceed to step 2.6.
[0058] Step 2.6: Execute the subsequent startup process normally.
[0059] Step 3: Start miniagent, perform agent checks, and handle agent anomalies. The handling for agent anomalies is as follows: If the agent configuration file is missing, download the configuration file from the server and perform an integrity check. If the integrity check is retried more than three times, report the download error log to the server. Repeat this process after a one-hour interval until the integrity check is successful.
[0060] Then, the configuration file is loaded, the monitoring process is started, and communication with the monitoring process is initiated. If communication fails, the existence of the agent and its dependent files is checked. If they do not exist, the agent and its dependent files are downloaded from the server, and their integrity is checked. If they exist but are incomplete, the agent and its dependent files are downloaded from the server again until the number of downloads exceeds three. A download failure log is then reported to the server, and after a ten-minute interval, the configuration file is reloaded, the monitoring process is started, and communication with the monitoring process is initiated.
[0061] This step is the miniagent daemon process, such as... Figure 4 As shown, the specific steps include:
[0062] Step 3.1: Start miniAgent. Obtain the current computer platform and system version from the BIOS.
[0063] Step 3.2: Check if the Agent configuration file exists in the specified storage area of the local machine.
[0064] If the Agent configuration file exists, miniAgent connects to the server and obtains the checksum (MD5) of the Agent configuration file for the corresponding platform and system version. Proceed to step 3.3.
[0065] If the Agent configuration file is found to be missing, miniAgent connects to the server to download the Agent configuration file corresponding to the platform and system version, including the MD5 checksum.
[0066] Step 3.3: Use a checksum (MD5) to verify file integrity.
[0067] If the verification passes, proceed to step 3.4.
[0068] If a validation failure is detected, check if the number of repetitions has exceeded the limit.
[0069] If the check does not exceed the limit, the miniAgent will repeatedly connect to the server to download the Agent configuration file for the corresponding platform and system version, which includes a checksum (MD5).
[0070] If the check exceeds the limit, report a "download error" to the service log. After a 1-hour interval, proceed to step 3.2.
[0071] Step 3.4: Read the configuration file contents into the computer memory.
[0072] Step 3.5: Start the monitoring process. Read the monitoring process list from memory. Communicate with the monitoring system. Check the Agent's running status.
[0073] If the Agent is found to be functioning correctly, maintain data communication with the monitoring system.
[0074] If the Agent is found to be malfunctioning, the list of process dependency files is read from memory.
[0075] Step 3.6: Based on the process dependency file list, check whether the Agent and its dependent components are stored locally on the computer.
[0076] If the Agent and its dependent components are stored locally on the computer, proceed to step 3.7.
[0077] If the Agent and its dependent components are not found on the local computer, report a "file deleted" log to the server.
[0078] Step 3.7: miniAgent downloads the Agent and its dependent components from the server.
[0079] And check the integrity of the downloaded files.
[0080] If the downloaded file is found to be complete, proceed to step 3.8.
[0081] If the downloaded file is found to be incomplete, a test attempt count will be performed. If the test attempt count is within the limit, a "file deleted" log will be reported to the server.
[0082] If the number of attempts exceeds the limit, report a "download failed" log to the server. At 10-minute intervals, read the list of process dependency files from memory.
[0083] Step 3.8: Start the Agent.
[0084] Step 4: Start the agent, verify and load the protection policy, and detect and run the protected software according to the protection policy.
[0085] This step is the agent daemonization process, such as... Figure 5 As shown, the specific steps include:
[0086] Step 4.1: Enter the computer operating system. Start the Agent software.
[0087] Verify whether the default daemon policy of the Agent software is valid.
[0088] If the protection policy is valid, proceed to step 4.2.
[0089] If the protection policy is invalid, the Agent checks the local system or accesses the network to obtain a valid protection policy.
[0090] Step 4.2: Load the protection policy. Check if all the software and data protected in the policy exist.
[0091] If all the software and data protected in the check policy exist, proceed to step 4.3.
[0092] If the software and data to be protected in the policy do not exist, the Agent checks the local machine or accesses the network to obtain the software and corresponding data.
[0093] Step 4.3: Verify the integrity of the protected software and data.
[0094] If the protected software and data are intact, proceed to step 4.4.
[0095] If the protected software and data are found to be incomplete, proceed to step 4.5.
[0096] Step 4.4: Check if the protected software and data are normal.
[0097] If the protected software and data are found to be normal, proceed to step 4.5.
[0098] If the protected software and data are found to be abnormal, check whether the policy execution conditions are met.
[0099] If the check does not meet the policy execution conditions, proceed to step 4.5.
[0100] When the conditions for policy execution are met, the policy is executed.
[0101] Step 4.5: Check that the protected software is running normally.
[0102] If the protected software is found to be malfunctioning, shut it down and restart it. Report the "software error" log to the server.
[0103] If the protected software is functioning normally, proceed to step 4.6.
[0104] Step 4.6: The agent continues to monitor until a stop command is detected. Then the task ends.
[0105] Unlike security software products that operate on top of the operating system, this invention detects, protects, and recovers software at the firmware level. It protects software not only during operating system operation but also before the operating system boots, preventing bypass deletion and tampering. When software repair fails, pre-configured protection measures are executed. This invention is applicable to scenarios such as operating system reinstallation, operating system replacement, storage formatting, and hard drive replacement.
[0106] Once the protection function is enabled, the BIOS checks the operating system version and the protection software agent during computer startup, restoring it if any agent malfunctions. By controlling the BIOS boot order and administrator password, it prevents software from being tampered with or deleted via a bypass mechanism. After the operating system boots, the agent checks the protection software and data, restoring any malfunctioning software and data to a running state. When software repair malfunctions, it executes policies on the computer terminal according to the server's configured protection policies, such as locking the screen, shutting down, and deleting data.
[0107] Based on the aforementioned computer software protection method, the present invention also provides a computer software protection system, such as... Figure 1 As shown, the computer's basic input / output system (BIOS) settings management module and firmware detection and recovery module are included.
[0108] The management module includes a BIOS management system unit and a BIOS management unit; the management system unit is used to uniformly set the BIOS boot order and administrator password; the BIOS management unit is used to update the BIOS boot order and administrator password.
[0109] The firmware detection and recovery module is used to detect the computer's operating system version and basic software agent (miniagent) when the computer starts up, and to recover if the miniagent is abnormal.
[0110] After the computer's operating system boots up, miniagent detects the protection software and data, and restores any abnormal software and data to a running state.
[0111] The computer software protection system also includes an agent protection module and a miniagent protection module; the process of the computer software protection system performing software protection includes:
[0112] Step 1: The control module starts the software agent, uses the agent to set the BIOS boot order and administrator password, and reports the BIOS status to the server.
[0113] Step 2: The computer starts up, and the firmware detection and recovery module detects the operating system version and miniagent, and performs recovery processing for any abnormal miniagent conditions.
[0114] Step 3: The miniagent guardian module starts miniagent, detects the agent, and performs recovery processing for any abnormal agent situations;
[0115] Step 4: The agent protection module starts the agent, verifies and loads the protection policy, and detects and runs the protected software according to the protection policy.
[0116] In the firmware detection and recovery module, the recovery process for miniagent anomalies is as follows: if miniagent and its configuration file do not exist, the configuration file is written back to the hard disk; if miniagent and its configuration file exist but the verification fails, the configuration file is updated to the correct file.
[0117] In the miniagent daemon module, the recovery process for agent anomalies is as follows: if the agent configuration file does not exist, the configuration file is downloaded from the server and its integrity is verified. If the integrity verification is retried more than three times, a download anomaly log is reported to the server. This process is repeated after an interval of one hour until the integrity verification is successful.
[0118] Then, the configuration file is loaded, the monitoring process is started, and communication with the monitoring process is initiated. If communication fails, the existence of the agent and its dependent files is checked. If they do not exist, the agent and its dependent files are downloaded from the server, and their integrity is checked. If they exist but are incomplete, the agent and its dependent files are downloaded from the server again until the number of downloads exceeds three. A download failure log is then reported to the server, and after a ten-minute interval, the configuration file is reloaded, the monitoring process is started, and communication with the monitoring process is initiated.
[0119] The specific embodiments described above only illustrate the design principles of the present invention. The shapes and names of the components in this description may differ and are not limited. Therefore, those skilled in the art can modify or make equivalent substitutions to the technical solutions described in the foregoing embodiments; and these modifications and substitutions do not depart from the inventive spirit and technical solutions of the present invention, and should all fall within the protection scope of the present invention.
Claims
1. A computer software protection method, characterized in that, The boot order and administrator password settings for the computer's Basic Input / Output System (BIOS); When the computer starts up, the BIOS checks the computer's operating system version and basic software agent (miniagent). If the miniagent is abnormal, it will be restored. After the computer's operating system starts up, the miniagent detects the upper-layer guardian software agent, and if the agent is abnormal, it is restored. After the agent is started, it detects and restores the protected software and data.
2. The computer software protection method as described in claim 1, characterized in that, The BIOS boot sequence is as follows: Step 1: Start the software agent, use the agent to set the BIOS boot order and administrator password, and report the BIOS status to the server. Step 2: The computer starts up. The BIOS detects the operating system version and the miniagent, and performs recovery processing for any abnormalities in the miniagent. Step 3: Activate the miniagent, perform detection on the agent, and handle any abnormal situations of the agent. Step 4: Start the agent, verify and load the protection policy, and detect and run the protected software according to the protection policy.
3. The computer software protection method as described in claim 2, characterized in that, In step two, the recovery process for miniagent anomalies is as follows: if miniagent and its configuration file do not exist, the configuration file is written back to the hard disk; if miniagent and its configuration file exist but the verification fails, the configuration file is updated to the correct file.
4. The computer software protection method as described in claim 3, characterized in that, In step three, the recovery process for agent anomalies is as follows: if the agent configuration file does not exist, download the configuration file from the server and perform integrity verification. If the integrity verification is retried more than three times, report the download anomaly log to the server. Repeat this process after an interval of one hour until the integrity verification is successful. Then, the configuration file is loaded, the monitoring process is started, and communication with the monitoring process is initiated. If communication fails, the existence of the agent and its dependent files is checked. If they do not exist, the agent and its dependent files are downloaded from the server, and their integrity is checked. If they exist but are incomplete, the agent and its dependent files are downloaded from the server again until the number of downloads exceeds three. A download failure log is then reported to the server, and after a ten-minute interval, the configuration file is reloaded, the monitoring process is started, and communication with the monitoring process is initiated.
5. A computer software protection system, characterized in that, The computer's basic input / output system (BIOS) is configured with a control module and a firmware detection and recovery module. The control module includes a BIOS control system unit and a BIOS control unit; the control system unit is used to uniformly set the BIOS boot order and administrator password; the BIOS control unit is used to update the BIOS boot order and administrator password. The firmware detection and recovery module is used to detect the computer's operating system version and basic software agent miniagent when the computer starts up, and to recover if the miniagent is abnormal. After the computer's operating system starts up, the miniagent detects the upper-layer guardian software agent, and if the agent is abnormal, it is restored. After the agent is started, it detects and restores the protected software and data.
6. The computer software protection system as described in claim 5, characterized in that, The computer software protection system also includes an agent protection module and a miniagent protection module; the BIOS boot sequence is as follows: Step 1: The control module starts the software agent, uses the agent to set the BIOS boot order and administrator password, and reports the BIOS status to the server. Step 2: The computer starts up. The firmware detection and recovery module detects the operating system version and the miniagent, and performs recovery processing for any abnormalities in the miniagent. Step 3: The miniagent guardian module starts the miniagent, detects the agent, and performs recovery processing for any abnormal situations of the agent; Step 4: The agent protection module starts the agent, verifies and loads the protection policy, and detects and runs the protected software according to the protection policy.
7. The computer software protection system as described in claim 6, characterized in that, In the firmware detection and recovery module, the recovery process for miniagent anomalies is as follows: if miniagent and its configuration file do not exist, the configuration file is written back to the hard disk; if miniagent and its configuration file exist but the verification fails, the configuration file is updated to the correct file.
8. The computer software protection system as described in claim 7, characterized in that, In the miniagent guardian module, the recovery process for agent abnormalities is as follows: if the agent configuration file does not exist, the configuration file is downloaded from the server and its integrity is verified. If the integrity verification is retried more than three times, a download error log is reported to the server. This process is repeated after an interval of one hour until the integrity verification is successful. Then, the configuration file is loaded, the monitoring process is started, and communication with the monitoring process is initiated. If communication fails, the existence of the agent and its dependent files is checked. If they do not exist, the agent and its dependent files are downloaded from the server, and their integrity is checked. If they exist but are incomplete, the agent and its dependent files are downloaded from the server again until the number of downloads exceeds three. A download failure log is then reported to the server, and after a ten-minute interval, the configuration file is reloaded, the monitoring process is started, and communication with the monitoring process is initiated.