system security design

System security design can be divided into the following levels:
program design security,
program deployment and operating system security,
database security,
network security,
physical security, and

in -process design security. To provide services to users with different geographical locations, different network addresses, different levels and different permissions, a little carelessness may cause potential security risks.

The following are the most common classifications of security vulnerabilities caused by improper design:
1. Input verification vulnerabilities : Attacks of malicious strings embedded in query strings, form fields, cookies, and HTTP headers. These attacks include command execution, cross-site scripting (XSS), SQL injection, and buffer overflow attacks.
2. Authentication vulnerabilities: identity spoofing, password cracking, privilege escalation, and unauthorized access.
3. Authorization Vulnerability: Illegal users access confidential or restricted data, tamper with data, and perform unauthorized operations.
4. Vulnerability of sensitive data protection: leaking confidential information and tampering with data.
5. Logging Vulnerabilities: Inability to detect signs of intrusion, inability to authenticate user actions, and difficulties in diagnosing problems.
For the above loopholes, the available preventive measures are:
1. For input validation loopholes, the operation generated by user input can be submitted to the service layer only after the security of the input information must be verified in the background code.
2. For the authentication vulnerability, in the program design, the user identity information must be provided by the session system inside the server, so as to avoid obtaining the user identity in the form of form submission and page parameters.
3. For authorization loopholes, when accessing confidential data or restricted data, it is necessary to judge whether the operation is allowed or not based on the user identity and the corresponding permission configuration.
4. For sensitive data vulnerabilities, when storing sensitive data, it is necessary to use a suitable encryption algorithm to encrypt the data.
5. In view of the log record loophole, in the program design, the operation information that changes the system state must be recorded as detailed as possible, so that the operation record can be traced back to the source.

As far as program deployment and operating system security are concerned, the following preventive measures can be used:
1. No matter what operating system is deployed on, it is necessary to ensure that all security upgrade patches are installed before the operating system is deployed, and all unnecessary systems are closed. 2. Regularly
check the security notice of the deployed server system, and install security patches in time.
3. Regularly check system logs and analyze and report suspicious operations.
4. The directory structure location of the application server program in the file system of the server should be as clear as possible. Directory naming needs to be as meaningful as possible.
5. The application server program cannot be run as an operating system user with system administrator privileges. It is best to create a dedicated operating system user to run the application server.

As far as database security is concerned, the following preventive measures can be used:
1. The database monitoring address must be limited, and only the network address that needs to be accessed is monitored.
2. Set database backup system. Regularly back up the data in the repository.
3. Database operation authorization restrictions, the database operation authorization at the table level and above should not be opened to the application server.

As far as network security is concerned, the following preventive measures can be used:
1. Select enterprise-level firewalls.
2. According to the specific network environment, formulate as detailed firewall rules as possible.
3. The data that needs to be transmitted in the external network should be encrypted with a suitable encryption algorithm.

In terms of physical security, the following preventive measures can be used:
1. The server should be deployed in a professional data room, and the management of the room should be done well.
2. For various interfaces that support hot swap, it needs to be closed in the system BIOS before deployment. During the operation of the server, various protective measures should be taken.

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326848552&siteId=291194637