This vulnerability occurs when software incorporates a function, library, or third-party component that has been explicitly banned by the development team or the customer.
Development teams or clients often create lists of prohibited code for critical reasons. These bans can stem from known security flaws, components that are notoriously hard to use safely, licensing conflicts, export control restrictions, reliance on obsolete or unmaintained code, or internal plans to phase out certain technologies. Ignoring these prohibitions directly introduces the specific risks the ban was meant to prevent. Using banned functions or libraries increases security risk and maintenance costs. These components often have inherent weaknesses that can lead to exploits, and they may force developers to write complex, error-prone workarounds. Furthermore, they can create technical debt through compatibility issues, legal problems from license violations, and increased support overhead for code that the team has officially decided not to support.
Impact: Reduce Maintainability
cc