Research Article
Inferring Implicit Assumptions and Correct Usage of Mobile Payment Protocols
@INPROCEEDINGS{10.1007/978-3-319-78813-5_24, author={Quanqi Ye and Guangdong Bai and Naipeng Dong and Jin Dong}, title={Inferring Implicit Assumptions and Correct Usage of Mobile Payment Protocols}, proceedings={Security and Privacy in Communication Networks. 13th International Conference, SecureComm 2017, Niagara Falls, ON, Canada, October 22--25, 2017, Proceedings}, proceedings_a={SECURECOMM}, year={2018}, month={4}, keywords={Mobile payment Payment protocol Protocol extraction}, doi={10.1007/978-3-319-78813-5_24} }
- Quanqi Ye
Guangdong Bai
Naipeng Dong
Jin Dong
Year: 2018
Inferring Implicit Assumptions and Correct Usage of Mobile Payment Protocols
SECURECOMM
Springer
DOI: 10.1007/978-3-319-78813-5_24
Abstract
Although mobile shopping has risen rapidly as mobile devices become the dominant portal to the Internet, it remains challenging for a developer of mobile shopping Apps to implement a correct and secure payment protocol. This can be partly attributed to the misunderstanding, confusion of responsibility and implicit assumptions among multiple separate participants of the payment protocols, which involve at least users, merchants and third-party cashiers (e.g., PayPal). In addition, the documentation of the payment SDK which is written in informal natural languages is often inaccurate, ambiguous and incomplete, such that the developers might be confused. In this paper, we seek to infer the correct usage and hidden assumptions of the most commonly used mobile payment libraries, i.e., PayPal and Visa Checkout. Our approach starts with building mobile checkout systems strictly following the documents of PayPal SDK and Visa Checkout SDK. Afterwards, we propose an algorithm to automatically generate test cases embedding different attacker models to check the correctness and security of the payment procedure. During the testing, our algorithm analyzes the security violations so as to infer the correct usage of these payment libraries. Using our approach, we have successfully found several non-trivial hidden assumptions and bugs in these two payment libraries.