OWASP / ASVS

Application Security Verification Standard
Creative Commons Attribution Share Alike 4.0 International
2.77k stars 671 forks source link

CWE mapping will be dropped #1481

Open elarlang opened 1 year ago

elarlang commented 1 year ago

I think CWE mapping is not useful/valuable at the moment. Sometimes it's useful to validate, is it correlating with ASVS requirement text but in big picture - is this mapping actually used?

At the moment we have mapped requirements to obsoleted categories, to views, etc.

CWE-16 section Notes:

Use for Mapping: Prohibited (this CWE ID must not be used to map to real-world vulnerabilities). Categories are informal organizational groupings of weaknesses that help navigation and browsing by CWE users, but they are not weaknesses in themselves [REF-1287]. ... Mapping is also Prohibited because this entry's status is Obsolete.

List of ASVS requirements where mapping points to CWE which type is view or category (not weakness) and/or status is obsolete

Additionally we have at the moment 17 ASVS requirements without CWE mapping.

If we think we need CWE mapping, then there are some questions to solve before fixing the mapping:

For example, Path traversal, in ASVS we have one requirement for that, but there are plenty of CWE values available for Path traversal - basically from CWE-22 to CWE-57.

danielcuthbert commented 1 year ago

100% agree with this and it also sums up my overall experience with CWE as a whole. There are many that could be a single category and mapping that is where we've come unstuck. I'm leaning more towards the one-to-many situation, such as the path traversal category you gave above but also unsure as to how that might work in practice.

tghosth commented 1 year ago

I am wondering how critical CWE is to us? There are obviously problems with them and in some ways I worry that they are a little misleading and if people rely on CWE as a route to map to ASVS, they may end up mistaken.

I wonder if we could just remove these or replace them with references from the OWASP CRE project?

@jmanico @danielcuthbert what do you think?

jmanico commented 1 year ago

CWE mapping is are asked for often. Even if we do not do it perfectly, can we keep taking contributions in this area, please?

elarlang commented 1 year ago

I can not see the reason to provide CWE mapping which is incorrect and does not make sense. For me it's quite boolean decision - we do it correctly (takes quite a lot of resources) or we don't do it at all.

jmanico commented 1 year ago

@elarlang I'm ok with dropping CWE.

tghosth commented 1 year ago

Happy to remove CWE unless there is strong desire for it

vdbaan commented 1 year ago

I see CWE as a nice support, but I know that an ASVS requirement not always matches a CWE completely (I have filed an issue because of this). I support dropping it.

elarlang commented 1 year ago

So it's clear we'll remove CWE and I recomment every other mapping (NIST and proactive controls) from ASVS requirements.

Now we have 2 ways:

Sjord commented 1 year ago

we just remove CWE and all other mappings from ASVS and leave it all on CRE project.

I would prefer to just remove all references.

carloreggiani commented 1 year ago

What's about tool as bitgarden's plugin for Sonarqube https://www.bitegarden.com/support-for-owasp-asvs-standard-security-plugin-for-sonarqube? They provide a very useful report based on ASVS requirement mapped to CWE issue:

"Not every item in the ASVS has an associated CWE, and as CWE has a great deal of duplication. Verification controls are not always mappable to equivalent weaknesses, but OWASP Foundation is working hard with the CWE community on closing this gap."

I'm evaluating this plugin (but also build-in Sonarqube feature in version 9.7), let me know if there is any future for this kind of approach.

Carlo

elarlang commented 1 year ago

I'm evaluating this plugin (but also build-in Sonarqube feature in version 9.7), let me know if there is any future for this kind of approach.

In ideal world, separate mapping project handles that part and there is no need to duplicate this huge work. In practice... we don't know how it will work. It requires a lot of (often volunteer) effort and it's not always good base to get things done (properly).

carloreggiani commented 1 year ago

Agree. There is a "good way" to verify the compliance of a project with the OWASP ASVS?

tghosth commented 1 year ago

Just noting that we should replace CWE with CRE mappings https://www.opencre.org/