+44 (0)203 88 020 88

0
0
Subtotal: £0.00

No products in the basket.

No products in the basket.

Menu

Search

Cyber Security News & Articles

 

Cyber Security
News & Articles

Trusted Cyber Security Experts
25+ Years Industry Experience
Ethical, Professional & Pragmatic

2019 CWE Top 25 Most Dangerous Software Errors

The most common causes of CVE

The CWE top 25 is a list of the most common software defects that give rise to CVE being reported.

Mitre, the organisation behind the Common Vulnerabilities and Exposures database, has scanned some 25,000 CVE reports logged within their database and the NIST National Vulnerability Database in order to compile the list for 2019.  By taking into account both the number of CVE reported and their severity, the relative risk of different kinds of software vulnerability can be ranked.  The full Common Weakness Enumeration list can be found here.

Last updated in 2011, the new list is actually based on the CVE raised in 2017 and 2018.

The top three most dangerous software errors are:

1 – Improper Restriction of Operations within the Bounds of a Memory Buffer

This type of defect most often occurs in languages such as C and C++ where the programmer has to manually manage the allocation of their own memory within the software.

A simple example is a Buffer Overflow.  In this situation an amount of data is accepted into an input buffer (location in memory) and copied to another location (the output buffer) without first checking that the amount of data in the input is smaller than the amount of memory allocated to the output buffer. If the amount of copied memory is larger than the output buffer size, the copy operation continues and overwrites the memory adjacent to the output buffer.  Where an attacker controls the contents of the data being copied it can then cause program crashes, corruption of data or even the execution of code introduced by the attacker.

2 – Improper Neutralisation of Input During Web Page Generation (‘Cross-site Scripting’)

Cross Site Scripting, or XSS, vulnerabilities can happen when:

  1. A web application allows arbitrary data to be input and stored
  2. The web application then displays that data on a webpage without modification
  3. The resulting webpage is viewed by a web browser and implicitly trusts all the content which has been delivered from the same web server
  4. However, the webpage includes data input in step 1 by a third party which can include executable instructions in javascript, HTML tags and attributes, or FLASH – and the browser executes these instructions producing unexpected behaviours.

The most common XSS attack motivation is to harvest information from user cookies stored in the browser and send these to the attacker who can then use the information to help execute the next stage of an attack.

There are three flavours of XSS attack:

Reflected

A reflected XSS attack occurs when the server reads data from an HTTP request and reflects it back to the browser in the response where it is executed by the browser.

A simple example would be to append a javascript instruction to the end of the URL which displays a fake dialogue box on screen in an attempt to capture login credentials for the site and send them to the attacker.

Persistent

A persistent XSS attack occurs when the attacker is able to store their attack code in the web-applications database – as a forum post for example.  Then when that data is included in a webpage viewed by another users, the code is executed by the users browser.

DOM-based

Reflected and Persistent XSS attacks rely on the server to present the attack code to the browser of the victim.  A DOM-based attack is different in that the client performs the code injection.  This could be part of a chained attack where malicious code already on the victims computer is able to alter Javascript supplied by the server as part of a webpage (for validating form input for example).  Where a server-supplied script processes users-supplied data and reflects it back to the users webpage (with dynamic HTML for example) then a DOM-based attack is possible.

3 – Improper Input Validation

When software does not validate (or incorrectly validates) the data input by a user or API call and that data is later used to control the execution of the software, vulnerabilities occur which can be exploited.

For example, a programmer of server-side code may incorrectly assume the data received from the client which comes from either cookies or hidden forms on a web-page is not able to be modified.  If an attacker uses a proxy or custom application to alter the input data it can cause the server-side software to perform unexpected operations – such as altering the discount on an order in an ecommerce site or changing the account that will be updated with the supplied data.

Unvalidated data can also cause program crashes or enable other attacks to take place such as SQL injections.

Implications of the CWE top 25 list

Security Managers who appreciate the risks described in the CWE top 25 list are able to make more informed choices about how to allocate limited resources for security testing and monitoring.  Because the CWE list is weighted to include the severity or impact of a vulnerability – not simply the number of times it has been reported – it is possible to get an appreciation of the risks posed by different types of vulnerability.

Penetration testers and source code reviews are able to ensure the high-risk, high-impact areas receive appropriate focus to ensure vulnerabilities in your systems are identified and corrected.

 

 

Subscribe to our monthly newsletter today

If you’d like to stay up-to-date with the latest cyber security news and articles from our technical team, you can sign up to our monthly newsletter. 

We hate spam as much as you do, so we promise not to bombard you with emails. We’ll send you a single, curated email each month that contains all of our cyber security news and articles for that month.

Why Choose SecureTeam?

CREST
CCS
ISO9001
ISO27001
CE-PLUS

Customer Testimonials

“We were very impressed with the service, I will say, the vulnerability found was one our previous organisation had not picked up, which does make you wonder if anything else was missed.”

Aim Ltd Chief Technology Officer (CTO)

"Within a very tight timescale, SecureTeam managed to deliver a highly professional service efficiently. The team helped the process with regular updates and escalation where necessary. Would highly recommend"

IoT Solutions Group Limited Chief Technology Officer (CTO) & Founder

“First class service as ever. We learn something new each year! Thank you to all your team.”

Royal Haskoning DHV Service Delivery Manager

“We’ve worked with SecureTeam for a few years to conduct our testing. The team make it easy to deal with them; they are attentive and explain detailed reports in a jargon-free way that allows the less technical people to understand. I wouldn’t work with anyone else for our cyber security.”

Capital Asset Management Head of Operations

“SecureTeam provided Derbyshire's Education Data Hub with an approachable and professional service to ensure our schools were able to successfully certify for Cyber Essentials. The team provided a smooth end-to-end service and were always on hand to offer advice when necessary.”

Derbyshire County Council Team Manager Education Data Hub

“A very efficient, professional, and friendly delivery of our testing and the results. You delivered exactly what we asked for in the timeframe we needed it, while maintaining quality and integrity. A great job, done well.”

AMX Solutions IT Project Officer

“We were very pleased with the work and report provided. It was easy to translate the provided details into some actionable tasks on our end so that was great. We always appreciate the ongoing support.”

Innovez Ltd Support Officer

Get in touch today

If you’d like to see how SecureTeam can take your cybersecurity posture to the next level, we’d love to hear from you, learn about your requirements and then send you a free quotation for our services.

Our customers love our fast-turnaround, “no-nonsense” quotations – not to mention that we hate high-pressure sales tactics as much as you do.

We know that every organisation is unique, so our detailed scoping process ensures that we provide you with an accurate quotation for our services, which we trust you’ll find highly competitive.

Get in touch with us today and a member of our team will be in touch to provide you with a quotation. 

Scroll to Top