SQ14101
Detected Windows executable files packed with runtime packers that reduce or nullify the effects of vulnerability mitigation protections.
priority | CI/CD status | severity | effort | SAFE level | SAFE assessment |
---|---|---|---|---|---|
fail | high | medium | 5 | hardening: fail Reason: mitigation incompatible packers |
About the issueโ
Windows executable files can be converted to self-extracting applications that rebuild their own code during execution. Algorithms that process the executable format, and act as the operating system loader, are typically written in the low-level assembly code. As re-implementations of core system functionalities, they are often an imperfect simulation of complex application loading procedures. Most runtime packers are incompatible with the baseline vulnerability mitigation options that operating systems provide. Therefore, it's a common practice that various security features get silently disabled during this type of software packing. Packed applications typically continue to run without visible software defects, and they can even pass rigorous quality assurance testing. However, such tests rarely evaluate vulnerability mitigation effectiveness.
How to resolve the issueโ
- When this issue is reported, it is common to find additional compatibility issues that the runtime packing has introduced. You should deprecate the use of runtime packers or enforce digital rights management via less intrusive ways that still preserve compatibility with vulnerability mitigation options.
Incidence statisticsโ
ReversingLabs periodically collects and analyzes the contents of popular software package repositories for threat research purposes. Analysis results are used to calculate incidence statistics for issues (policy violations) that Spectra Assure can detect in software packages.
This section is updated when new data becomes available.
Total amount of packages analyzed
- RubyGems: 183K
- Nuget: 644K
- PyPi: 628K
- NPM: 3.72M
Total detections per repository
For every repository, the chart shows the number of packages that triggered the software assurance policy. In other words, it shows how many packages in each package repository were found to have the specific issue described on this page. This information helps you understand how common the issue is across different software communities.
If a repository is absent from the chart, that means none of the packages in that repository triggered this policy during analysis, or the policy was not used during analysis.
Distribution of total detections by project popularity
For every repository, the chart shows how many of the total detections belong to the Top 100 (1-100), Top 1000 (101-1000) and Top 10 000 (1001-10 000) most downloaded projects. This information helps you understand the impact of the issue within each community, making it clearer when the issue affects the most popular projects.
If the chart shows zero values for all of the top project groups, that means all detections were in unranked projects (lower than 10 000 on the list of most downloaded projects).
Recommended readingโ
- An Introduction to Packers (External resource - welivesecurity)
- Top 13 popular packers used in malware (External resource - Infosec)
- Self-Extracting File (External resource - Webopedia)