Skip to main content

Implementation and Coding - The holy grail - Code Analysis

Security Verification is a process through which Code can be analyzed. However, as prerequisite, it needs to be addressed with due consideration of What the application is and the business operation that it supports. The main reason for this is that it would be very difficult to prioritize and address the weaknesses. The threat modeling is an important tool and along with the threat model a security review would be an indispensable tool in identifying the root cause of vulnerabilities – CODE.

Based on the prioritized functions and possible attack vectors – For example Protocol Errors may be a potential area for Input validation problems. Based on the preliminary build, it is possible for a preliminary scan of the code base. This should provide a base input that can again be cleaned up to remove unwanted areas to concentrate the efforts and to move to areas of potential weaknesses. The easiest way to achieve this is to use a Static Code Analyzer, a lot of tools are available both open source and proprietary that can look for common coding errors, design flaws or other areas that we can configure the tool to achieve.

One of the important use of the tool is to find issues with the process. If we find areas of concern specific to a vulnerability we can check it against the process followed. It is immaterial what language is used but provides a major input as to the nature of the code base.

The static analysis tools major input in addition to the coding weaknesses is that it drills down to the area of weaknesses, whether the problem is at the design stage or at the earlier stage. If a vulnerability is found – for example, an update is automatically pushed without verifying the source, this can considered a major weakness that is not in the code but in the specifications , which did not specify that the update needs to be taken from a source that is trusted or from a data source that is signed.

The metrics generated by such tool is also an valuable input as it is useful in tracking the performance over time. Time series analysis provides inputs as to the number of vulnerabilities to lines of code and this ratio is important to understand the maturity of the coding process.

Comments

Popular posts from this blog

Malware Damage - It is real and you need to be ready ...

  Malware, short for "malicious software," is any software intentionally designed to cause harm to computer systems, networks, or devices. Malware can take many forms, including viruses, trojan horses, worms, ransomware, spyware, and adware, among others. The dangers of malware are numerous, and it is crucial to protect yourself from malware to avoid serious consequences, such as: Data theft: Malware can be designed to steal personal information, such as bank account details, social security numbers, and login credentials. Once this information is stolen, it can be used for identity theft, financial fraud, and other malicious activities. System damage: Some malware can damage your computer system, causing it to crash or malfunction. This can result in lost data, system downtime, and costly repairs. Financial loss: Malware can also be used to extort money from victims. For example, ransomware can lock down a victim's computer and demand payment in exchange for the decrypti...

CIO Questions answered - Your comments welcome - The reflections of the inner self

Briefly describe the typical size and organization of an IT team that you have managed. Include the division of responsibilities, how you track progress, etc. My experience ranges from me working independently, mainly to maintain my independence when I perform audits to managing a team of more than 25 - 100 consultants in various roles. I have handled multiple projects simultaneously where we have multiple consultants (typically from five to ten) working on multiple projects. We have used a set of tools to specifically monitor progress as well as the milestones. The projects involved were simple roll out of products (Microsoft Active Directory Domain Builds, Log Consolidation, Vulnerability Management) in line with product specifications to complex integration of systems that involves building multiple SoA interfaces for healthcare applications. For a successful project there needs to be proper delegation, personally I believe a person can deliver if he is not micromanaged, identifyi...

A Roadmap to move from Cloud to In premise - The reverse migration -- Is Cloudflation at myth?

 Cloudflation as a term is being used and talks on the spiralling cost of cloud bills for an organization. The easily available and provisioning options leads to workloads that run for no reasons, orphaned accounts and a gamut of costs that are accrued by multiple departments without much of an oversight. There is a trend to reduce the workloads and have a semblance of order. It is imperative that we have plans that helps to reverse the migration to cloud and bring back some of the workloads that might work cheaper to run local. Is there a roadmap to achieve this goal? A few pointers in this direction A roadmap for moving from the cloud to in-premise computing should include the following steps: Assess current workloads: Assess the current workloads that are running on the cloud and determine which workloads would be most suitable for in-premise computing. Identify in-premise infrastructure: Identify the in-premise infrastructure that will be needed to run the identified workloads....