Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CWE mapping will be dropped #1481

Open
elarlang opened this issue Dec 27, 2022 · 13 comments
Open

CWE mapping will be dropped #1481

elarlang opened this issue Dec 27, 2022 · 13 comments
Assignees
Labels
Leaders decision Big decisions, like re-structuring or concept changes _5.0 - draft This should be discussed once a 5.0 draft has been prepared.

Comments

@elarlang
Copy link
Collaborator

elarlang commented Dec 27, 2022

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

  • CWE-16 status:obsolete; type:category; ASVS: 2.5.4, 3.4.4, 3.4.5, 10.3.1, 14.1.3
  • CWE-19 status:draft; type:category; ASVS: 8.1.5, 8.1.6
  • CWE-255 status:draft; type:category; ASVS: 2.10.2
  • CWE-265 status:incomplete; type:category; ASVS: 1.14.5, 14.2.6
  • CWE-275 status:draft; type:category; ASVS: 1.4.5
  • CWE-310 status:draft; type:category; ASVS: 2.6.3, 2.7.6, 6.2.1
  • CWE-320 status:obsolete; type:category; ASVS: 1.6.1, 1.6.2, 1.6.3, 1.6.4, 2.8.2, 2.9.1, 6.4.2
  • CWE-1002 status:incomplete; type:category; ASVS: 14.1.6
  • CWE-1008 status:incomplete; type:view; ASVS: 9.4.4
  • CWE-1009 status:draft; type:category; ASVS: 1.7.1
  • CWE-1026 status:incomplete; type:view; ASVS: 14.2.1
  • CWE-1029 status:incomplete; type:category; ASVS: 1.5.1

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:

  • do we accept mapping to CWE views and/or categories
  • do we keep 1:1 relation, or we move to one-to-many solution

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.

@elarlang elarlang added 1) Discussion ongoing Issue is opened and assigned but no clear proposal yet _5.0 - prep This needs to be addressed to prepare 5.0 Community wanted We would like feedback from the community to guide our decision otherwise we will progress Leaders decision Big decisions, like re-structuring or concept changes labels Dec 27, 2022
@danielcuthbert
Copy link
Collaborator

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
Copy link
Collaborator

tghosth commented Dec 28, 2022

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
Copy link
Member

jmanico commented Dec 28, 2022 via email

@elarlang
Copy link
Collaborator Author

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
Copy link
Member

jmanico commented Jan 2, 2023

@elarlang I'm ok with dropping CWE.

@tghosth
Copy link
Collaborator

tghosth commented Jan 8, 2023

Happy to remove CWE unless there is strong desire for it

@vdbaan
Copy link
Contributor

vdbaan commented Jan 10, 2023

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
Copy link
Collaborator Author

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:

  • we just remove CWE and all other mappings from ASVS and leave it all on CRE project.
  • we remote all mappings from requirements and store them as not version dependent and "live version" extra
    • it must have nice web output that those are used and useful
    • it still requires a lot of resources, but it does not require it to be done before release
    • it duplicates in a way CRE project

@Sjord
Copy link
Contributor

Sjord commented Jan 15, 2023

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
Copy link

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
Copy link
Collaborator Author

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
Copy link

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

@elarlang elarlang changed the title CWE mapping CWE mapping will be dropped Apr 29, 2023
@tghosth
Copy link
Collaborator

tghosth commented Sep 13, 2023

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

@tghosth tghosth added _5.0 - draft This should be discussed once a 5.0 draft has been prepared. and removed _5.0 - prep This needs to be addressed to prepare 5.0 1) Discussion ongoing Issue is opened and assigned but no clear proposal yet Community wanted We would like feedback from the community to guide our decision otherwise we will progress labels Sep 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Leaders decision Big decisions, like re-structuring or concept changes _5.0 - draft This should be discussed once a 5.0 draft has been prepared.
Projects
None yet
Development

No branches or pull requests

7 participants