Securing Application Deployment with Obfuscation and Code Signing: How to Create 3 Layers of Protection for .NET Release Build
By Slava Gomzin
()
About this ebook
Booklet for developers and security professionals on how to implement code obfuscation, .NET strong name signing, and Authenticode code signing in order to protect applications deployment. The guide contains detailed description of different code signing implementation options from basic software to sophisticated hardware solution.
Topics include: reasons to implement code obfuscation and signing, obfuscation and strong name signing dependencies, description of Authenticode signing process, singing certificates and certificate authorities, signing certificate private key storage: hardware vs. software, three ways to implement code signing, and more (Article: ~4,460 words).
Table of Contents includes:
1. Introduction
Several Reasons to Implement Code Obfuscation and Signing
Additional Benefits of Strong Name Signing
Additional Benefits of Authenticode Signing
2. Code Obfuscation and Strong Name Signing
Code Obfuscation Tools
Obfuscation Project and Strong Name Signing
Obfuscation and Strong Name Signing from Command Line
3. Authenticode Code Signing
Code Signing
Digital Signatures
How Code Signing Works
Authenticode
Code Signing Certificate
X.509 Standard
Obtaining Code Signing Certificate
Signing Certificate Pricing
Code Signing Certificate Storage: Hardware vs. Software
Time Stamping
Certificate Validity (Expiration Date)
4. Implementing Authenticode Signing
Code Signing Process à la Microsoft
Code Signing Implementation Options: Advantages, Disadvantages, Costs
Option 1: “Full Hardware”
Option 2: “Basic Software”
Option 3: “Combined Software/Hardware”
5. Tips on Implementing “Combined Software/Hardware” Option
Requirements to Signing Application
6. Tips on Implementing “Basic Software” Option
Installing Code Signing Certificate on Signing Server
SignTool
Installing SignTool
Using SignTool
5. Testing
Testing Obfuscation
Testing Strong Name Signatures
Testing Authenticode Signatures
6. Resources
Tools and Products
Authenticode Certificates Offered by Public Certificate Authorities
Online Authenticode Timestamping Services
Standards
Articles
Books
About the Author
Slava Gomzin, CISSP, ECSP, Security+ has more than 15 years of professional experience in software development and application security. He is Security Architect at Retalix USA.
Slava Gomzin
Slava Gomzin is a Security and Payments Technologist at Hewlett-Packard, where he helps create products that are integrated into modern payment processing ecosystems using the latest security and payments technologies. Prior to joining Hewlett-Packard, Slava was a security architect, corporate product security officer, R&D and application security manager, and development team leader at Retalix, a Division of NCR Retail. As PCI ISA, he focused on security and PA-DSS, PCI DSS, and PCI P2PE compliance of POS systems, payment applications, and gateways. Before moving into security, Slava worked in R&D on design and implementation of new products including next-generation POS systems and various interfaces to payment gateways and processors. Slava currently holds CISSP, PCIP, ECSP, and Security+ certifications. He blogs about payment security at www.gomzin.com.
Read more from Slava Gomzin
Hiding Web Traffic with SSH: How to Protect Your Internet Privacy against Corporate Firewall or Insecure Wireless Rating: 0 out of 5 stars0 ratingsProtecting Confidential Information: How to Securely Store Sensitive Data Rating: 0 out of 5 stars0 ratingsSecuring Email Communication: How to Protect Your Correspondence from Wiretapping Using Free Tools Rating: 0 out of 5 stars0 ratingsSecuring .NET Web Services with SSL: How to Protect “Data in Transit” between Client and Remote Server Rating: 0 out of 5 stars0 ratings
Related to Securing Application Deployment with Obfuscation and Code Signing
Related ebooks
Easy Private Browsing: How to Send Anonymous Email, Hide Your IP address, Delete Browsing History and Become Invisible on the Web Rating: 0 out of 5 stars0 ratingsThe Concise Guide to SSL/TLS for DevOps Rating: 5 out of 5 stars5/5Dictionary of Information Security Rating: 1 out of 5 stars1/5CheckPoint NG VPN 1/Firewall 1: Advanced Configuration and Troubleshooting Rating: 5 out of 5 stars5/5Practical VoIP Security Rating: 0 out of 5 stars0 ratingsEleventh Hour Linux+: Exam XK0-003 Study Guide Rating: 4 out of 5 stars4/5CISSP Study Guide Rating: 3 out of 5 stars3/5SSCP Systems Security Certified Practitioner Study Guide and DVD Training System Rating: 0 out of 5 stars0 ratings10 Things That Used to be Good Ideas in Data Security Rating: 0 out of 5 stars0 ratingsManaging Cisco Network Security Rating: 3 out of 5 stars3/5Rumi's Little Book of Life: The Garden of the Soul, the Heart, and the Spirit Rating: 4 out of 5 stars4/5The Best Damn Cisco Internetworking Book Period Rating: 5 out of 5 stars5/5Cisco CCNA/CCENT Exam 640-802, 640-822, 640-816 Preparation Kit Rating: 2 out of 5 stars2/5Managing Information Security Rating: 5 out of 5 stars5/5Wireless Hacking: Projects for Wi-Fi Enthusiasts: Cut the cord and discover the world of wireless hacks! Rating: 5 out of 5 stars5/5CISSP Practice Exams, Fourth Edition Rating: 5 out of 5 stars5/5No Tech Hacking: A Guide to Social Engineering, Dumpster Diving, and Shoulder Surfing Rating: 4 out of 5 stars4/5Security Risk Management: Building an Information Security Risk Management Program from the Ground Up Rating: 4 out of 5 stars4/5Hardware Hacking: Have Fun while Voiding your Warranty Rating: 5 out of 5 stars5/5Low Tech Hacking: Street Smarts for Security Professionals Rating: 3 out of 5 stars3/5Cuckoo Malware Analysis Rating: 0 out of 5 stars0 ratingsSecuring Windows: How to Protect Your Computer Properly Rating: 0 out of 5 stars0 ratingsSecuring Cloud Services: A pragmatic approach to security architecture in the Cloud Rating: 0 out of 5 stars0 ratings
Reviews for Securing Application Deployment with Obfuscation and Code Signing
0 ratings0 reviews
Book preview
Securing Application Deployment with Obfuscation and Code Signing - Slava Gomzin
Securing Application Deployment with Obfuscation and Code Signing
How to Create 3 Layers of Protection for .NET Release Build
Application Security Series
Slava Gomzin
Cover Photo and Design: Alisa Levy
Smashwords Edition
Copyright © 2012 Slava Gomzin
Table of Contents
1. Introduction
Several Reasons to Implement Code Obfuscation and Signing
Additional Benefits of Strong Name Signing
Additional Benefits of Authenticode Signing
2. Code Obfuscation and Strong Name Signing
Code Obfuscation Tools
Obfuscation Project and Strong Name Signing
Obfuscation and Strong Name Signing from Command Line
3. Authenticode Code Signing
Code Signing
Digital Signatures
How Code Signing Works
Authenticode
Code Signing Certificate
X.509 Standard
Obtaining Code Signing Certificate
Signing Certificate Pricing
Code Signing Certificate Storage: Hardware vs. Software
Time Stamping
Certificate Validity (Expiration Date)
4. Implementing Authenticode Signing
Code Signing Process à la Microsoft
Code Signing Implementation Options: Advantages, Disadvantages, Costs
Option 1: Full Hardware
Option 2: Basic Software
Option 3: Combined Software/Hardware
5. Tips on Implementing Combined Software/Hardware
Option
Requirements to Signing Application
6. Tips on Implementing Basic Software
Option
Installing Code Signing Certificate on Signing Server
SignTool
Installing SignTool
Using SignTool
5. Testing
Testing Obfuscation
Testing Strong Name Signatures
Testing Authenticode Signatures
6. Resources
Tools and Products
Authenticode Certificates Offered by Public Certificate Authorities
Online Authenticode Timestamping Services
Standards
Articles
Books
About the Author
1. Introduction
One of important characteristics for commercial software is allowing customers to trust the software manufacturer by validating authenticity and integrity of the software components.