I'm OK with not further tweaking the definition of 'vulnerability'; yet
while providing updated definitions for 'weakness' and 'attack pattern', we
should also address associated definitions/descriptions of:

- Cyber-Enabled Capability
- Weakness Type
- Negative Technical Impact
- Exploit

When defining 'attack pattern', we should also address associated
definitions/descriptions of:

- Exploit
- Attack
- Meta Attack Pattern
- Standard Attack Pattern
- Detailed Attack Pattern

Yes, 'Exploit' is important to both Weakness and Attack Pattern.

With 'Weakness', using the currently available definition, I suggest:

1. We should avoid using 'mistake' in the definition and instead use 'flaw'
or 'defect' since a mistake might imply there was no intent to create the
flaw; yet a flaw or defect could have been inserted deliberately (as a
feature) without understanding the consequences of potential exploitability
or deliberately with malicious intent.  The existence of a 'flaw' or
'defect' and its exploitability potential is often independent of intent;
yet insertion of a flaw or defect might not be a mistake.

2. We might shorten "...made during the implementation, design, or other
phases of a product lifecycle..." to "...inserted during a product
lifecycle..." since a weakness could be inserted anytime, even after the
product is operational.

3. We might consider changing "...under the right conditions, could
contribute to the introduction of vulnerabilities in a range of products
made by different vendors" to "...if left unaddressed, could under the
proper conditions contribute to a cyber-enabled capability being vulnerable
to exploitation" since this better fulfills the reason we introduced the
concept of weakness vs vulnerability -- weaknesses can be source vectors of
future vulnerabilities, and they are not limited to 'products made by
different vendors'.

4. In providing a description of weakness, it would be useful to remind all
that a weakness represents a potential source vector for zero-day exploits
and zero-day vulnerabilities, and that it is the existence of an exploit
designed to take advantage of a weakness (or multiple weaknesses) and
achieve a negative technical impact is what makes a weakness a
vulnerability.


With 'Attack Pattern', using the currently available definition, I suggest:

1. We avoid using 'known weakness type' and just simply use 'weakness'
since it does not have to be publicly known to be subject to exploitation;
indeed, it is often the lesser known weaknesses that represent source
vectors for zero-day exploits.

2. We consider explicitly including 'exploit designed to take advantage of
a weakness' in the definition of an attack pattern


When I have available time, I will address the other terms.  In the
interim, I'd welcome comments and recommendations about the above comments.

Regards,

Joe Jarzombek
703 627-4644


On Tue, Jul 12, 2022 at 12:51 PM Jason Oberg <ja...@cycuity.com> wrote:

> The proposed course of action sounds good to me.
>
> FWIW for the weakness definition, I'm still thrown off by the word
> "mistake" because a weakness could be introduced intentionally or by
> mistake.
>
> Of course we could debate definitions forever so your proposed approach to
> reach resolution sounds efficient and productive to me.
>
> On Tue, Jul 12, 2022 at 6:26 AM Fung, Jason M <jason.m.f...@intel.com>
> wrote:
>
>> I agree with the proposed approach.  People just need to keep in mind
>> that even definitions from Webster Dictionary (or substitute your favorite)
>> are not liked by everyone. 😊
>>
>>
>>
>> *From:* Alec J Summers <asumm...@mitre.org>
>> *Sent:* Monday, July 11, 2022 11:32 AM
>> *To:* Fung, Jason M <jason.m.f...@intel.com>; Hoole, Alexander <
>> alexander.ho...@microfocus.com>; jw...@redhat.com; Seifried, Kurt <
>> k...@seifried.org>
>> *Cc:* CWE CAPEC Board <cwe-capec-board-list@mitre.org>
>> *Subject:* Re: [EXT] RE: Glossary
>>
>>
>>
>> Good afternoon!
>>
>>
>>
>> With the release of the Top25 and CWE v4.8, I wanted to pick this thread
>> up from where we got it a month or so ago. As a refresher, the User
>> Experience Working Group (UEWG) agreed on these definitions as updates to
>> what are currently in the CWE and CAPEC glossaries for these terms:
>>
>>
>>
>> *Vulnerability*
>>
>> *A flaw in a software, firmware, hardware, or service component resulting
>> from a weakness that can be exploited, causing a negative impact to the
>> confidentiality, integrity, or availability of an impacted component or
>> components *
>>
>> *Weakness*
>>
>> *A type of mistake made during the implementation, design, or other
>> phases of a product lifecycle that, under the right conditions, could
>> contribute to the introduction of vulnerabilities in a range of products
>> made by different vendors.*
>>
>> *Attack Pattern*
>>
>> *The common approach and attributes related to the exploitation of a
>> known weakness type, usually in cyber-enabled capabilities *
>>
>>
>>
>> One thing is that this “definitions harmonization” effort started as an
>> effort to align definitions across the CWE and CAPEC sites which don’t
>> agree on “weakness” and “attack pattern” definitions… surprising, no?
>>
>>
>>
>> CVE’s definition for ‘vulnerability’ was agreed upon after significant
>> community deliberation, and I am hesitant to open that up for further edit
>> at this time.
>>
>>
>>
>> For that reason, I propose CWE and CAPEC adopt the current CVE definition
>> for ‘vulnerability’, and work to harmonize the ‘weakness’ and ‘attack
>> pattern’ definitions on the sites.
>>
>>
>>
>>    1. I believe that Jeremy’s definition for weakness focuses too much
>>    on the absence of a safeguard/control versus a mistake/error. This has 
>> come
>>    up in previous scoping conversations for CWE, where its not always the 
>> case
>>    that the ‘absence of a mitigation’ warrants a new weakness type
>>    2. I appreciate Alex’s set-theory type definition scheme and I think
>>    the definitions mostly. For weakness, however, while the UEWG agrees on 
>> the
>>    ‘XXX that could become a vulnerability’, I think the added detail in the
>>    table above is helpful. The connection between attack patterns and 
>> weakness
>>    types is present in both our definitions as well.
>>
>>
>>
>> I think we could certainly debate these definitions till the proverbial
>> cows come home. I propose using the CWE- and CAPEC-research email listservs
>> for further community comment. I’d like to establish a timeline (say
>> Friday, July 29?) for accepting feedback, after which we can formally the
>> terms in the CWE and CAPEC glossaries.
>>
>>
>>
>> Are there any objections to this course of action? If not, I will send
>> out notes to the listservs by midweek.
>>
>>
>>
>> Cheers,
>>
>> Alec
>>
>>
>>
>> --
>>
>> *Alec J. Summers*
>>
>> Center for Securing the Homeland (CSH)
>>
>> Cyber Security Engineer, Principal
>>
>> Group Lead, Cybersecurity Operations and Integration
>>
>> *––––––––––––––––––––––––––––––––––––*
>>
>> *MITRE - Solving Problems for a Safer World™*
>>
>>
>>
>>
>>
>>
>>
>> *From: *Fung, Jason M <jason.m.f...@intel.com>
>> *Date: *Tuesday, May 31, 2022 at 1:33 PM
>> *To: *Hoole, Alexander <alexander.ho...@microfocus.com>, jw...@redhat.com
>> <jw...@redhat.com>, Seifried, Kurt <k...@seifried.org>
>> *Cc: *Alec J Summers <asumm...@mitre.org>, CWE CAPEC Board <
>> cwe-capec-board-list@mitre.org>
>> *Subject: *RE: [EXT] RE: Glossary
>>
>> Love the definitions!
>>
>>
>>
>> The only part to nitpick is this phrase “*vulnerability* is a property
>> of …”  I am not sure if vulnerability is commonly perceived as a
>> “property”.  E.g., the following sentence does not read as smoothly if
>> vulnerability is replaced with property
>>
>>
>>
>> “In December of 2021, a new *vulnerability* (property) has been
>> identified within …”
>>
>>
>>
>> I associate vulnerability as an exploitable *bug* that takes advantage
>> of 1 or more weaknesses.
>>
>>
>>
>> - Jason
>>
>>
>>
>> *From:* Alexander Hoole <alexander.ho...@microfocus.com>
>> *Sent:* Friday, May 27, 2022 6:39 PM
>> *To:* Jeremy West <jw...@redhat.com>; Kurt Seifried <k...@seifried.org>
>> *Cc:* Alec J Summers <asumm...@mitre.org>; CWE CAPEC Board <
>> cwe-capec-board-list@mitre.org>
>> *Subject:* [EXT] RE: Glossary
>>
>>
>>
>> Good afternoon/evening Everyone,
>>
>>
>>
>> Please consider the following points:
>>
>>    1. I agree with Jason O. that the terms are a stepping stone to
>>    understanding how these concepts play out in the real world.  However, a
>>    slightly different perspective is the following (without defining all of
>>    the base terms):
>>       1. A *bug *is an instance of a *flaw/fault/error/defect* in the
>>       design, development/implementation, or operation of a system.
>>       2. A *weaknesses* is a *bug* that *could* (i.e., may, or may not)
>>       lead to a vulnerability. *Weakness types* define logical groupings
>>       of bugs which share similar properties (e.g., Buffer Overflow).
>>       3. A *vulnerability* is a property of system requirements, design,
>>       implementation, or operation that *can* be accidentally or
>>       intentionally exploited (resulting in a security failure). A
>>       *vulnerability* is made possible due to the presence of one or
>>       more underlying *weaknesses*.
>>       4. An *exploit *successfully results in a security failure through
>>       one or more *vulnerabilities* which *does* exploit underlying
>>       *weaknesses*.
>>       5. An *attack *is an attempt to exploit one or more
>>       *vulnerabilities* that *could *lead to an exploit. *Attack
>>       patterns* define logical groupings of attacks which share similar
>>       properties and approaches related to underlying *weakness types*.
>>
>> Note: the distinction between can and could is a comparison of
>> probability.  Can is likely to occur.  Could is less likely to occur.
>>
>>    1. Regarding the Red Hat definition, if we want to be consistent with
>>    other standards and best practices, we should probably use the term
>>    “control” rather than “safeguard” (e.g., NIST SP 800-53 Rev. 5).
>>
>>
>>
>> To test the observations, we should be able to apply the terms to
>> descript actual occurrences in the context we are trying to represent.  For
>> example, consider the following:
>>
>>
>>
>> “In December of 2021, a new *vulnerability* has been identified within
>> Log4J under the common name Log4Shell (CVE-2021-44228
>> <https://nvd.nist.gov/vuln/detail/CVE-2021-44228>). This *vulnerability*
>> affects version 2.0-beta9 through 2.15.0 (excluding security releases
>> 2.12.2, 2.12.3, and 2.3.1). Specifically, CVE-2021-44228 is caused by an
>> underlying JNDI Injection and LDAP Entry Poisoning *weaknesses* which
>> exists in the affected versions. To date, multiple *exploits* have been
>> recorded across the industry where *attacks* targeting CVE-2021-44228
>> have been observed (e.g., VMWare
>> <https://www.bleepingcomputer.com/news/security/lazarus-hackers-target-vmware-servers-with-log4shell-exploits/>,
>> …).
>>
>>
>>
>> Thoughts?
>>
>>
>>
>> Best,
>>
>> -A
>>
>>
>>
>> *From:* Jeremy West <jw...@redhat.com>
>> *Sent:* Tuesday, May 24, 2022 2:03 PM
>> *To:* Kurt Seifried <k...@seifried.org>
>> *Cc:* Alec J Summers <asumm...@mitre.org>; CWE CAPEC Board <
>> cwe-capec-board-list@mitre.org>
>> *Subject:* Re: Glossary
>>
>>
>>
>> Correct Kurt.  Process is defined here as an executing process on the
>> stack.
>>
>>
>>
>> On Tue, May 24, 2022 at 5:01 PM Kurt Seifried <k...@seifried.org> wrote:
>>
>> "process" means executing process, or like a business process, e.g.
>> password reset policy?
>>
>>
>>
>> On Tue, May 24, 2022 at 2:15 PM Jeremy West <jw...@redhat.com> wrote:
>>
>> Red Hat adopted the following definition of a weakness a year or so ago. "A
>> weakness is specifically the absence of a safeguard in an asset or process
>> that provides a higher potential or frequency of a threat occurring, but
>> does not meet the exploitability criteria for a vulnerability."  We've also
>> defined vulnerability much more broadly to include weaknesses as a subset
>> "A weakness or absence of a safeguard in an asset that provides a higher
>> potential or frequency of a threat occurring."  We were running into
>> differing opinions when we looked at each as separate and unique.  The
>> other factor we've called out internally is hardening.  The key difference
>> between a weakness and hardening for us is that a weakness is a direct
>> factor in the potential and frequency vs hardening which are safeguards
>> which prevent.
>>
>>
>>
>> On Tue, May 24, 2022 at 12:49 PM Alec J Summers <asumm...@mitre.org>
>> wrote:
>>
>> Dear CWE/CAPEC Board Members,
>>
>>
>>
>> Good afternoon! I hope the week is going well for you all.
>>
>>
>>
>> During a recent CWE/CAPEC User Experience Working Group session, the
>> topic of definitions came up – more specifically, the difficulty in
>> agreeing on good ones and making sure they are understood by downstream
>> users. It also reminded me of Pietro’s comment during our February meeting,
>> I believe, on the importance of harmonious definitions for similar terms
>> across the CVE and CWE/CAPEC sites. To that end, the team went ahead and
>> did a quick document authorities search of our key terminology to start
>> (i.e., vulnerability, weakness, attack pattern), and suggested the
>> following:
>>
>>
>>
>> *Term*
>>
>> *Definition*
>>
>> *Authority*
>>
>> *Authorities Doc*
>>
>> *Vulnerability*
>>
>> *A flaw in a software, firmware, hardware, or service component resulting
>> from a weakness that can be exploited, causing a negative impact to the
>> confidentiality, integrity, or availability of an impacted component or
>> components. (not changed)*
>>
>> *CVE*
>>
>> *website*
>>
>> *Weakness*
>>
>> *A type of mistake made during the implementation, design, or other
>> phases of a product lifecycle that, under the right conditions, could
>> contribute to the introduction of vulnerabilities in a range of products
>> made by different vendors.*
>>
>> *n/a*
>>
>> *edited from def on CWE wesbite*
>>
>> *Attack Pattern*
>>
>> *The common approach and attributes related to the exploitation of a
>> known weakness type, usually in cyber-enabled capabilities *
>>
>> *n/a*
>>
>> *edited from def on CAPEC website*
>>
>>
>>
>>
>>
>> The full spreadsheet of definitions to compare is attached. The plan
>> would be to unify the definitions according to the above across all our
>> sites. Would love to hear your thoughts.
>>
>>
>>
>> Cheers,
>>
>> Alec
>>
>>
>>
>> --
>>
>> *Alec J. Summers*
>>
>> Center for Securing the Homeland (CSH)
>>
>> Cyber Security Engineer, Principal
>>
>> Group Lead, Cybersecurity Operations and Integration
>>
>> *––––––––––––––––––––––––––––––––––––*
>>
>> *MITRE - Solving Problems for a Safer World™*
>>
>>
>>
>>
>>
>>
>>
>>
>> --
>>
>> *Jeremy West*
>>
>> Red Hat Product Security
>>
>> Red Hat Massachusetts <https://www.redhat.com>
>>
>> 314 Littleton Rd
>>
>> jw...@redhat.com
>> M: 9192686967     IM: hobbit
>>
>>
>> <https://red.ht/sig>
>>
>>
>> <https://red.ht/sig>
>>
>> -- <https://red.ht/sig>
>>
>> Kurt Seifried (He/Him)
>> k...@seifried.org <https://red.ht/sig>
>>
>>
>> <https://red.ht/sig>
>>
>> -- <https://red.ht/sig>
>>
>> *Jeremy West <https://red.ht/sig>*
>>
>> Red Hat Product Security <https://red.ht/sig>
>>
>> Red Hat Massachusetts <https://red.ht/sig>
>>
>> 314 Littleton Rd <https://red.ht/sig>
>>
>> jw...@redhat.com
>> M: 9192686967     IM: hobbit <https://red.ht/sig>
>>
>> [image: Image removed by sender.] <https://red.ht/sig>
>>
>>
>> <https://red.ht/sig>
>>
>>
>>
>

-- 
Regards,

Joe

Joe Jarzombek
C 703 627-4644

Reply via email to