CN106971105A - A kind of application program based on iOS meets with the defence method of flank attack - Google Patents

A kind of application program based on iOS meets with the defence method of flank attack Download PDF

Info

Publication number
CN106971105A
CN106971105A CN201710199687.XA CN201710199687A CN106971105A CN 106971105 A CN106971105 A CN 106971105A CN 201710199687 A CN201710199687 A CN 201710199687A CN 106971105 A CN106971105 A CN 106971105A
Authority
CN
China
Prior art keywords
application program
ios
new key
key
random value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710199687.XA
Other languages
Chinese (zh)
Other versions
CN106971105B (en
Inventor
梁泽华
于鸿洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201710199687.XA priority Critical patent/CN106971105B/en
Publication of CN106971105A publication Critical patent/CN106971105A/en
Application granted granted Critical
Publication of CN106971105B publication Critical patent/CN106971105B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

The invention discloses the defence method that a kind of application program based on iOS meets with flank attack, belong to the category of intelligent movable operating system security.The present invention is using the synergy between authentication mechanism and exclusive private key, to take precautions against various forms of flank attacks.The preventing mechanism of the present invention is prevented through commonly used attack meanses in two flank attacks, is Replay Attack respectively and invalidated application renewal.Therefore, implementation of the invention, can provide pragmatic and easy to implement solution for flank attack.

Description

A kind of application program based on iOS meets with the defence method of flank attack
Technical field
The invention belongs to the technical field of intelligent movable operating system security, and in particular to trusted bootstrap, program signature, sand Box and rights management and key chain technology.
Background technology
Apple Inc. was proposed intelligent movable operating system iOS in 2007, and it is integrated and sealed by the software and hardware of height The operating system closed, powerful safeguard protection is provided for iOS mobile devices.IOS is by enforcing trusted bootstrap, program label Process security when name, sandbox mechanism and operation, it is ensured that only believable code and application program can be on the mobile apparatus Operation, additional encryption and data protection can effectively protect the user data of mobile device.In addition, iOS passes through coercive procedure label Name and apply Sandboxing, it is therefore prevented that the unwarranted code of third-party application load and execution;And by examining application program Mode detect any suspect program operation behavior.In addition, also preventing user any using Digital Rights Management Technology Sharing application is mounted between iOS equipment to limit the propagation of malicious application.
In order to strengthen the safeguard measure to user data, iOS device has used a series of encryptions and data protection function.For This, iOS device provider can issue a pair of public keys and private key and certificate, coercive procedure label for each third party application Name, using key, prevents third-party application from loading malicious code.IOS will not allow third-party application only by checking Certificate is with regard to restocking to App Store (application program shop).In addition, it also prevents from attempting injection malicious code when program is run Dynamic attacks.By defining single sandbox configuration file mode for each third party application, one is forbidden so as to realize The code and data of another application program are accessed during individual application program operation.In addition, also using trend point in iCloud Analysis, the multiple technologies such as dynamic listing and information filtering carry out automatic detection and prevent spam.
Although taking above-mentioned safety measure, pacify for the correspondence that the flank attack occurred recently can but bypass iOS Full measure.So-called flank attack, exactly replacing rogue program using a series of means should from the original of App Store installations With.Under normal circumstances, flank attack reaches attack purpose by two ways:One be by configuring Ad-hoc (point-to-point), Another is to use enterprise's certificate signature.
In the case where configuring Ad-hoc, attacker needs to obtain the UDID (equipment unique identifier) of target device.So And the difficulty for obtaining UDID (equipment unique identifier) is very big, and which can limit the number for the mobile device for installing application Amount.Therefore attacker prefers the method using enterprise's certificate signature, is enterprise's certificate label using another benefit of which The malicious application of name is easier to propagate, because it just can be with the basis of need not being passed through by App Store examination & verification On any mobile device.
Referring to Fig. 1, the App (application program) downloaded in App Store is replaced by the way of flank attack, using identical The flows that are replaced to the application program in original App Store of bundle ID (applying unique identifier) it is as follows:
1) the bundle ID of intended application are read, the com.company.product shown in Fig. 1 is then intended application bundle ID;
2) original App (APP to be replaced) that decompression analysis is downloaded from App Store, V.1.0 such as version number is;Repair Change the original App of replacement, it is replacement APP V.1.1 to obtain version:Encapsulation of being signed again by business account is packed, environment of escaping from prison Business account signature is not needed to be mounted directly down;
3) user of induction mobile device downloads the App for installing the website that attacker provides using (V.1.1), installs and replaces Bag;
4) original App is opened after installation to find to have turned into the malicious application of attacker's offer.
On the problem of solving flank attack, if taking the mobile device number of limitation installation enterprises certificate signature application program The mode of amount, then can hinder normal iOS to develop;On the other hand, forbid including the application of identical PID Packet Identifier (bundle ID) It is also unpractical, because it will forbid normal renewal.Further, since malicious application need not pass through App Store examination, is very difficult to verify the authenticity of its enterprise's certificate, then due to iOS closure (forbidding outside monitoring), so that It is difficult to prevent the installation of the application comprising same software PID Packet Identifier, i.e., existing iOS safety to cause to lead to existing processing mode Measure is not avoided that flank attack.
The content of the invention
The goal of the invention of the present invention is:Have for bundle ID of the attacker based on acquisition and version information exploitation The flank attack of the malicious application of identical bundle ID and next version number, proposes a kind of effective defence method.
A kind of application program based on intelligent movable operating system iOS of the present invention meets with the defence method of flank attack, Comprise the following steps:
Increase fresh information in the attribute list file of application program, the fresh information includes more new key, and leads to IOS provider is crossed to sign to more new key for the private key that the developer of application program issues;
When the mobile terminal based on iOS receives application program installation kit, iOS is received and mounted application program More Xinmi City of the signature in fresh information is obtained when updating mount request using unique mark identical, in dependence listing file Key, and the use of iOS device supplier is that the public key that application program is issued is decrypted;Decrypted result (is currently received again More new key, referred to as current more new key) with local more new key (when application program in mobile device installs success first Afterwards, the more new key of the signature in fresh information is obtained in dependence listing file, and the use of iOS device supplier is to apply journey The public key that sequence is issued is decrypted, and obtains more new key and stores onto current movement.) matched, if matching, runs more Newly;Otherwise, refuse.
Although bundle ID (applying unique identifier) and version information the exploitation tool that flank attack person can be based on acquisition There is the malicious application of identical bundle ID next version number, but the not all people of more new key can use, even if Attacker can collect or guess more new key by any mode, but it can not obtain iOS provider (apple official) The private key issued for original development person.Therefore, attacker can not successfully pass through authentication mechanism proposed by the invention.Because such as Fruit there is no the more new key using private key signature, and iOS would not allow for updating, so as to realize to the effectively anti-of flank attack It is imperial.Alerted in addition, the safeguard measure of the present invention is not dependent on pop-up of the user to " not trusted Application developer " Response.No matter user have selected " trust " or " distrust ", shows and is answered with former in the application program installation kit that will be updated In the case of identical bundle ID with program, system can be checked (uses iOS provider by the more new key of former application program What the private key signature to the developer of application program was crossed).Therefore, the first attack means failure of flank attack.Ought be System prompts the user whether to trust this program, and user clicks " trust " button just, and nonetheless, malicious application can not be into Work(is installed.
In order to solve the technical problem attacked again, the present invention by adding the random value of more new key in fresh information, And will more new key and random value carry out XOR after more new key is signed again;
When iOS receives the application unique mark identical renewal mount request with mounted application program, dependence In listing file obtain fresh information in random value, and with current application program stored mistake random value carry out Match somebody with somebody, if the match is successful, refusal updates;Otherwise the use of iOS device supplier is the public key issued of application program to the different of signature Or after value is decrypted, then with currently received random value XOR is carried out, current more new key is obtained, while storage is current The random value of reception, the random value for the corresponding same application that will be received is stored on the mobile apparatus, for The detection attacked again;
Then, currently more new key is matched with local more new key, if matching, operation updates;Otherwise, refuse Absolutely.
Because Replay Attack is to bypass most one of intuitive way of certification.If only using original private keys to more new key Signature, then Replay Attack can successfully break up this mean of defense.Attacker can be stolen by sniff or any other mode The more new key of signature, then it is successfully executed the intended application of simulation original development personnel by resetting the more new key of signature Renewal.In order to defend such a Replay Attack, present invention employs the random number in addition to more new key (being represented with symbol K) N concept.The equal XORs of wherein K and N were calculated and by the private key signature of original development person.N is used as to be sent in plain text so that can be with The K ⊕ N of signature are decrypted by public key, and then calculate more new key K.When installation kit is reached, N and it is locally stored The random value of same application is matched, to ensure not occur Replay Attack.Then, system uses public key decryptions label mistake The K ⊕ N of name, and XOR calculating is carried out again with last XOR result with N again, obtain more new key K.So, update Key K and stored K matches to ensure certification.If where never received from the developer of destination application N, and more new key and the cipher key match stored are crossed, then allows to update.The system in the case of the failure of any matching condition Refusal updates.So as to successfully defend the attack meanses with Replay Attack.
In summary, by adopting the above-described technical solution, the beneficial effects of the invention are as follows:Can effectively defend to based on The flank attack of iOS application program, and Replay Attack.
Brief description of the drawings
Fig. 1:Flank attack flow chart schematic diagram;
Fig. 2:The flank attack defence policies schematic diagram of the present invention;
Fig. 3:The processing schematic diagram of Replay Attack is defendd by adding a random number N;
Embodiment
To make the object, technical solutions and advantages of the present invention clearer, with reference to embodiment and accompanying drawing, to this hair It is bright to be described in further detail.
Referring to Fig. 2, target APP bundle ID are com.company.product, and version number is V.1.0, mask attacks The person of hitting is by imitating target APP bundle ID, the malice APP of the pseudo- more redaction of generation V.1.1, and by malice APP and conjecture Obtained renewal key is sent to user.When installation kit reaches user equipment, system (iOS) can be from plist (i.e. attribute lists File) target APP bundle ID and version number information are obtained in file.Because in the plist texts of application program in the present invention Fresh information (the renewal key for including signature) is added in part, when iOS receives the bundle ID with mounted application program When identical updates mount request, the more new key of the signature in fresh information is obtained from plist files, and is set using iOS Standby supplier is that the public key that application program is issued carries out signature decryption, obtains currently updating key, then by itself and local renewal Key is matched, if matching, operation updates;Otherwise, refuse.
Wherein, local update key acquisition modes are:When the mobile terminal based on iOS receives application program installation kit, The renewal of the signature in fresh information is obtained when iOS receives the mount request first of application program, in dependence listing file Key, is that the public key that application program is issued carries out signature decryption using iOS device supplier, obtains more new key and store to this Ground;
Therefore when above-mentioned malice APP and update key reach mobile terminal when, although update key be probably it is correct, still It does not possess private key (the renewal key of the i.e. non-private key signature for using iOS device supplier to be issued for application program), so as to lead Renewal is caused to be prevented from.Referring to Fig. 3, in order to tackle Replay Attack, the renewal key for being each APP sets a Nonce values N (Nonce values, mean Number used once, are a random values that can only be only used once).Key will be updated in advance (to use K is represented) XOR is carried out with N, then to being put into after K ⊕ N signatures in APP plist files, and N is also placed in plist files In, i.e. N to send in plain text;
When the mobile terminal based on iOS receives application program installation kit, the renewal installation that iOS receives application program please When asking, by judging that currently received N is matched with the random value stored of the APP, if identical, it there occurs that playback is attacked Hit, refusal updates;Otherwise based on the use of iOS device supplier being that the K ⊕ N of signature are decrypted the public key issued of application program Afterwards, then with currently received N XOR is carried out, obtains current more new key, while currently received random being locally stored Value N.Finally, currently more new key is matched with local more new key, if matching, operation updates;Otherwise, refuse.
In mechanism proposed by the present invention, more new key is the private key signature of the original development person oneself using application program 's.In addition to the developer of the first edition or developer team, nobody can possess this private key.It is therefore proposed that Mechanism successfully prohibits chance that malicious application updated using target program to replace original application.In addition, of the invention The update mechanism of proposition has non repudiation.In the case that i.e. application program obtains any renewal after, the original in source is updated Beginning property is never changed.
The foregoing is only a specific embodiment of the invention, any feature disclosed in this specification, except non-specifically Narration, can alternative features equivalent by other or with similar purpose replaced;Disclosed all features or all sides Method or during the step of, in addition to mutually exclusive feature and/or step, can be combined in any way.

Claims (2)

1. a kind of application program based on intelligent movable operating system iOS meets with the defence method of flank attack, it is characterised in that Comprise the following steps:
Increase fresh information in the attribute list file of application program, the fresh information includes more new key, and passes through iOS Equipment supplier signs for the private key of program developer to more new key;
When the mobile terminal based on iOS receives application program installation kit, iOS receives the application with mounted application program The more new key of the signature in fresh information is obtained when unique mark identical updates mount request, in dependence listing file, And the use of iOS device supplier is that the public key that application program is issued is decrypted;Again by decrypted result and local more new key Matched, if matching, operation updates;Otherwise, refuse;
Wherein local more new key acquisition modes are:After application program is installed successfully first in mobile device, dependence row The more new key of the signature in fresh information is obtained in list file, and the use of iOS device supplier is the public affairs that application program is issued Key is decrypted, and obtains more new key and stores to local.
2. the method as described in claim 1, it is characterised in that the fresh information also includes the random value of more new key, and The result that more new key is carried out after XOR again to XOR with random value is signed;
When iOS receives the application unique mark identical renewal mount request with mounted application program, dependence list In file obtain fresh information in random value, and with the random value of stored mistake is matched in current application program, if The match is successful, then refusal updates;Otherwise the use of iOS device supplier is that the public key that application program is issued enters to the XOR value of signature Go after decrypting, then XOR is carried out with currently received random value, obtain current more new key, while storage is currently received Random value;
Currently more new key is matched with local more new key, if matching, operation updates;Otherwise, refuse.
CN201710199687.XA 2017-03-30 2017-03-30 IOS-based application program defense method against false face attack Expired - Fee Related CN106971105B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710199687.XA CN106971105B (en) 2017-03-30 2017-03-30 IOS-based application program defense method against false face attack

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710199687.XA CN106971105B (en) 2017-03-30 2017-03-30 IOS-based application program defense method against false face attack

Publications (2)

Publication Number Publication Date
CN106971105A true CN106971105A (en) 2017-07-21
CN106971105B CN106971105B (en) 2020-02-18

Family

ID=59335468

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710199687.XA Expired - Fee Related CN106971105B (en) 2017-03-30 2017-03-30 IOS-based application program defense method against false face attack

Country Status (1)

Country Link
CN (1) CN106971105B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109816389A (en) * 2018-12-03 2019-05-28 深圳市新国都支付技术有限公司 A kind of POS machine signature verification method and system
CN112199713A (en) * 2020-12-03 2021-01-08 成都中科大旗软件股份有限公司 Confusion encryption method for IOS system software operation algorithm

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1802017A (en) * 2005-07-15 2006-07-12 华为技术有限公司 Identification method for preventing replay attack
JP2012138131A (en) * 2012-04-24 2012-07-19 Toshiba Corp Computer
CN104298915A (en) * 2014-10-16 2015-01-21 厦门美图之家科技有限公司 Installation package tampering preventing method
CN104331658A (en) * 2014-11-14 2015-02-04 北京视博数字电视科技有限公司 Installing verification method for intelligent terminal application program and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1802017A (en) * 2005-07-15 2006-07-12 华为技术有限公司 Identification method for preventing replay attack
JP2012138131A (en) * 2012-04-24 2012-07-19 Toshiba Corp Computer
CN104298915A (en) * 2014-10-16 2015-01-21 厦门美图之家科技有限公司 Installation package tampering preventing method
CN104331658A (en) * 2014-11-14 2015-02-04 北京视博数字电视科技有限公司 Installing verification method for intelligent terminal application program and system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
马成芬等: "时戳和随机数在保证消息实时性方面的应用", 《聊城大学学报(自然科学版)》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109816389A (en) * 2018-12-03 2019-05-28 深圳市新国都支付技术有限公司 A kind of POS machine signature verification method and system
CN112199713A (en) * 2020-12-03 2021-01-08 成都中科大旗软件股份有限公司 Confusion encryption method for IOS system software operation algorithm

Also Published As

Publication number Publication date
CN106971105B (en) 2020-02-18

Similar Documents

Publication Publication Date Title
US7886355B2 (en) Subsidy lock enabled handset device with asymmetric verification unlocking control and method thereof
Ma et al. Cdrep: Automatic repair of cryptographic misuses in android applications
Dwoskin et al. Hardware-rooted trust for secure key management and transient trust
Mohamed et al. Android vs iOS security: A comparative study
CN103761472B (en) Application program accessing method and device based on intelligent terminal
CN104063788B (en) Mobile platform credibility payment system and method
CN103390026B (en) A kind of mobile intelligent terminal secure browser and its method of work
CN104991526B (en) Industrial control system safety supports framework and its Security Data Transmission and storage method
CN108781210A (en) Mobile device with credible performing environment
US20060107047A1 (en) Method, device, and system of securely storing data
CN105260663A (en) Secure storage service system and method based on TrustZone technology
CN103716785B (en) A kind of mobile Internet safety service system
CN104751049B (en) A kind of application program installation method and mobile terminal
CN105027130A (en) Delayed data access
KR20130114593A (en) Electronic license management
CN106778348A (en) A kind of method and apparatus for isolating private data
US7596531B2 (en) Method and apparatus for protecting against side channel attacks against personal identification numbers
CN107870793A (en) The method and device of SO files is loaded in a kind of application program
CN109918948A (en) APK integrity checking method, computer program based on national secret algorithm SM3
CN106971105A (en) A kind of application program based on iOS meets with the defence method of flank attack
CN105184119B (en) A kind of method for security protection of software
WO2003104952A2 (en) Apparatus for private personal identification number management
CN102708069B (en) The guard method of internal storage data in Android system
CN107180169A (en) A kind of software activation method and device
CN116993146A (en) System capable of rapidly identifying power grid sensitive data

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200218