(19)
(11)EP 3 671 614 A1

(12)EUROPEAN PATENT APPLICATION

(43)Date of publication:
24.06.2020 Bulletin 2020/26

(21)Application number: 18213763.8

(22)Date of filing:  18.12.2018
(51)Int. Cl.: 
G06Q 40/02  (2012.01)
G06Q 20/24  (2012.01)
G06Q 30/00  (2012.01)
G06Q 20/40  (2012.01)
(84)Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR
Designated Extension States:
BA ME
Designated Validation States:
KH MA MD TN

(71)Applicant: Mastercard International Incorporated
Purchase NY 10577 (US)

(72)Inventors:
  • VANNESTE, Paul
    1340 Ottignies (BE)
  • ROUQUET, Jean-Louis
    6210 Les Bons Villers (BE)

(74)Representative: Richardson, Mark Jonathan 
Keltie LLP No.1 London Bridge
London SE1 9BA
London SE1 9BA (GB)

  


(54)COMPUTER SECURITY DEVICE


(57) A computer security device (254) for detecting security vulnerabilities in a transaction processing system (130), the device comprising: an input (257) arranged to receive configuration data relating to the transaction processing system; a communications interface (259) arranged to output transaction authorisation request messages for processing by the transaction processing system and to receive authorisation response messages from the transaction processing system; a processor (255) arranged to: analyse (308) the received configuration data relating to the transaction processing system and to determine one or more fraudulent transaction types that the transaction processing system is potentially vulnerable to; generate (310) one or more transaction authorisation request messages emulating the determined one or more fraudulent transaction types; output (312) the one or more generated transaction authorisation request messages via the communications interface to the transaction processing system; analyse (330) any authorisation response messages from the transaction processing system received via the communications interface to identify the presence of security vulnerability issues in the transaction processing system.




Description

Field of Invention



[0001] The present invention relates to a computer security device. In particular, the present invention relates to a computer security device for electronic authorisation systems such as those used for payment transactions. The invention extends to a method of operating a computer security device.

Background to the invention



[0002] The present invention relates to the field of computer security for electronic authorisation systems used for payment transactions.

[0003] A payment card scheme - a payment network linked to a payment card - is typically based one of two models: a three-party model (adopted by American Express) or a four-party model (adopted by Visa and Mastercard). One of the objectives of the present disclosure is to provide a system and method for detecting vulnerabilities within the authorisation processing systems within the four-party model, wherein the relevant parties in the four-party model include a merchant, an acquirer, an issuer and a cardholder. Typically, the four party model of a credit card or debit card purchase involves an exchange of authorisation request and response messages between the parties prior to the settlement of funds between the cardholder and the merchant. The messages may include transaction data such as a primary account number, a transaction amount, a merchant identifier, and a date and time of the transaction.

[0004] The physical payment card is sent to the user by an issuer, typically a financial institution with whom the user has an account. The user may use the card to make payment transactions at point of sale devices located at merchants. The point of sale device reads the data held on the physical card, either on the magnetic stripe or, if the card is of the 'chip and pin' type (or "chip and signature"), a chip integrated within the card, and generates a financial transaction. In this context the financial transaction may be a payment transaction seeking authorization for the amount of the transaction. The payment transaction is communicated by the merchant to a merchant acquirer which then routes the payment transaction to the issuer via the transaction processing entity for authorization. The issuer then carries out a series of checks to determine whether the user's credit is sufficient and to identify possible fraudulent transactions. If the checks are positive, the issuer then sends an appropriate authorization back to the acquirer to complete the authorization stage of the payment transaction.

[0005] Payment cards such as credit cards and debit cards are very widely used for all forms of financial transaction. The use of payment cards has evolved significantly with technological developments over recent years. Many payments are made at a retail location, typically with a physical transaction card interacting with a point of sale (POI) terminal to perform a transaction. These transaction cards may interact with a POI by swiping through a magnetic stripe reader, or for a "chip card" or "smart card" by direct contact with a smart card reader (under standard ISO/IEC 7816) or by contactless interaction through local short range wireless communication (under standard ISO/IEC 14443).

[0006] It is also possible to use a computing device such as a mobile telephone as a proxy for a payment card. For example, the mobile payment application, M/Chip Mobile, can be downloaded to a mobile cellular telephone handset (hereafter "mobile phone") to act as a proxy for a payment card using Near Field Communication (NFC) technology standards, which are built in to the majority of current mobile phones. NFC is a development upon RFID, and NFC-enabled devices are able to operate in the same manner as RFID devices - though an NFC-device is active rather than passive, as it is powered by the mobile phone battery rather than relying on inductive pickup from a reader device. Using M/Chip Mobile, a user can conduct tapping based-transactions with a proximity reader, as well as perform account management operations over an appropriate network interface (cellular, local wireless network) in an online banking interface with the user's account provider.

[0007] Other mobile payment applications and associated services exist, typically having a similar functionality and potentially incorporating similar solutions. Examples are Apple Pay (operating on iOS devices) and Google Wallet (operating on Android devices).

[0008] The authorisation of a payment transaction via a contactless device or via smartphone based device is broadly similar to the process described above in relation to a payment card.

[0009] In the following description a "transaction device" is a payer device that may take many forms, e.g. payment card, a smartcard or another form factor like a mobile communications device, keyfob, etc. The functional blocks that make up a transaction device may be distributed; so part or all of the device may be implemented in the cloud.

[0010] Parties within a payment network will configure their authorisation processing systems such that they do not have any security vulnerability issues arising from: configuration issues, incomplete system implementation issues; or, software coding errors. However, it may be necessary to expend significant time and effort configuring a processing system and maintaining the correct configuration of the authorisation processing system..

[0011] The present disclosure has been devised to mitigate or overcome at least some of the above-mentioned problems.

Statements of Invention



[0012] According to a first aspect of the present invention there is provided a computer security device for detecting security vulnerabilities in a transaction processing system, the device comprising: an input arranged to receive configuration data relating to the transaction processing system; a communications interface arranged to output transaction authorisation request messages for processing by the transaction processing system and to receive authorisation response messages from the transaction processing system; a processor arranged to: analyse the received configuration data relating to the transaction processing system and to determine one or more fraudulent transaction types that the transaction processing system is potentially vulnerable to; generate one or more transaction authorisation request messages emulating the determined one or more fraudulent transaction types; output the one or more generated transaction authorisation request messages via the communications interface to the transaction processing system; analyse any authorisation response messages from the transaction processing system received via the communications interface to identify the presence of security vulnerability issues in the transaction processing system.

[0013] Security vulnerability issues that may be identified by the system may include one or more security vulnerability issues arising from: configuration issues, incomplete system implementation issues; and, software coding errors.

[0014] The computer security device according to the present invention may be installed within a transaction processing network. In particular, the computer security device may be installed and run within the local environment of an issuer (the transaction processing system). The computer security device may be a hardware device or may alternatively be a software element that is installed in the issuer systems. The computer security device may also be installed within a payment card network (e.g. the Mastercard network).

[0015] The computer security device is arranged to receive configuration data relating to the transaction processing system and, on the basis of such data, to determine one or more fraudulent transaction types that the transaction processing system could potentially be vulnerable to. The received configuration data relating to the transaction processing system may be received by scanning a transaction device (such as a transaction card, a keyfob device with transaction capabilities, smart mobile device, wristband device with transaction capabilities, smartwatch or other suitable transaction device) or may be received from a system resource or from a user in response to a request for such data. The configuration data may be derived from historical transaction data supplied from the transaction processing system.

[0016] The processor of the computer security device is arranged to generate one or more transaction authorisation request messages (e.g. the processor may generate messages that generally correspond to the type of transaction messages that are exchanged within a payment network while processing authentic transaction). These messages may be arranged to emulate the potential fraudulent attacks that the transaction processing system may be susceptible to. Any authorisation response messages received from the transaction processing system may then be analysed to identify the presence of security vulnerability issues within the transaction processing system.

[0017] The processor may be arranged to analyse received authorisation response messages in order to determine if the transaction processing system is exposed to a potential fraud attack based on each emulated fraudulent transaction type.

[0018] Optionally, the input is arranged to receive data from a transaction device that has been read by a transaction device reader. The received data may comprise data related to an Application Interchange Profile (AIP) or an Application Usage Control (AUC) associated with an EMV (Europay-Mastercard-VISA) transaction device. The processor may be arranged to determine transaction processing system functionality supported by the transaction device, such functionality being indicative of the configuration details of the transaction processing system.

[0019] Optionally, the processor is arranged to use data generated by the transaction device to generate the one or more transaction authorisation request messages. The computer security device may further comprise a further communications interface arranged to exchange data with the transaction device and the processor may be arranged to communicate with the transaction device in order to generate transaction data for use in generating the one or more transaction authorisation request messages.

[0020] The transaction authorisation request messages generated by the processor may be arranged to: (i) emulate one or more of: magnetic stripe transactions; magnetic stripe contactless transactions; EMV contact transactions; contactless transactions of card-not-present transactions; and/or (ii) mimic messages originating from one or more of: an automatic cash machine (ATM); an attended point-of-sale (POS) terminal; an unattended POS terminal; a merchant website; and/or (iii) emulate one of more of the following fraud patterns: counterfeit transaction device; wedge attacks; pre-play attacks; replay attacks; cross-contamination; fraudster-induced exception processing.

[0021] It is noted that "attended terminals" are terminals operated under the control of a human operator appointed by a merchant - this has security implications: such terminals are typically these where signature-based transactions can be accepted, holograms can be checked, etc. Unattended terminals are cardholder-operated. These 2 types of terminals may have different characteristics of their authorization messages, and therefore may call for different fraud patterns, e.g. for fraudster-induced exception processing.

[0022] The processor may be arranged to construct a vulnerability assessment report based on analysed received authorisation response messages, the vulnerability report comprising all the identified configuration issues within the transaction processing system.

[0023] Where the security vulnerability issues comprises a configuration issue, the processor may be arranged to generate a configuration control signal for controlling the transaction processing system, the control signal arranged to update configuration settings of the transaction processing system to remove an identified configuration issue and the communications interface is arranged to output the configuration control signal to the transaction processing system. Conveniently, in the event that the computer security device identifies a configuration issue at the transaction processing system, the computer security device may output a control signal to address the identified issues by updating the configuration settings of the transaction processing system.

[0024] The processor may be arranged to generate a control signal arranged to control the transaction control system such that transactions corresponding to security vulnerabilities are rejected until the configuration settings of the transaction processing system have been updated. In the event that the computer security device identifies a configuration issue at the transaction processing system, the computer security device may output a control signal that blocks (rejects) any transactions that correspond to an identified security vulnerability.

[0025] The processor may be arranged to generate a request to the transaction processing system to supply historical transaction data that has been processed by the transaction processing system and the processor may be arranged to generate one or more transaction authorisation request messages by modifying the received historical transaction data.

[0026] Optionally, the processor is arranged to a plurality of transaction authorisation request messages to emulate a plurality of determined one or more fraudulent transaction types.

[0027] According to an aspect of the present invention there is provided a method for detecting security vulnerabilities in a transaction processing system, the method comprising: receiving configuration details relating to the transaction processing system; analysing, in a processor, the received configuration details of the transaction processing system and determining one or more fraudulent transaction types that the transaction processing system is potentially vulnerable to; generating, in the processor, one or more transaction authorisation request messages emulating the determined one or more fraudulent transaction types; outputting via the communications interface, the one or more generated transaction authorisation request messages to the transaction processing system; receiving, via the communications interface, authorisation response messages from the transaction processing system; analysing received authorisation response messages to identify the presence of security vulnerability issues in the transaction processing system.

[0028] The invention extends to a carrier medium for carrying a computer readable code for controlling a computer (computer security device) to carry out the above method of the invention.

[0029] The invention extends to a non-transitory computer-readable storage medium storing executable computer program instructions implementing the above method aspect of the invention.

[0030] According to an aspect of the present invention there is provided a transaction processing system comprising a computer security device according to the above computer security device aspect of the present invention.

[0031] According to an aspect of the present invention there is provided a transaction device payment network arranged to route transaction messages between a merchant and a transaction processing system, the network comprising a computer security device according to the computer security device aspect of the present invention.

[0032] According to an aspect of the present invention there is provided a computer security device for detecting security vulnerabilities in a transaction processing system, the device comprising: an input arranged to receive configuration data relating to the transaction processing system; a communications interface arranged to output transaction authorisation request messages for processing by the transaction processing system and to receive authorisation response messages from the transaction processing system; a processor arranged to: analyse the received configuration details of the transaction processing system and to determine one or more fraudulent transaction types that the transaction processing system is potentially vulnerable to; generate one or more transaction authorisation request messages emulating the determined one or more fraudulent transaction types; output the one or more generated transaction authorisation request messages via the communications interface to the transaction processing system.

[0033] Authorisation response messages received from the transaction processing system via the communications interface may be analysed to identify the presence of security vulnerability issues in the transaction processing system. Such analysis may be undertaken by the computer security device or may be undertaken by a separate processor located within the transaction payment network, e.g. within a third party back office system that may be arranged to receive authorisation messages and to analyse such messages. The third party system may generate a report of the security status of the transaction processing system.

[0034] The third party system may also feedback security vulnerability information to the computer security device so that it can take appropriate action. Therefore, the computer security device may receive data relating to identified configuration issues in the transaction processing system and the processor may generate a configuration control signal for controlling the transaction processing system, the control signal arranged to update configuration settings of the transaction processing system to remove an identified configuration issue and the communications interface is arranged to output the configuration control signal to the transaction processing system.

[0035] The processor may be also or alternatively be arranged to generate a control signal arranged to control the transaction control system such that transactions corresponding to security vulnerabilities are rejected until the configuration settings of the transaction processing system have been updated.

[0036] Within the scope of this application, it is expressly intended that the various aspects, embodiments, examples and alternatives set out in the preceding paragraphs, in the claims and/or in the following description and drawings, and in particular the individual features thereof, may be taken independently or in any combination. That is, all embodiments and/or features of any embodiment or claim can be combined in any way and/or combination, unless such features are incompatible. The applicant reserves the right to change any originally filed claim or file any new claim accordingly, including the right to amend any originally filed claim to depend from and/or incorporate any feature of any other claim although not originally claimed in that manner.

Brief Description of Figures



[0037] Embodiments of the invention will now be described, by way of example, with reference to the accompanying Figures, of which:

Figure 1 shows a schematic representation of a payment system;

Figure 2 shows a computer security device according to an embodiment of the present invention;

Figure 3 shows a method of operating a computer security device according to an embodiment of the present invention;

Figure 4 shows a schematic of part of a payment system incorporating a computer security device according to Figure 2.


Detailed Description



[0038] Figure 1 is a schematic diagram of a typical four-party model or four-party payment transaction scheme. The diagram illustrates the entities present in the model and the interactions occurring between entities. It is noted however that the systems and methods according to embodiments of the present invention relate to the discovery of vulnerabilities in an electronic authorisation system and, as such, may be deployed/used in alternative payment transaction system arrangements.

[0039] Normally, card schemes - payment networks linked to transaction devices (including payment cards) - are based on one of two models: a three-party model (adopted by American Express) or a four-party model (adopted by Visa and Mastercard). For the purposes of this document, the four-party model 100 is described in further detail below.

[0040] The four-party model may be used as a basis for the transaction network. For each transaction, the model comprises four entity types: cardholder 110, merchant 120, issuer 130 and acquirer 140. In this model, the cardholder 110 purchases goods or services from the merchant 120. The issuer 130 is the bank or any other financial institution that issued the transaction device to the cardholder 110. The acquirer 140 provides services for transaction device processing to the merchant 120.

[0041] The model also comprises a central payment card network 150 - interactions between the issuer 130 and the acquirer 140 are routed via the payment card network 150. The payment card network 150 enables a merchant 120 associated with one particular bank (acquirer 140) to accept payment transactions from a cardholder 110 associated with a different bank (issuer 130).

[0042] A typical transaction between the entities in the four-party model can be divided into two main stages: authorisation and settlement. The cardholder 110 initiates a purchase of a good or service from the merchant 120 using their transaction device (e.g. a payment card). Details of the transaction device and the transaction are sent to the issuer 130 via the acquirer 140 and the payment card network 150 to authorise the transaction. Should the transaction be considered abnormal by the issuer 130, the cardholder 110 may be required to undergo a verification process to verify their identity and the details of the transaction. Once the verification process is complete the transaction is authorised.

[0043] On completion of the transaction between the cardholder 110 and the merchant 120, the transaction details are submitted by the merchant 120 to the acquirer 140 for settlement.

[0044] The transaction details are then routed to the relevant issuer 130 by the acquirer 140 via the payment card network 150. Upon receipt of these transaction details, the issuer 130 provides the settlement funds to the payment card network 150, which in turn forwards these funds to the merchant 120 via the acquirer 140.

[0045] Separately, the issuer 130 and the cardholder 110 settle the payment amount between them. In return, a service fee is paid to the acquirer 140 by the merchant 120 for each transaction, and an interchange fee is paid to the issuer 130 by the acquirer 140 in return for the settlement of funds.

[0046] Systems and methods are described herein for evaluating payment transaction systems for vulnerabilities that may be exploited for fraudulent purposes.

[0047] At least some known credit/debit transaction device purchases involve the exchange of a number of network messages (relating to the transaction device such as a payment card) between the merchant, acquirer, and issuer parties of the above described four-party interchange model. Such messages may include authorizations, advices, reversals, account status inquiry presentments, purchase returns, and chargebacks. The credit or debit transaction device payment transaction messages may include several transaction attributes, such as, for example, primary account number (either real or virtual), transaction amount, merchant identifier, acquirer identifier (the combination of which with above uniquely identifies a merchant), transaction date-time, and address verification.

[0048] In some situations such as in-store credit card purchases, the issuer of the transaction device typically assumes liability for certain aspects of the transaction, such as chargebacks. In other situations, such as online transactions through a merchant web site, the merchant party in the transaction assumes initial liability for certain aspects of the transaction unless, for example, certain risk-mitigating steps are taken, such as an authentication step.

[0049] Figure 2 shows a computer security device 254 in accordance with embodiments of the present invention. The device 254 comprises an input 257 for receiving configuration data relating to a transaction processing system, a processor 255 and a communications interface 259 for sending transaction authorisation request messages and receiving authorisation response messages from the transaction processing system.

[0050] Figure 3 shows a method of operating the computer security device 254 of Figure 2 in order to determine security vulnerabilities of a transaction processing system.

[0051] In step 306, configuration data relating to the transaction processing system is received at the input 257. The received configuration data is analysed in step 308 by the processor 255 in order to determine the potential fraudulent transaction types that the transaction processing system could be vulnerable to if it has been misconfigured. In step 310 a number of transaction authorisation request messages are generated by the processor 255. These messages are designed to emulate the messages that would be sent by a fraudulent attacking entity trying to exploit the transaction processing system.

[0052] In step 312 the messages generated by the processor 255 are output to the transaction processing system via the communications interface 259.

[0053] It is noted that the transaction authorisation messages may not be directly output to the transaction processing system and may travel via an intermediate system. For example, the computer security device 254 may be installed within the transaction processing system itself. The transaction authorisation messages may therefore be output to a central payment network (e.g. network 150 from Figure 1) to be processed in the same manner as normal transaction messages and may subsequently re-enter the transaction processing system 130. This is described in more detail in Figure 4 below.

[0054] Authorisation response messages may be received at the communications interface 259 in step 326 and these may be analysed in step 330 to determine the presence of security vulnerability issues (e.g. arising from configuration issues, software coding issues, incomplete system implementation issues).

[0055] Figure 4 shows part of a transaction network which incorporates a computer security device according to an embodiment of the present invention.

[0056] Figure 4 shows hardware elements of the payment card network 150 and issuer bank system 130 in Figure 1 in more detail.

[0057] [It is noted that in the following description the computer security device is shown located within the issuer bank system 130 and being arranged to interact with the payment card network. It will be appreciated by the skilled person that the computer security device could alternatively be integrated into the payment card network 150.]

[0058] The payment card network 150 comprises a communications network 200 which is arranged to work out the issuer bank entity 130 for any transactions received from a merchant banking entity and to send the received transactions to the appropriate issuer entity 130.

[0059] As shown in Figure 4, the payment card network 150 further comprises an enterprise service 202 a web server 204 and a portal 206. The communications network 200 is in communication with the enterprise service 202 which acts as a doorway to the communications network 200.

[0060] The web server 204 and portal 206 provide the means for a user within the issuer system 130 to interface and communicate with the payment card network 150 in order to operate a computer security device in accordance with embodiments of the present invention.

[0061] The issuer system 130 comprises an authorisation host server 250 arranged to process transaction authorisation request messages received from a merchant 120 via the acquirer 140 and payment card network 150. For the sake of clarity the merchant 120 and acquirer 140 are not shown in Figure 2.

[0062] In accordance with an embodiment of the present invention the issuer system 130 further comprises a web browser 252 which is arranged to communicate with the portal 206. The web browser is in communication with a computer security device 254 in accordance with an embodiment of the present invention. The device 254 may comprise or be hosted within a dedicated computer or server device or may be hosted by another computer or server device within the issuer system 130.

[0063] It is therefore noted that the issuer system 130 represents the transaction processing system that the computer security device assesses for security vulnerabilities.

[0064] The computer security device comprises the processor 255, input 257 and communications interface 259, as described in relation to Figure 2 for communicating with the authorisation host server 250 via the payment card network 150. The issuer system 130 may comprise a transaction device reader 261 which is in communication with the computer security device 254 via the input 257.

[0065] The payment card network 150 further comprises a back office computer system 260 and a database 262.

[0066] The operation of a computer security device 254 in accordance with an embodiment of the present invention is now described in conjunction with Figure 4.

[0067] In step 300 a user 301 at the issuer system 130 logs into the portal 206 via the web browser 252 and, in step 302, selects an option to download a computer security device program/application to a computer or server device within the issuer system 130.

[0068] It is noted that within Figure 4 and the following description a computer program is downloaded to and run within the local environment of the issuer system, the computer program comprising code that configures a computer or server device to operate as the computer security device of Figure 4. In alternative arrangements however the computer security device may be a dedicated hardware device. In further arrangements the computer security device may be hosted within the payment issuer network 150 and may be accessed remotely by the user 301.

[0069] In step 304, the computer security device program/application is installed within the issuer system 130 to provide the computer security device 254.

[0070] The potential security vulnerabilities of the issuer system 130 and in particular the host server 250 are then assessed in steps 306 to 330 as described below.

[0071] In step 306 a transaction device is read by the card reader 261 and data from the transaction device is received at the input 257 (It is noted that step 306 corresponds to step 10 in Figure 3). Further, the computer security device may exchange data with the transaction device and the processor may be arranged to communicate (via a further communications interface) with the transaction device in order to generate transaction data for use in generating the one or more transaction authorisation request messages (in such a further arrangement the input 257 may operate as the further communications interface).

[0072] In step 308 a test plan for testing security vulnerabilities (e.g. configuration vulnerabilities) of the host server 250 is built. This test plan may be generated in part by analysing the received transaction card data from step 306 since details of the applications and functionality supported by the transaction device will be indicative of the configuration of the host server 250. Additionally further configuration details may be supplied via the input 257 to the computer security device 254. In particular the user 301 may directly provide configuration details of the transaction processing system, e.g. in response to a request from the computer security device to provide such details.

[0073] Based on the received configuration details of the transaction processing system 130, the computer security device may be arranged to determine security vulnerability issues (one or more fraudulent transaction types) that transaction processing system 130 may be vulnerable to from a criminal entity. (It is noted that this step 308 corresponds to step 20 in Figure 3.)

[0074] For example, in the event that a transaction device with the transaction processing system 130 is configured for domestic transactions only, then the computer security device may be arranged to generate transaction authorisation request messages that emulate an international transaction in order test that the transaction is declined by the transaction processing system 130.

[0075] It is further noted that the computer security device may be arranged to suppress the generation of transaction authorisation messages that emulate fraudulent transaction types that the transaction processing system is already known not to detect. For example, if the transaction processing system is not configured to detect relay attacks then the computer security device may be configured such that it does not emulate transaction authorisation messages representing this type of attack. Additionally, there are a number of potential fraud scenarios where the fraudster attempts to make a terminal believe that a transaction device (card) has successfully verified an Offline PIN, while actually this is not the case. These scenarios may be covered by one or several test cases. However, if the card scanned for the purpose of building the test plan does not support Offline PIN, then such test cases may be discarded. Similarly, if the card does not implement specific countermeasures to relay attacks, there may be no need generating transactions featuring relay attack patterns, as clearly such patterns won't be spotted by the issuer host.

[0076] In step 310 the computer security device 254 generates one or more transaction authorisation request messages and, in step 312, outputs these messages to the issuer host server 150 via the communications interface 259. Such messages are routed via the web server 204 (step 312), enterprise service (step 314), communications network 200 (step 316) to the host server 250. The one or more transaction authorisation request messages are arranged to emulate the one or more fraudulent transaction types that have been identified in step 308.

[0077] The issuer host server 250 processes the received transaction authorisation request message in step 319 and generates an authorisation response message which is then routed back through the communications network 200 (step 320), enterprise server (step 322), web server 204 (step 324) back to the communications interface 259 in step 326. The web server is also arranged, in step 328, to store the received authorisation response messages in the database 262.

[0078] Once the authorisation response message(s) have been received by the computer security device 254, the processor 255 of the computer security device 254 may analyse, in step 330 (shown in Figure 3), the received authorisation response messages to identify the presence of any security issues in the transaction processing system. Such security issues may arise from configuration issues within the transaction processing system, incomplete system implementation issues or software coding issues.

[0079] The presence of such security issues may be determined by the fact that the transaction processing system has processed a transaction type incorrectly, has processed a transaction type that it is not meant to process (e.g. because it is not meant to be configured to process such transaction types or because the transaction request has reused previously submitted information) or has returned data within the response message that it is not meant to. Further transaction types that might be emulated are noted in the table below.

[0080] The computer security device 255 may be arranged to generate a report of the identified configuration issues that relate to security vulnerabilities along with suggested remedial action. This report may be output to an authorised representative of the transaction processing system or output 340 to the database 262. Reports may be generated and distributed in a wide variety of ways, ranging from a PDF file sent by email to a security dashboard accessible by authorized users on a corporate web site.

[0081] The processor may be arranged to generate a control signal 342 arranged to control the transaction control system such that transactions corresponding to security vulnerabilities are rejected until the configuration settings of the transaction processing system have been updated. In the event that the computer security device identifies a configuration issue at the transaction processing system, the computer security device may output a control signal 342 that blocks (rejects) any transactions that correspond to an identified security vulnerability.

[0082] It is noted that the transaction authorisation request messages generated by the processor in step 310 may be arranged to emulate one or more of: magnetic stripe transactions; magnetic stripe contactless transactions; EMV contact transactions; contactless transactions of card-not-present transactions. Additionally, the transaction authorisation request messages may be generated to mimic messages originating from different sources, e.g. the transaction authorisation request messages may be configured to look like they have originated from one or more of: an automatic cash machine (ATM); an attended point-of-sale (POS) terminal; an unattended POS terminal; a merchant website. The generated transaction authorisation request messages generated by the processor are arranged to emulate one of more of the following fraud patterns: counterfeit transaction device; wedge attacks; pre-play attacks; replay attacks; cross-contamination; fraudster-induced exception processing.

[0083] It is noted that in Figure 4 the authorisation response messages are returned to the computer security device 254 in step 326 so that the presence of security issues can be identified from these messages in step 330 (shown in Figure 3). In an alternative arrangement however the authorisation response messages may be received and analysed elsewhere (e.g. within a computer device in the payment card network 150). In such an arrangement the computer security device 254 may alternatively in step 326 receive a message instructing the next transaction authorisation request messages to be sent. The computer security device may also be sent a message instructing it to send an authorisation request message that does not emulate a fraud pattern in order to check that the transaction processing system is still up and running and has not, for instance, disabled the test account.

[0084] In an alternative arrangement to that shown in Figure 4, the computer security device 254 may be operated independently of the issuer system 130. In such an implementation the device 254 does not seek any direct input from the issuer regarding the configuration of the issuer system 130 and additionally does not use data generated by the issuer's cards or devices.

[0085] Instead, the device 254 may collect configuration data by analysing transactions that have been performed in the past by genuine cardholders and been routed through issuer's production environment (possibly through an international card network). In such an implementation the ability of the computer security device 254 to emulate fraud patterns is limited by:
  • The amount of data (transactions) which can be observed on the network
  • The inability to access live payment cards or payment devices, and therefore the inability to generate transactions requiring card/device-originated dynamic data.


[0086] As noted above the computer security device according to embodiments of the present invention may emulate a number of fraud patterns such as:
  • counterfeit transaction device in which transaction device information is stolen in order to make a fake transaction device or in which the transaction device information is sold;
  • wedge attacks in which an electronic device (a "wedge" or "skimming device") is used to record all the information contained within the magnetic strip of a transaction device;
  • pre-play attacks in which an attacked prepares for an attack by carrying out a simulated transaction while pretending to be the transaction device to be attacked and then repeats the attack a second time with the real device when it is likely to carry out the same operations as in the simulation;
  • replay attacks in which a valid transaction using a transaction device is attacked such that the data being transmitted is repeated or delayed;
  • cross-contamination in which the radio frequency signal from an RFID enabled transaction device is sent in the same form as magnetic strip data in plain text and an attacker subsequently uses this data to create a magstripe card, re-encode an existing card or use the data in a cardholder-not-present transaction;
  • fraudster-induced exception processing (in this fraudulent transaction type the aim of the fraudster is to "confuse" the transaction processing system by generating a transaction message that is not expected. The transaction processing system then moves into an error state where the transaction is approved. For example, the validation of chip-generated cryptograms typically uses as input a chip-provided key index indicating what cryptographic key the issuer host must use. If a valid key index is replaced with an invalid one, then an incorrectly programmed issuer host system could approve the transaction).


[0087] Further details, by way of examples of embodiments of the present invention, of several fraud types that the computer security device 254 may emulate are contained in Table 1 below.
Table 1
Fraud typeFraud/Attack Vector Description
Counterfeit This attack vector replaces the Application Cryptogram of an EMV transaction with a randomly generated value
Fraudster-induced exception processing This attack vector replaces the Key Derivation Index in the Issuer Application Data (tag 9F10) of an EMV transaction with a different value
Replay This attack vector replays the same transaction data in 2 consecutive authorization requests
Preplay This attack vector performs an "out-of-band" authorization request for a EMV transaction, with the Application Transaction Counter (ATC) is higher than the highest ATC the host should accept
Cross-contamination This attack vector sends transaction data for a contact EMV transaction in an authorization message identified as for a transaction performed over the contactless interface
Wedge device This attack vector emulates a wedge device turning an EMV card into a yes-card accepting any Offline PIN, where the card detects and reports wedge presence
Lost & Stolen This attack vector a transaction with Offline PIN counter exhausted, as reported by the terminal
Relay This attack vector emulates a transaction where the relay resistance time limits have been exceeded


[0088] The computer security device may be arranged to generate and output a report to the issuer summarising the results of the analysis of the issuer transaction system. The report may comprise:
  • Finding Reference - a reference number may be assigned to the vulnerability in the report
  • Criticality - The severity of the vulnerability may be categorised, e.g. into low vulnerability (where the security vulnerability has a low potential for fraud), medium vulnerability (e.g. where the security vulnerability has some potential for fraud but has not been exploited yet for large scale fraud) and high vulnerability (for security vulnerabilities that have significant and immediate potential for fraud)
  • Bank identification numbers (BINs) affected - the BIN is the first four to six digits that appear on a transaction device and are associated with the issuer who issues a device. An issuer would have a range of BINs
  • Summary - a short description of the vulnerability
  • Background - the potential opportunity for fraud resulting from the vulnerability, if exploited, may be detailed P47039EP
  • Remediation - Guidance on how the vulnerability should be addressed may be provided.


[0089] As the person skilled in the art will appreciate, modifications and variations to the above embodiments may be provided, and further embodiments may be developed, without departing from the spirit and scope of the invention. Reference to standards and proprietary technologies are provided for the purpose of describing effective implementations, and do not limit the scope of the invention.


Claims

1. A computer security device (254) for detecting security vulnerabilities in a transaction processing system (130), the device comprising:

an input (257) arranged to receive configuration data relating to the transaction processing system

a communications interface (259) arranged to output transaction authorisation request messages for processing by the transaction processing system and to receive authorisation response messages from the transaction processing system

a processor (255) arranged to:

analyse (308) the received configuration data relating to the transaction processing system and to determine one or more fraudulent transaction types that the transaction processing system is potentially vulnerable to;

generate (310) one or more transaction authorisation request messages emulating the determined one or more fraudulent transaction types;

output (312) the one or more generated transaction authorisation request messages via the communications interface to the transaction processing system;

analyse (330) any authorisation response messages from the transaction processing system received via the communications interface to identify the presence of security vulnerability issues in the transaction processing system.


 
2. A computer security device as claimed in Claim 1, wherein the processor (255) is arranged to analyse received authorisation response messages in order to determine if the transaction processing system is exposed to a potential fraud attack based on each emulated fraudulent transaction type.
 
3. A computer security device as claimed in Claim 1 or Claim 2, wherein the input (257) is arranged to receive data from a transaction device that has been read by a transaction device reader (261).
 
4. A computer security device as claimed in Claim 3, wherein the received data comprises data related to an Application Interchange Profile (AIP) or an Application Usage Control (AUC) associated with a transaction device.
 
5. A computer security device as claimed in Claim 3 or Claim 4, wherein the processor is arranged to determine transaction processing system functionality supported by the transaction device, such functionality being indicative of the configuration details of the transaction processing system.
 
6. A computer security device as claimed in any one of Claims 3 to 5, wherein the processor is arranged to use data generated by the transaction device to generate the one or more transaction authorisation request messages.
 
7. A computer security device as claimed in any one of Claims 3 to 6, further comprising a further communications interface arranged to exchange data with the transaction device and the processor is arranged to communicate with the transaction device in order to generate transaction data for use in generating the one or more transaction authorisation request messages.
 
8. A computer security device (254) as claimed in any preceding claim wherein the transaction authorisation request messages generated by the processor (255) are arranged to:

(i) emulate one or more of: magnetic stripe transactions; magnetic stripe contactless transactions; EMV contact transactions; contactless transactions of card-not-present transactions; and/or

(ii) mimic messages originating from one or more of: an automatic cash machine (ATM); an attended point-of-sale (POS) terminal; an unattended POS terminal; a merchant website; and/or

(iii) emulate one of more of the following fraud patterns: counterfeit transaction device; wedge attacks; pre-play attacks; replay attacks; cross-contamination; fraudster-induced exception processing.


 
9. A computer security device as claimed in any preceding claim, wherein the processor is arranged to construct a vulnerability assessment report based on analysed received authorisation response messages, the vulnerability report comprising all the identified configuration issues within the transaction processing system.
 
10. A computer security device as claimed in any preceding claim, wherein the processor is arranged to generate a configuration control signal for controlling the transaction processing system, the control signal arranged to update configuration settings of the transaction processing system to remove an identified configuration issue and the communications interface is arranged to output the configuration control signal to the transaction processing system.
 
11. A computer security device as claimed in any preceding claim, wherein the processor is arranged to generate a control signal arranged to control the transaction control system such that transactions corresponding to security vulnerabilities are rejected until the configuration settings of the transaction processing system have been updated.
 
12. A computer security device as claimed in any preceding claim, wherein the processor is arranged to generate a request to the transaction processing system to supply historical transaction data that has been processed by the transaction processing system and the processor is arranged to generate one or more transaction authorisation request messages by modifying the received historical transaction data.
 
13. A method for detecting security vulnerabilities in a transaction processing system (130), the method comprising:

receiving (306) configuration data relating to the transaction processing system

analysing (308), in a processor, the received configuration data relating to the transaction processing system and determining one or more fraudulent transaction types that the transaction processing system is potentially vulnerable to;

generating (310), in the processor, one or more transaction authorisation request messages emulating the determined one or more fraudulent transaction types;

outputting (312) via the communications interface, the one or more generated transaction authorisation request messages to the transaction processing system;

receiving (326), via the communications interface, authorisation response messages from the transaction processing system;

analysing (330) received authorisation response messages to identify the presence of security vulnerability issues in the transaction processing system.


 
14. A computer program comprising instructions which, when the program is executed by a computer, cause the computer to carry out the method of Claim 13.
 
15. A computer readable storage medium comprising instructions which, when executed by a computer, cause the computer to carry out the method of Claim 13.
 




Drawing