A Low-Cost Attack on Branch-Based Software Watermarking Schemes
- 847 Downloads
In 2005, Ginger Myles and Hongxia Jin proposed a software watermarking scheme based on converting jump instructions or unconditional branch statements (UBSs) by calls to a fingerprint branch function (FBF) that computes the correct target address of the UBS as a function of the generated fingerprint and integrity check. If the program is tampered with, the fingerprint and integrity checks change and the target address will not be computed correctly. In this paper, we present an attack based on tracking stack pointer modifications to break the scheme and provide implementation details. The key element of the attack is to remove the fingerprint and integrity check generating code from the program after disassociating the target address from the fingerprint and integrity value. Using the debugging tools that give vast control to the attacker to track stack pointer operations, we perform both subtractive and watermark replacement attacks. The major steps in the attack are automated resulting in a fast and low-cost attack.
Keywordssoftware watermark unconditional branch breakpoint
Unable to display preview. Download preview PDF.
- 1.Collberg, C., Carter, E., Debray, S., Huntwork, A., Linn, C., Stepp, M.: Dynamic path-based software watermarking. In: Proceedings of Conference on Programming Language Design and Implementation, vol. 39, pp. 107–118 (June 2004)Google Scholar
- 3.Collberg, C., Kobourov, S., Carter, E., Thomborson, C.: Error-correcting graphs for software watermarking. In: Proceedings of 29th Workshop on Graph Theoretic Concepts in Computer Science, pp. 156–167 (2003)Google Scholar
- 4.Collberg, C., Thomborson, C.: Software watermarking: Models and dynamic embeddings. In: Proceedings of Principles of Programming Languages 1999, POPL 1999, pp. 311–324 (1999)Google Scholar
- 10.Qu, G., Potkonjak, M.: Analysis of watermarking techniques for graph coloring problem. In: Proceedings of International Conference on Computer Aided Design, pp. 190–193 (1998)Google Scholar
- 12.Sosonkin, M., Naumovich, G., Memon, N.: Obfuscation of design intent in object-oriented applications. In: Proceedings of 3rd ACM workshop on Digital Rights Management, pp. 142–153 (2003)Google Scholar
- 13.Thomborson, C., Nagra, J., Somaraju, R., He, C.: Tamper-proofing software watermarks. In: Proceedings of Australasian Information Security Workshop, vol. 32, pp. 27–36 (2004)Google Scholar