Protecting Applications from Malware and APTs: Today's Challenge
Application software is everywhere. Individuals, businesses, governments, and organizations of all types increasingly depend on software to do its job properly day after day and, for the most part, it does. But for those who want to steal sensitive information or disrupt operations, applications create exciting opportunities.
Why is the application an attractive point of attack? Because it provides targeted access to high-value data. Even if your data is encrypted in your storage environment, it will eventually be used by an application. At the point of use, within the application, that data is exposed. What’s more, high-value applications are easy to identify—it is not hard for an attacker to work out that the billing system accesses account information for current, active users and could provide laser-like access to this valuable data. In contrast, data in isolation, for example on a stolen backup tape, lacks context and probably contains obsolete or expired records, making it much less valuable. Attackers with a purpose, including cyber-criminals or even cyber-terrorists, value context and exploit it. That’s why organizations need to consider protecting data in use as well as data at rest or in motion.
Attackers modify applications to add malicious capabilities, such as exporting credit card numbers to an external file. Malicious software (malware) that pretends to be from a trusted commercial vendor or in-house development team can seriously harm a company’s reputation and its business. Companies should take steps to assess and mitigate these risks to their business, their infrastructure, and their customers’ information—risks that increase with cloud-based deployments. To counter these threats, organizations can consider taking the following steps:
- Know the specific risks to the organization and its trading partners. Analyze individual processes in order to understand the risks and implications of failure. What if the process is disrupted? What if data is stolen? Where does the application originate? Who and what has access to the code? Is the process running in a trusted location?
- Implement measures to detect modification of application software. By using a secure digital signing process to sign application code and subsequently verifying those digital signatures organizations can improve their ability to ensure that application code in use is the same as the code that was published. If signatures are verified frequently, the organization can quickly detect any suspicious code and minimize impact on the business.
- Prevent modification of software as it runs. Executing highly sensitive code, or code that works with highly sensitive data, within a secure, physically and logically protected environment will protect software from modification or data theft while it is running.
- Implement a robust software publishing practice for in-house developers. Document who is responsible for publishing code and maintenance updates and what checks and balances are in place to minimize the threat of rogue employees and malicious insiders.
- Attackers can modify applications to steal sensitive data or disrupt critical operations.
- Application-level attacks can be extremely hard to detect because they are often capable of covering their own tracks, turning off detection mechanisms, and faking audit log entries; inability to detect attacks quickly can lead to long-term breaches and high volumes of data theft.
- Malware attacks against commercial software can result in serious damage to company reputation.
- Attacks against embedded firmware, for example within smartphones, point of sale devices, or smart meters, particularly at the point of manufacture, can facilitate widespread abuse and potentially impact enormous populations of devices.
Protecting Applications from Malware and APTs: Thales e-Security Solutions
Thales e-Security can help your organization reduce the likelihood of data-stealing attacks and protect the integrity of your business by safeguarding applications against malware incursions. Solutions for secure code signing and secure code execution from Thales can help you create a high-assurance application infrastructure that is secure, scalable, and easy to manage.
- By routinely signing code, organizations enable processes that verify that code in use is the same as code that was published. As a result, any unauthorized code modification can be detected instantly. Thales offers comprehensive code signing solutions that optimize the security of the code signing process itself and also introduce new organizational controls and workflow to formalize the request and approval processes that control code publication.
- By executing code within a secure environment, organizations can protect that code from tampering or data theft while it is running. The CodeSafe option for nShield hardware security modules (HSMs) enables secure execution of highly sensitive application code within the secure boundary of a tamper-resistant HSM, thereby protecting critical processes. Examples of applications that might be secured in this way include a metering or counting system that measure usage for billing and other purposes and implementations of proprietary online authentication protocols that must be kept confidential and yet might be exposed to web based attacks.
- Safeguard the integrity of your software and your company’s reputation
- Protect your customers’ and partners’ sensitive information from theft and misuse
- Detect and address attacks quickly
- Introduce new practices to control the publication of in-house developed software
- Gain the confidence and flexibility to allow sensitive applications to execute in remote or outsourced environments
- Simplify compliance reporting activities through the use of tamper-resistant systems