1 Introduction
Today, smart card applications are becoming more and more widely used, and the security issues of smart card applications are very important. According to the "Hoop Bucket Principle", the overall application system security strength is determined by the weakest part of the system. The smart card itself has high security. However, due to the large number of operating terminals and scattered geographical distribution, the security design is easy to be despised relative to the center, and the security weakness is also easily utilized, resulting in a decrease in the security of the entire application system. Analysis of the security attacks faced by smart card terminal systems and research of corresponding defense measures are of great significance for ensuring the security of the entire smart card application system.
This paper firstly analyzes the security of the smart card system, pointing out that the smart card terminal is the most vulnerable part of the system; then, a four-dimensional space is established to analyze and describe the security attacks faced by the terminal, respectively for the physical layer, software layer and management. Layers of attack threats provide defensive measures. The author applied the ideas of this paper to the security design of the actual system and achieved good results.
2 Smart Card Application System Security Brief
A typical smart card application system is mainly composed of a service center server, a service terminal, a smart card issuing center, a key management center, and various smart cards used therein, as shown in FIG. 1 . Based on the degree of security protection that each component of the system is subjected to, the author divides the entire system into three areas: the central area, the terminal area, and the user area.
Figure 1 Structure of the smart card application system
(1) Central area: The area where various central servers are located, including business center servers, smart card issuance centers, and key management centers. Because the central area handles the core information of the business system, it is the focus of the system security design. Generally, the equipment is placed in the security room where the person is responsible. There is a strict security policy, so the security of the central area is very high.
(2) Terminal area: The area where the service terminal is connected to the central server through the network, including the service terminal computer, the smart card reading device, and the SAM card used to authenticate the user card. It is a hub for the security of a smart card system, which is connected to the user area and the central area, but often its security design is far less than that of the central area. The equipment in the terminal area is generally not placed in a security machine room with high construction and management costs. Security relies heavily on the operator's security awareness and self-discipline, and the terminal area is prone to security breaches.
(3) User area: The user and the area where the smart card is held. This is the most loose area in the whole system. After the card issuing center issues the card to the user, it only contacts the center when the user performs business operations through the terminal area. The security of this area is mainly focused on user cards. The security of the user card is protected by the smart card security mechanism and the security mechanism of the terminal area, and the card is kept by the user himself, so the security is not fragile.
Based on the above analysis, the author believes that the terminal area is in the pivotal position of information processing, and its fragile security guarantees that the area is the most vulnerable.
3 Security attacks and defenses faced by smart card operation terminals
There are different objects and methods for security attacks in the terminal area. In order to reflect the characteristics of the objects and methods involved in the attack, the author established a four-dimensional space to describe the attack behavior, and on this basis, proposed defense measures against specific attacks.
3. 1 Establishment of attack description space
The four coordinates of the attack description space are expressed as: S (Subject): the subject dimension, which refers to the type of the attacker; O (Object): the object dimension, which refers to the object being attacked; M (Method): the method dimension, refers to the attack. The method adopted by the implementer; E (Effect): The effect dimension refers to the influence of the information security of the attacked object after the attack is implemented.
This attack description space is simply referred to as the SOME space. Any specific security attack is defined by the above four basic parameters, which correspond to a specific location in the SOME space. The creation of the SOME space provides convenience for describing specific attacks.
(1) Subject dimension (S dimension). Attackers are different, and the targets of the attacks and the attack methods they take are often different, thus making the corresponding selected defenses different. The S dimension of the security attack faced by the smart card operation terminal can be divided into three major areas;
1 S1 ———Smart outsiders: Understand some public and common attack methods, but lack understanding of the terminal system, it is difficult to access the system's equipment. Their attacks generally rely on existing, open system vulnerabilities to exploit attacks with common tools.
2 S2 ———Internal personnel with professional knowledge: Have rich knowledge and experience, have a certain degree of understanding of the system, can access almost all the equipment and materials in the system, can find safety hazards through analysis, can be more complicated to use The tool implements the attack. For smart card terminals, the operator with professional knowledge has the highest probability of threat, which is also the focus of this article.
3 S3 ———Professional organizations funded: A team of funded and expert attackers who can use advanced analysis tools to analyze systems in depth and design complex attacks, often involving people in S2.
(2) Object dimension (O dimension). Specific attacks are implemented for a specific object in the terminal area. According to the processing link of the information flow, the terminal area is subdivided into three levels as shown in Figure 2:
Figure 2 Structure level of the smart card terminal
1O1 ———Physical layer: includes hardware devices related to smart cards such as SAM cards and card readers;
2O2 ———Software layer: includes drivers related to smart cards, dynamic link libraries and terminal business programs;
3O3 — Management: Mainly refers to the right to operate the terminal computer, including the use of operating systems, business procedures and other procedures.
(3) Method dimension (M dimension). Implementing security attacks involves many techniques of hardware and software, and which attack methods are closely related to the subject and the object. The subject and object environment below are discussed in detail.
(4) Effect dimension (E dimension). According to the impact of the implementation of the attack on the object security of the object, the effect dimension has four parts:
1 E1 ——— Secret disclosure, information confidentiality is destroyed;
2 E2 — The original information was modified and the integrity was destroyed;
3 E3 ———Information is forged and the authenticity of the information is destroyed;
4 E4 ——— Information cannot be processed and usability is destroyed.
In various smart card application systems, obtaining sensitive information, tampering and falsifying data is the primary purpose of the attacker, and the destruction of system availability is not discussed here.
3. 2 Attack methods and defense measures
According to the description space established above, the attack method and corresponding defense measures for the characteristics of the smart card terminal area can be analyzed from the object dimension. The following points need to be clarified before analysis:
(1) It is assumed that the link between the terminal area and the central area and the central area are both reliable and reliable;
(2) Any terminal area system has a probability of security risk, and some countermeasures can effectively reduce the probability of successful attack;
(3) All defense measures have their inherent weaknesses, so it is impossible to reduce the probability of security risks to zero.
3. 2. 1 Attacks and defenses that occur at physical layer O1
Table 1 Attacks that occurred in O1
The attack that occurred on O1 is shown in Table 1. The smart card itself has a relatively mature security mechanism.
In short, the key data encryption and decryption is implemented inside the chip, and the key is not read out; the card and the terminal are mutually authenticated by the user card and the SAM card encrypting and decrypting the same random number; the cardholder is authenticated by the user inputting the PIN. Sexuality; control authority through card and terminal authentication and PIN authentication. Since the promotion of smart cards, the security mechanism of the above smart cards has a relatively high degree of confidentiality and anti-mite modification, making it difficult to obtain E1 and E2 in the physical layer. Attacks that occur in O1 usually separate the chip from the card base, and require certain hardware devices. Some attack methods also destroy the chip.
(1) M1: cryptanalysis based on physical characteristics. The cryptanalysis technology based on physical features has been proven since 1996 and poses a huge challenge to the confidentiality of smart cards. Such cryptanalysis techniques include voltage analysis, fault analysis, intrusion analysis, time analysis, simple current analysis, differential current analysis, electromagnetic radiation analysis, and the like. Using these techniques, an attacker can quickly obtain a key while decrypting the entire cryptosystem by obtaining a cryptographic algorithm to run the carrier (computer, security, encryption box, IC card, etc.).
(2) M2: Light attack. In [8], a "light attack" technique is proposed, which can modify the specified bit position in the memory, and the attack cost is not high, and it is likely to be used to tamper with the SAM card or user card information.
3. 2. 2 Defensive measures
For these attack methods for the leakage of various physical parameters of the smart card chip, the most ideal defense measure is to change the asymmetry of various parameters such as power, voltage, current, electromagnetic radiation, and failure rate during the processing of the binary signal. This requires protection from the chip hardware design. While the literature [8] proposed the "light attack" method, it also proposed a defense measure. Instead of a single high level signal indicating a logic "1" and a low level signal indicating a logic "0", all data is encoded using a pair of values. Therefore, a high-low signal pair represents "1", a low-high signal pair represents "0", a low-low state is considered a "clear" signal, and a high-high state indicates an error. This kind of scheme makes the analysis technique based on physical features more difficult, and can better enhance the security of the physical layer.
3. 2. 3 Attacks and Defence Measures Occurred at Software Layer O2 The software layer is the core of the entire terminal area. It controls various operations on the smart card and is responsible for sending and receiving data to and from the network connected to the center. Since the operating system and application software are easily modified, and generally there is no strict authentication mechanism, attacks are more likely to occur in O2. The attack that occurred in O2 is shown in Table 2.
Table 2 Attacks O2
(1) M3: Forged SAM card and user card spoofing terminal program.
At present, the basis for mutual authentication between the terminal SAM card and the user card is that both have the same authentication key, and the specific process is as follows:
1 user card: send the Salt (generally the card serial number) and the generated random number R to the SAM card;
2SAM card: {{Kasam , Salt} → K, R} → R*, send R* to the user card;
3 User card: { Kausr, R*} -1 → R', compare R with R', and pass the verification.
The keys Kausr and Kasam are written by the trusted authority, the Key Management Center, through the card issuing center to the SAM card and the user card.
The software sends an "Authentication" command to the card. After the certification is passed, the card COS provides certain operational rights and returns the “Authentication Pass†message to the operating software. At this point, the software considers the card to be legitimate and performs other operations. The usual terminal software design assumes that the SAM card is trusted. The trust in the physical layer is whether or not the "authentication pass" information is received, and the authenticity of the SAM card key is not verified. This is a serious security hole. If the attackers from S2 and S3 strictly follow the data structure of the legal card, use a blank card of the same type to forge a pair of SAM cards and user cards, and the pseudo-authentic keys K'asam and K'ausr written respectively respectively satisfy the relationship {K 'asam,Salt} →K'ausr, can be verified to achieve the purpose of spoofing the terminal program, so that the terminal program treats it as a legitimate card and obtains the effect of E3.
(2) M4: Replace or rewrite the smart card operation module.
The current software development is basically modular design, the main program realizes the functions of various management cards by calling the smart card operation module. Usually the operation module is located in a dynamic link library file (represented by A) independent of the main program, and the main program is fully trusted for the dynamic link library it calls. If an attacker from S2 or S3 replaces A with dynamic link library file B, and the interface of each module in B is exactly the same as A, B will completely replace the A operation card, as shown in Figure 3.
Figure 3 Replace or rewrite the smart card operation module
This way, an attacker can attach the various operations required for an attack in B. All that is required for this kind of attack is the understanding of the software development interface and certain programming skills. The cost is not high, but it can achieve complete control of the smart card data, and it is easy to get the attack effect of E2 and E3. This security risk also exists in the entire application software system calls other dynamic link libraries.
3. 2. 4 Defensive measures
Attacks that occur at the software layer are primarily caused by the vulnerability of various trust relationships. Therefore, to improve the security of the software layer, we need to improve the trust mechanism. Because the center has a high security, the authentication of the SAM card and the user card can be ensured by the center to ensure the authenticity of the smart card in the terminal area. The specific process is as follows:
(1) The terminal first applies for a random number Rc to the center before each business operation.
(2) In the SAM card, {Kasam, R} → R*sam, {Kausr, R} → R*usr in the user card, the service request packet sent by the terminal is attached (R*sam, Salt sam) and (R*usr) , Saltusr), where Salt sam and Salt usr are the unique identification numbers (UIDs) of the SAM card and the user card, respectively.
(3) Center: { Kc , Saltasm} → K'asm , { Kc , Saltusr} → K'ausr ; { K'asm , R3} - 1 → R'sam , {K'ausr , R3} - 1 → R 'usr, compare R'sam, R'usr and Rc, and pass the verification to accept the service request of the terminal.
The independence of dynamic link libraries contradicts their importance in the security of smart card terminals. In order to make the modules in the dynamic link library tightly integrated with the main program, the author proposes three solutions:
Option 1 Add verification of the dynamic link library file signature in the main program. Attach the signature of the important dynamic link library (such as Hash summary) when the main program is compiled and released, and then take the feature code and compare the verification when the program is running.
Option 2 The important operational modules are not developed in the form of dynamic link libraries, but are embedded directly in the main program. Taking C language development as an example, the smart card operation module provided by the smart card manufacturer is included in the main program as a static link library, so that the important operation module is not in the form of a file but is independent of the main program but a piece of code of the main program. After all, it is more difficult to attack a program code segment than to replace a file.
Solution 3 The center adds verification of the authenticity of the terminal program. The terminal program sends a dynamic link library (DLL) verification request to the center, and the request data packet M is encrypted and generated in the main program according to the hardware unique identification code, the time stamp and the DLL file, and the center accepts the other service request of the terminal after the M verification is passed. .
3. 2. 5 Attacks and Defences Occurred at Management O3
Attacks that occur at the management level are mainly caused by unauthorized users debugging, decompiling, rewriting memory, copying important files, and embedding Trojan horses on the terminal system. These operations can track the monitoring terminal program, obtain the operator password, business data and other information, and obtain the E1 attack effect, and further modify the operation data to obtain the effects of E2 and E3. Because M4 attacks generally rely on obtaining certain operating privileges of the terminal system, this is often the entry point for further attacks on the software layer.
3. 2. 6 Defensive measures
When designing terminal security, a complete security strategy should be developed to minimize the security risks of the terminal management.
(1) Strictly control the read and write permissions of the operating system, business programs, and important files according to the role. For the terminal operator, the operation authority is granted with the principle of least privilege, and the authority of the system administrator must not be given. The absolute control of the terminal area system should be left to the security personnel of the central area. The biometric-based identification method such as fingerprint recognition can be used for the operator.
(2) Strict audits of the logs of systems and business processes are performed on a regular basis, which is effective against attacks that require time latency.
(3) Pay close attention to vulnerability announcements such as operating systems, that is, install patches to prevent attackers from exploiting vulnerabilities to increase permissions.
4 Conclusion
The smart card terminal is a system with a complex security environment. This paper provides an idea for analyzing the security attacks faced by this system and provides a basis for the system security design. The establishment of the attack description space is an attempt. The next step is to quantify the characteristics of the space and explore ways to find the best balance between reducing security threats and increasing terminal costs.
Travel Laptop Bag,Laptop Bag,Zipper Computer Bag,Multifunctional Business Bag, Dry and wet separation bag
Dongguan Jinying Handbags Co.,Ltd , https://www.jinyingbeautybag.com