CTI STIX Subcommittee

Expand all | Collapse all

RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

  • 1.  RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 14:38




    Jason,
    Re:
    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart
    of this whole discussion.
     
    The count of terms is easily verified, so I assume you think this is untrue:
    may be used for very different use cases that use different viewpoints of the data with different root structures
     
    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently
    suggested that all uses of STIX will be coded.
     
    Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”.
     
    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.
     
    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different
    approaches to handling such diversity – which is part of this conversation.
     
    -Cory
     


    From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com]

    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


     
    " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. "

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this
    whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other
    context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what
    is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security
    www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown


    Cory
    Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave < cory-c@modeldriven.com >
    To: "Barnum, Sean D." < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >,
    "Jordan, Bret" < bret.jordan@bluecoat.com >
    Cc: " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >,
    " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org >
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: < cti-users@lists.oasis-open.org >






    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My
    server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility
    and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am
    concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE
    complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models
    easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from
    Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding
    the meaning of the data then it’s the humans who have to understand it and “connect the dots”.


    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From:
    cti-stix@lists.oasis-open.org [ mailto:cti-stix@lists.oasis-open.org ]
    On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org ;
    cti-stix@lists.oasis-open.org ; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From:
    < cti-users@lists.oasis-open.org >
    on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated
    the toolchain for developing each type of output is.
    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com >
    wrote:
    I think this is a great idea..


    Thanks,

    Bret



    Bret Jordan CISSP

    Director of Security Architecture and Standards Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org >
    wrote:

    How about we take two of the idioms on the
    stixproject.github.io site?


    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com >
    wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple
    “pure hierarchical data” and at least one with some related entities.
    -Cory









  • 2.  Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 16:53
    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.

    Cory, please feel free to point out if I am mischaracterizing your intent.

    sean


    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Jason,
    Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures

    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.

    Another is coded for “Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects”.

    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.

    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.

    -Cory

    From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com]
    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


    "STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures."

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security<http://www.ibm.com/security> | www.securityintelligence.com<http://www.securityintelligence.com>

    Without data, all you are is just another person with an opinion - Unknown


    [Inactive hide details for Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view o]Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>>
    To: "Barnum, Sean D." <sbarnum@mitre.org<mailto:sbarnum@mitre.org>>, Terry MacDonald <terry.macdonald@gmail.com<mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>>
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org<mailto:jwunder@mitre.org>>
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>

    ________________________________



    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From:cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org> [mailto:cti-stix@lists.oasis-open.org] On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.

    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>> wrote:
    I think this is a great idea..

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."
    On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org<mailto:jwunder@mitre.org>> wrote:

    How about we take two of the idioms on the stixproject.github.io<http://stixproject.github.io/> site?

    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>> wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    -Cory





  • 3.  Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 16:53




    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases.
    And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.


    Cory, please feel free to point out if I am mischaracterizing your intent.


    sean










    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding








    Jason,
    Re:
    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart
    of this whole discussion.
     
    The count of terms is easily verified, so I assume you think this is untrue:
    may be used for very different use cases that use different viewpoints of the data with different root structures
     
    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently
    suggested that all uses of STIX will be coded.
     
    Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation
    Effects ”.
     
    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.
     
    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are
    different approaches to handling such diversity – which is part of this conversation.
     
    -Cory
     


    From: Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]

    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret;
    cti-users@lists.oasis-open.org ;
    cti-stix@lists.oasis-open.org ; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


     
    " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. "

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this
    whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other
    context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what
    is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security
    www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown


    Cory
    Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave < cory-c@modeldriven.com >
    To: "Barnum, Sean D." < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >,
    "Jordan, Bret" < bret.jordan@bluecoat.com >
    Cc: " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >,
    " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org >
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: < cti-users@lists.oasis-open.org >






    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority
    (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility
    and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am
    concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices
    REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make
    the models easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from
    Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding
    the meaning of the data then it’s the humans who have to understand it and “connect the dots”.


    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From: cti-stix@lists.oasis-open.org [ mailto:cti-stix@lists.oasis-open.org ]
    On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org ;
    cti-stix@lists.oasis-open.org ; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From:
    < cti-users@lists.oasis-open.org >
    on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the
    toolchain for developing each type of output is.
    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com >
    wrote:
    I think this is a great idea..


    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org >
    wrote:

    How about we take two of the idioms on the
    stixproject.github.io site?

    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com >
    wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very
    simple “pure hierarchical data” and at least one with some related entities.
    -Cory












  • 4.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 17:00
    Well my question still remains...


    Please help me understand....

    Say for kicks and giggles I have some structs that looks like this to consume an Indicator in a STIX package

    type StixMessageType struct {
    Id string `json:"id,omitempty"`
    IdRef string `json:"idref,omitempty"`
    Timestamp string `json:"timestamp,omitempty"`
    Version string `json:"version,omitempty"`
    Indicators []indicator.IndicatorType `json:"indicators,omitempty"`
    }

    type IndicatorType struct {
    Id string `json:"id,omitempty"`
    IdRef string `json:"idref,omitempty"`
    Timestamp string `json:"timestamp,omitempty"`
    Version string `json:"version,omitempty"`
    Negate bool `json:"negate,omitempty"`
    Title string `json:"title,omitempty"`
    Types []string `json:"type,omitempty"`
    AlternativeIDs []string `json:"alternative_ids,omitempty"`
    Descriptions []common.StructuredTextType `json:"descriptions,omitempty"`
    ShortDescriptions []common.StructuredTextType `json:"short_descriptions,omitempty"`
    ValidTimePositions []ValidTimeType `json:"valid_time_positions,omitempty"`
    Observable *observable.ObservableType `json:"observable,omitempty"`
    CompositeIndicatorExpression *CompositeIndicatorExpressionType `json:"composite_indicator_expression,omitempty"`
    IndicatedTTP []common.RelatedTTPType `json:"indicated_ttps,omitempty"`
    KillChainPhases []common.KillChainPhaseReferenceType `json:"kill_chain_phases,omitempty"`
    TestMechanisms []TestMechanismType `json:"test_mechanisms,omitempty"`
    LikelyImpact *common.StatementType `json:"likely_impact,omitempty"`
    SuggestedCOAs []SuggestedCOAsType `json:"suggested_coas,omitempty"`
    Handling []common.MarkingSpecificationType `json:"handling,omitempty"`
    Confidence *common.ConfidenceType `json:"confidence,omitempty"`
    Sightings *SightingsType `json:"sightings,omitempty"`
    RelatedIndicators *RelatedIndicatorsType `json:"related_indicators,omitempty"`
    RelatedCampaigns *RelatedCampaignReferencesType `json:"related_campaigns,omitempty"`
    RelatedPackages []common.RelatedPackageRefType `json:"related_packages,omitempty"`
    Producer *common.InformationSourceType `json:"producer,omitempty"`
    }

    And lets say I get an indicator over the wire that looks something like this, built directly from the STIX 1.2 schema.

    {
    "stix_package": {
    "id": "example:package-1ad2aab5-1707-4fcc-8fd2-ebae152adeec",
    "indicators": [
    {
    "id": "example:indicator-8571137a-32a2-4934-8077-2129475813af",
    "idref": "companyfoo:indicator-1234-1234-1234-1234",
    "timestamp": "2015-10-05T20:03:23-06:00",
    "version": "1.2.1",
    "title": "Some really neat indicator that we found",
    "type": [
    "URL Watchlist"
    ],
    "alternative_ids": [
    "CV-2014-12-12345",
    "CV-2015-02-54321"
    ],
    "descriptions": [
    {
    "id": "example:text-8769b510-9e76-4573-9778-864a51f052ae",
    "format": "text/plain",
    "value": "Some long description"
    }
    ],
    "short_descriptions": [
    {
    "id": "example:text-12170f79-62f4-48d9-9a97-d7077f05714f",
    "format": "text/plain",
    "value": "Some shorter description"
    }
    ]
    }
    ]
    }
    }


    We have a version field to say what version of an indicator it is and we know the type because it is in an indicator blob inside a stix_package blob.

    How does adding namespace elements make this more clear?

    I can easily parse this indicator and do interesting things with it. I can parse the TTPs that reference it and do things with them. I understand all of the fields in the indicator package because they are all well documented on the Github site [1] for Indicators. So I can either dump this data in to a relational database or in to a document database like MongoDB.

    Please help me understand why namespaces are required for structured data that is well defined. Like I said before, I can totally get and fully understand the need for JSON-LD in the open web. It makes perfect sense when you need this to share say random profile data between two or more entities (twitter, Facebook, youtube, etc). But we are not transporting random CTI, it will be in STIX. So alternative_ids are Alternative IDs, and a title is a Title. I do not see how JSON-LD helps us in anyway other than making a case for RDF over UML/OWL as RDF can work with JSON-LD.

    The only value I can see for JSON-LD is if we want to allow overloading. So I can make my own Indicator format and not adhere to the STIX version of an Indicator. In that case, yes, I can see the value, but I can also see the madness and chaos that would come from it.

    [1] - http://stixproject.github.io/data-model/1.2/indicator/IndicatorType/ <http://stixproject.github.io/data-model/1.2/indicator/IndicatorType/>



    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    > On Oct 6, 2015, at 10:53, Barnum, Sean D. <sbarnum@mitre.org> wrote:
    >
    > I would agree with Cory’s characterizations and assertions here.
    > Jason, I think you may have misinterpreted what Cory was trying to say.
    > He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.
    >
    > Cory, please feel free to point out if I am mischaracterizing your intent.
    >
    > sean
    >
    >
    > From: Cory Casanave
    > Date: Tuesday, October 6, 2015 at 10:37 AM
    > To: Jason Keirstead
    > Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>", John Wunder
    > Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > Jason,
    > Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.
    >
    > The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures
    >
    > Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.
    >
    > Another is coded for “Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects”.
    >
    > Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.
    >
    > You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.
    >
    > -Cory
    >
    > From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com <mailto:Jason.Keirstead@ca.ibm.com>]
    > Sent: Tuesday, October 06, 2015 8:26 AM
    > To: Cory Casanave
    > Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    > Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > "STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures."
    >
    > This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.
    >
    > The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.
    >
    >
    > -
    > Jason Keirstead
    > Product Architect, Security Intelligence, IBM Security Systems
    > www.ibm.com/security <http://www.ibm.com/security> | www.securityintelligence.com <http://www.securityintelligence.com/>
    >
    > Without data, all you are is just another person with an opinion - Unknown
    >
    >
    > <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us
    >
    > From: Cory Casanave <cory-c@modeldriven.com <mailto:cory-c@modeldriven.com>>
    > To: "Barnum, Sean D." <sbarnum@mitre.org <mailto:sbarnum@mitre.org>>, Terry MacDonald <terry.macdonald@gmail.com <mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com <mailto:bret.jordan@bluecoat.com>>
    > Cc: "cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org <mailto:jwunder@mitre.org>>
    > Date: 2015/10/05 09:04 PM
    > Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    > Sent by: <cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>>
    >
    >
    >
    >
    > Sean,
    > I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).
    >
    > STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.
    >
    > The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.
    >
    > I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:
    >
    > Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.
    >
    > Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies
    >
    > Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information
    >
    > Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information
    >
    > Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators
    >
    > Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information
    >
    > Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects
    >
    > Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned
    >
    >
    > From:cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org> [mailto:cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>] On Behalf Of Barnum, Sean D.
    > Sent: Monday, October 05, 2015 9:18 AM
    > To: Terry MacDonald; Jordan, Bret
    > Cc: cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    > Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    > These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.
    >
    > sean
    >
    > From: <cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald
    > Date: Friday, October 2, 2015 at 5:51 PM
    > To: "Jordan, Bret"
    > Cc: "cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>", John Wunder
    > Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    > +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.
    >
    > Cheers
    > Terry MacDonald
    > On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com <mailto:bret.jordan@bluecoat.com>> wrote:
    > I think this is a great idea..
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > Bret Jordan CISSP
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."
    >
    > On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org <mailto:jwunder@mitre.org>> wrote:
    >
    > How about we take two of the idioms on the stixproject.github.io <http://stixproject.github.io/> site?
    >
    > - http://stixproject.github.io/documentation/idioms/c2-indicator/ <http://stixproject.github.io/documentation/idioms/c2-indicator/>
    > - http://stixproject.github.io/documentation/idioms/simple-incident/ <http://stixproject.github.io/documentation/idioms/simple-incident/>
    >
    > Thanks for helping out. I think it would be nice to see these as:
    >
    > - Current STIX XML (Done already)
    > - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    > - JSON/JSON-Schema (Wunder)
    > - JSON-LD (Casanave)
    > - Any others people are interest (PMML, Thrift, ProtoBuf, etc)
    >
    > John
    > On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com <mailto:cory-c@modeldriven.com>> wrote:
    >
    > Re: Examples.
    > Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    > -Cory
    >
    >
    >
    > <image001.gif>




  • 5.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 17:00
    Well my question still remains...  Please help me understand....   Say for kicks and giggles I have some structs that looks like this to consume an Indicator in a STIX package type StixMessageType struct { Id         string                    `json: id,omitempty ` IdRef      string                    `json: idref,omitempty ` Timestamp  string                    `json: timestamp,omitempty ` Version    string                    `json: version,omitempty ` Indicators []indicator.IndicatorType `json: indicators,omitempty ` } type IndicatorType struct { Id       string    `json: id,omitempty ` IdRef       string            `json: idref,omitempty ` Timestamp       string    `json: timestamp,omitempty ` Version                      string                               `json: version,omitempty ` Negate                       bool                                 `json: negate,omitempty ` Title                        string                               `json: title,omitempty ` Types                        []string                             `json: type,omitempty ` AlternativeIDs               []string                             `json: alternative_ids,omitempty ` Descriptions                 []common.StructuredTextType          `json: descriptions,omitempty ` ShortDescriptions            []common.StructuredTextType          `json: short_descriptions,omitempty ` ValidTimePositions           []ValidTimeType                      `json: valid_time_positions,omitempty ` Observable                   *observable.ObservableType           `json: observable,omitempty ` CompositeIndicatorExpression *CompositeIndicatorExpressionType    `json: composite_indicator_expression,omitempty ` IndicatedTTP                 []common.RelatedTTPType              `json: indicated_ttps,omitempty ` KillChainPhases              []common.KillChainPhaseReferenceType `json: kill_chain_phases,omitempty ` TestMechanisms               []TestMechanismType                  `json: test_mechanisms,omitempty ` LikelyImpact                 *common.StatementType                `json: likely_impact,omitempty ` SuggestedCOAs                []SuggestedCOAsType                  `json: suggested_coas,omitempty ` Handling                     []common.MarkingSpecificationType    `json: handling,omitempty ` Confidence                   *common.ConfidenceType               `json: confidence,omitempty ` Sightings                    *SightingsType                       `json: sightings,omitempty ` RelatedIndicators            *RelatedIndicatorsType               `json: related_indicators,omitempty ` RelatedCampaigns             *RelatedCampaignReferencesType       `json: related_campaigns,omitempty ` RelatedPackages              []common.RelatedPackageRefType       `json: related_packages,omitempty ` Producer                     *common.InformationSourceType        `json: producer,omitempty ` } And lets say I get an indicator over the wire that looks something like this, built directly from the STIX 1.2 schema.   {      stix_package : {          id : example:package-1ad2aab5-1707-4fcc-8fd2-ebae152adeec ,          indicators : [             {                  id : example:indicator-8571137a-32a2-4934-8077-2129475813af ,                  idref : companyfoo:indicator-1234-1234-1234-1234 ,                  timestamp : 2015-10-05T20:03:23-06:00 ,                  version : 1.2.1 ,                  title : Some really neat indicator that we found ,                  type : [                      URL Watchlist                 ],                  alternative_ids : [                      CV-2014-12-12345 ,                      CV-2015-02-54321                 ],                  descriptions : [                     {                          id : example:text-8769b510-9e76-4573-9778-864a51f052ae ,                          format : text/plain ,                          value : Some long description                     }                 ],                  short_descriptions : [                     {                          id : example:text-12170f79-62f4-48d9-9a97-d7077f05714f ,                          format : text/plain ,                          value : Some shorter description                     }                 ]             }         ]     } } We have a version field to say what version of an indicator it is and we know the type because it is in an indicator blob inside a stix_package blob.   How does adding namespace elements make this more clear?  I can easily parse this indicator and do interesting things with it.  I can parse the TTPs that reference it and do things with them.  I understand all of the fields in the indicator package because they are all well documented on the Github site [1] for Indicators.  So I can either dump this data in to a relational database or in to a document database like MongoDB.   Please help me understand why namespaces are required for structured data that is well defined.  Like I said before,  I can totally get and fully understand  the need for JSON-LD in the open web.  It makes perfect sense when you need this to share say random profile data between two or more entities (twitter, Facebook, youtube, etc).  But we are not transporting random CTI, it will be in STIX.  So alternative_ids are Alternative IDs, and a title is a Title.  I do not see how JSON-LD helps us in anyway other than making a case for RDF over UML/OWL as RDF can work with JSON-LD.   The only value I can see for JSON-LD is if we want to allow overloading.  So I can make my own Indicator format and not adhere to the STIX version of an Indicator.  In that case, yes, I can see the value, but I can also see the madness and chaos that would come from it.   [1] -  http://stixproject.github.io/data-model/1.2/indicator/IndicatorType/ Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447  F2C0 74F8 ACAE 7415 0050 Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg.   On Oct 6, 2015, at 10:53, Barnum, Sean D. < sbarnum@mitre.org > wrote: I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinterpreted what Cory was trying to say. He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes. Cory, please feel free to point out if I am mischaracterizing your intent. sean From:   Cory Casanave Date:   Tuesday, October 6, 2015 at 10:37 AM To:   Jason Keirstead Cc:   Barnum, Sean D. , Terry MacDonald, Jordan, Bret , cti-users@lists.oasis-open.org , cti-stix@lists.oasis-open.org , John Wunder Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Jason, Re:   This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.   The count of terms is easily verified, so I assume you think this is untrue:   may be used for very different use cases that use different viewpoints of the data with different root structures   Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.   Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”.   Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.   You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.   -Cory   From:   Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]   Sent:   Tuesday, October 06, 2015 8:26 AM To:   Cory Casanave Cc:   Barnum, Sean D.; Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion. The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as <foofarah><name>foo</name><id>bar</id></foofarah> , **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what name , or id mean - because they know that I am following the Fooferah 1.0 standard, which explicitly defines what is present in those fields. - Jason Keirstead Product Architect, Security Intelligence, IBM Security Systems www.ibm.com/security     www.securityintelligence.com Without data, all you are is just another person with an opinion - Unknown   <image001.gif> Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us From:   Cory Casanave < cory-c@modeldriven.com > To:   Barnum, Sean D. < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >, Jordan, Bret < bret.jordan@bluecoat.com > Cc:   cti-users@lists.oasis-open.org < cti-users@lists.oasis-open.org >, cti-stix@lists.oasis-open.org < cti-stix@lists.oasis-open.org >, Wunder, John A. < jwunder@mitre.org > Date:   2015/10/05 09:04 PM Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Sent by:   < cti-users@lists.oasis-open.org > Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application). STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard. The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions. I am copying the following list from   Shawn Riley   to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema: Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.   Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned From: cti-stix@lists.oasis-open.org   [ mailto:cti-stix@lists.oasis-open.org ]   On Behalf Of   Barnum, Sean D. Sent:   Monday, October 05, 2015 9:18 AM To:   Terry MacDonald; Jordan, Bret Cc:   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole. These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity. sean From:   < cti-users@lists.oasis-open.org > on behalf of Terry MacDonald Date:   Friday, October 2, 2015 at 5:51 PM To:   Jordan, Bret Cc:   cti-users@lists.oasis-open.org , cti-stix@lists.oasis-open.org , John Wunder Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is. Cheers Terry MacDonald On 3 Oct 2015 6:33 am, Jordan, Bret < bret.jordan@bluecoat.com > wrote: I think this is a great idea..   Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050 Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg. On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org > wrote: How about we take two of the idioms on the   stixproject.github.io   site? -   http://stixproject.github.io/documentation/idioms/c2-indicator/ -   http://stixproject.github.io/documentation/idioms/simple-incident/ Thanks for helping out. I think it would be nice to see these as: - Current STIX XML (Done already) - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too) - JSON/JSON-Schema (Wunder) - JSON-LD (Casanave) - Any others people are interest (PMML, Thrift, ProtoBuf, etc) John On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com > wrote: Re: Examples. Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities. -Cory <image001.gif> Attachment: signature.asc Description: Message signed with OpenPGP using GPGMail


  • 6.  RE: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:23
    Bret,
    JSON comes from the assumption of a coupled environment “everyone knows what it means” and “everything will fit in a single hierarchical format” from a single data source. There is also the assumption that someone will write code for every use of every data element. I’m not suggesting that this does not have a place.

    RDF comes from the assumption of an open (perhaps within a protected ecosystem), loosely coupled environment – the “web of data” – multiple sources of data. This data may be consumed and integrated dynamically and sometimes without custom code. You said you understood the attraction of RDF for these purposes.

    So, the question is: do our use cases fall completely to one side or somewhere in the middle? I think your perspective is that the CTI use cases fall completely to the “coupled, we know what to expect” side. If you are correct then the “LD” context extensions are extra baggage in a message. I would suggest that if you are correct that the “cost” of these extra elements is minimal – just ignore them and code to the JSON tags. I tend to think the use cases fall in the middle.

    If I am correct and there is leverage in ANY OF THE FOLLOWING:

    · The ability to reference external data from a CTI data structure and be able to understand it (to some extent). Note this may be less true of the “core data” but very true of “edge data”, like organizations, software kinds and CWEs. However, there exist today open or somewhat open repositories of malware and bad IP addresses, so I would assert SOME DATA WILL BE OPEN or partially open –probably REST.

    · The ability of external agents to reference CTI data and reference it to some extent. Thus allowing CTI to define the formats for some of the above (e.g. malware).

    · That data consumers will ingest some CTI data into their analytics engines (or other software) without writing any custom code.

    · That CTI data will be combined/related with non CTI data

    · That everything you want to know about a subject may not be in a single message.

    · That some level of semantics may be able to augment human or manual capabilities.

    · There may be different hierarchies of data appropriate for different needs/use cases.

    · That there is a need to validate data (without puking like XML tools do)

    · That some consumers will not want to code for the entire CTI framework.

    · That the less we need to custom code, the better (faster, cheaper and more reliable). You write code four your core algorithms, the rest can be automated.

    · That there may be name conflicts across the many CTI imported packages.

    · That there will be some data repositories that we want to query

    All of the above depend on being able to understand what you get without human intervention. All of the above are capabilities leveraged by RDF & JSON-LD (and in many cases XML). JSON-LD is much more friendly than its RDF-XML or XML-Schema counterparts. IMHO the small cost of those context declarations is justified by these capabilities, even if they are not leveraged by everyone. What we don’t want to do is lock ourselves into a “data island” where we can’t break out to the more open environment.

    I also don’t think something the size of CTI, even in pure JSON, will be small or simple.

    Thus from a cost/benefit or cost/risk point of view, LD is a justified extension to using JSON.

    -Cory

    From: Jordan, Bret [mailto:bret.jordan@bluecoat.com]
    Sent: Tuesday, October 06, 2015 1:00 PM
    To: Sean D. Barnum
    Cc: Cory Casanave; Jason Keirstead; Terry MacDonald; cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder, John A.
    Subject: Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Well my question still remains...


    Please help me understand....

    Say for kicks and giggles I have some structs that looks like this to consume an Indicator in a STIX package

    type StixMessageType struct {
    Id string `json:"id,omitempty"`
    IdRef string `json:"idref,omitempty"`
    Timestamp string `json:"timestamp,omitempty"`
    Version string `json:"version,omitempty"`
    Indicators []indicator.IndicatorType `json:"indicators,omitempty"`
    }

    type IndicatorType struct {
    Id string `json:"id,omitempty"`
    IdRef string `json:"idref,omitempty"`
    Timestamp string `json:"timestamp,omitempty"`
    Version string `json:"version,omitempty"`
    Negate bool `json:"negate,omitempty"`
    Title string `json:"title,omitempty"`
    Types []string `json:"type,omitempty"`
    AlternativeIDs []string `json:"alternative_ids,omitempty"`
    Descriptions []common.StructuredTextType `json:"descriptions,omitempty"`
    ShortDescriptions []common.StructuredTextType `json:"short_descriptions,omitempty"`
    ValidTimePositions []ValidTimeType `json:"valid_time_positions,omitempty"`
    Observable *observable.ObservableType `json:"observable,omitempty"`
    CompositeIndicatorExpression *CompositeIndicatorExpressionType `json:"composite_indicator_expression,omitempty"`
    IndicatedTTP []common.RelatedTTPType `json:"indicated_ttps,omitempty"`
    KillChainPhases []common.KillChainPhaseReferenceType `json:"kill_chain_phases,omitempty"`
    TestMechanisms []TestMechanismType `json:"test_mechanisms,omitempty"`
    LikelyImpact *common.StatementType `json:"likely_impact,omitempty"`
    SuggestedCOAs []SuggestedCOAsType `json:"suggested_coas,omitempty"`
    Handling []common.MarkingSpecificationType `json:"handling,omitempty"`
    Confidence *common.ConfidenceType `json:"confidence,omitempty"`
    Sightings *SightingsType `json:"sightings,omitempty"`
    RelatedIndicators *RelatedIndicatorsType `json:"related_indicators,omitempty"`
    RelatedCampaigns *RelatedCampaignReferencesType `json:"related_campaigns,omitempty"`
    RelatedPackages []common.RelatedPackageRefType `json:"related_packages,omitempty"`
    Producer *common.InformationSourceType `json:"producer,omitempty"`
    }
    And lets say I get an indicator over the wire that looks something like this, built directly from the STIX 1.2 schema.

    {
    "stix_package": {
    "id": "example:package-1ad2aab5-1707-4fcc-8fd2-ebae152adeec",
    "indicators": [
    {
    "id": "example:indicator-8571137a-32a2-4934-8077-2129475813af",
    "idref": "companyfoo:indicator-1234-1234-1234-1234",
    "timestamp": "2015-10-05T20:03:23-06:00",
    "version": "1.2.1",
    "title": "Some really neat indicator that we found",
    "type": [
    "URL Watchlist"
    ],
    "alternative_ids": [
    "CV-2014-12-12345",
    "CV-2015-02-54321"
    ],
    "descriptions": [
    {
    "id": "example:text-8769b510-9e76-4573-9778-864a51f052ae",
    "format": "text/plain",
    "value": "Some long description"
    }
    ],
    "short_descriptions": [
    {
    "id": "example:text-12170f79-62f4-48d9-9a97-d7077f05714f",
    "format": "text/plain",
    "value": "Some shorter description"
    }
    ]
    }
    ]
    }
    }

    We have a version field to say what version of an indicator it is and we know the type because it is in an indicator blob inside a stix_package blob.

    How does adding namespace elements make this more clear?

    I can easily parse this indicator and do interesting things with it. I can parse the TTPs that reference it and do things with them. I understand all of the fields in the indicator package because they are all well documented on the Github site [1] for Indicators. So I can either dump this data in to a relational database or in to a document database like MongoDB.

    Please help me understand why namespaces are required for structured data that is well defined. Like I said before, I can totally get and fully understand the need for JSON-LD in the open web. It makes perfect sense when you need this to share say random profile data between two or more entities (twitter, Facebook, youtube, etc). But we are not transporting random CTI, it will be in STIX. So alternative_ids are Alternative IDs, and a title is a Title. I do not see how JSON-LD helps us in anyway other than making a case for RDF over UML/OWL as RDF can work with JSON-LD.

    The only value I can see for JSON-LD is if we want to allow overloading. So I can make my own Indicator format and not adhere to the STIX version of an Indicator. In that case, yes, I can see the value, but I can also see the madness and chaos that would come from it.

    [1] - http://stixproject.github.io/data-model/1.2/indicator/IndicatorType/


    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 6, 2015, at 10:53, Barnum, Sean D. <sbarnum@mitre.org<mailto:sbarnum@mitre.org>> wrote:

    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.

    Cory, please feel free to point out if I am mischaracterizing your intent.

    sean


    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Jason,
    Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures

    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.

    Another is coded for “Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects”.

    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.

    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.

    -Cory

    From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com]
    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    "STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures."

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security<http://www.ibm.com/security> | www.securityintelligence.com<http://www.securityintelligence.com/>

    Without data, all you are is just another person with an opinion - Unknown


    <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>>
    To: "Barnum, Sean D." <sbarnum@mitre.org<mailto:sbarnum@mitre.org>>, Terry MacDonald <terry.macdonald@gmail.com<mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>>
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org<mailto:jwunder@mitre.org>>
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>
    ________________________________



    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From:cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org> [mailto:cti-stix@lists.oasis-open.org] On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.
    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>> wrote:
    I think this is a great idea..

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."
    On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org<mailto:jwunder@mitre.org>> wrote:

    How about we take two of the idioms on the stixproject.github.io<http://stixproject.github.io/> site?

    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>> wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    -Cory



    <image001.gif>




  • 7.  RE: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:23




    Bret,
    JSON comes from the assumption of a coupled environment “everyone knows what it means” and “everything will fit in a single hierarchical format” from a single
    data source. There is also the assumption that someone will write code for every use of every data element. I’m not suggesting that this does not have a place.
     
    RDF comes from the assumption of an open (perhaps within a protected ecosystem), loosely coupled environment – the “web of data” – multiple sources of data.
    This data may be consumed and integrated dynamically and sometimes without custom code. You said you understood the attraction of RDF for these purposes.
     
    So, the question is: do our use cases fall completely to one side or somewhere in the middle? I think your perspective is that the CTI use cases fall completely
    to the “coupled, we know what to expect” side. If you are correct then the “LD” context extensions are extra baggage in a message. I would suggest that if you are correct that the “cost” of these extra elements is minimal – just ignore them and code to the
    JSON tags. I tend to think the use cases fall in the middle.
     
    If I am correct and there is leverage in ANY OF THE FOLLOWING:
    ·         
    The ability to reference external data from a CTI data structure and be able to understand it (to some extent). Note this may be less true of the
    “core data” but very true of “edge data”, like organizations, software kinds and CWEs. However, there exist today open or somewhat open repositories of malware and bad IP addresses, so I would assert SOME DATA WILL BE OPEN or partially open –probably REST.
    ·         
    The ability of external agents to reference CTI data and reference it to some extent. Thus allowing CTI to define the formats for some of the above
    (e.g. malware).
    ·         
    That data consumers will ingest some CTI data into their analytics engines (or other software) without writing any custom code.
    ·         
    That CTI data will be combined/related with non CTI data
    ·         
    That everything you want to know about a subject may not be in a single message.
    ·         
    That some level of semantics may be able to augment human or manual capabilities.
    ·         
    There may be different hierarchies of data appropriate for different needs/use cases.
    ·         
    That there is a need to validate data (without puking like XML tools do)
    ·         
    That some consumers will not want to code for the entire CTI framework.
    ·         
    That the less we need to custom code, the better (faster, cheaper and more reliable). You write code four your core algorithms, the rest can be automated.
    ·         
    That there may be name conflicts across the many CTI imported packages.
    ·         
    That there will be some data repositories that we want to query
     
    All of the above depend on being able to understand what you get without human intervention. All of the above are capabilities leveraged by RDF & JSON-LD (and
    in many cases XML). JSON-LD is much more friendly than its RDF-XML  or XML-Schema counterparts. IMHO the small cost of those context declarations is justified by these capabilities, even if they are not leveraged by everyone. What we don’t want to do is lock
    ourselves into a “data island” where we can’t break out to the more open environment.
     
    I also don’t think something the size of CTI, even in pure JSON, will be small or simple.
     
    Thus from a cost/benefit or cost/risk point of view, LD is a justified extension to using JSON.
     
    -Cory
     


    From: Jordan, Bret [mailto:bret.jordan@bluecoat.com]

    Sent: Tuesday, October 06, 2015 1:00 PM
    To: Sean D. Barnum
    Cc: Cory Casanave; Jason Keirstead; Terry MacDonald; cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder, John A.
    Subject: Re: [cti-users] [cti-stix] [cti-users] MTI Binding


     
    Well my question still remains... 

     


     



    Please help me understand....  


     


    Say for kicks and giggles I have some structs that looks like this to consume an Indicator in a STIX package


     


    type StixMessageType struct {
          Id         string                    `json:"id,omitempty"`
          IdRef      string                    `json:"idref,omitempty"`
          Timestamp  string                    `json:"timestamp,omitempty"`
          Version    string                    `json:"version,omitempty"`
          Indicators []indicator.IndicatorType `json:"indicators,omitempty"`
    }


     


    type IndicatorType struct {


         
    Id                
         string                            `json:"id,omitempty"`


         
    IdRef                   
         string                              `json:"idref,omitempty"`
          Timestamp         
         string                            `json:"timestamp,omitempty"`
          Version                      string                               `json:"version,omitempty"`
          Negate                       bool                                 `json:"negate,omitempty"`
          Title                        string                               `json:"title,omitempty"`
          Types                        []string                             `json:"type,omitempty"`
          AlternativeIDs               []string                             `json:"alternative_ids,omitempty"`
          Descriptions                 []common.StructuredTextType          `json:"descriptions,omitempty"`
          ShortDescriptions            []common.StructuredTextType          `json:"short_descriptions,omitempty"`
          ValidTimePositions           []ValidTimeType                      `json:"valid_time_positions,omitempty"`
          Observable                   *observable.ObservableType           `json:"observable,omitempty"`
          CompositeIndicatorExpression *CompositeIndicatorExpressionType    `json:"composite_indicator_expression,omitempty"`
          IndicatedTTP                 []common.RelatedTTPType              `json:"indicated_ttps,omitempty"`
          KillChainPhases              []common.KillChainPhaseReferenceType `json:"kill_chain_phases,omitempty"`
          TestMechanisms               []TestMechanismType                  `json:"test_mechanisms,omitempty"`
          LikelyImpact                 *common.StatementType                `json:"likely_impact,omitempty"`
          SuggestedCOAs                []SuggestedCOAsType                  `json:"suggested_coas,omitempty"`
          Handling                     []common.MarkingSpecificationType    `json:"handling,omitempty"`
          Confidence                   *common.ConfidenceType               `json:"confidence,omitempty"`
          Sightings                    *SightingsType                       `json:"sightings,omitempty"`
          RelatedIndicators            *RelatedIndicatorsType               `json:"related_indicators,omitempty"`
          RelatedCampaigns             *RelatedCampaignReferencesType       `json:"related_campaigns,omitempty"`
          RelatedPackages              []common.RelatedPackageRefType       `json:"related_packages,omitempty"`
          Producer                     *common.InformationSourceType        `json:"producer,omitempty"`
    }


    And lets say I get an indicator over the wire that looks something like this, built directly from the STIX 1.2 schema.  


     


    {
        "stix_package": {
            "id": "example:package-1ad2aab5-1707-4fcc-8fd2-ebae152adeec",
            "indicators": [
                {
                    "id": "example:indicator-8571137a-32a2-4934-8077-2129475813af",
                    "idref": "companyfoo:indicator-1234-1234-1234-1234",
                    "timestamp": "2015-10-05T20:03:23-06:00",
                    "version": "1.2.1",
                    "title": "Some really neat indicator that we found",
                    "type": [
                        "URL Watchlist"
                    ],
                    "alternative_ids": [
                        "CV-2014-12-12345",
                        "CV-2015-02-54321"
                    ],
                    "descriptions": [
                        {
                            "id": "example:text-8769b510-9e76-4573-9778-864a51f052ae",
                            "format": "text/plain",
                            "value": "Some long description"
                        }
                    ],
                    "short_descriptions": [
                        {
                            "id": "example:text-12170f79-62f4-48d9-9a97-d7077f05714f",
                            "format": "text/plain",
                            "value": "Some shorter description"
                        }
                    ]
                }
            ]
        }
    }







     


    We have a version field to say what version of an indicator it is and we know the type because it is in an indicator blob inside a stix_package blob.  


     


    How does adding namespace elements make this more clear? 


     


    I can easily parse this indicator and do interesting things with it.  I can parse the TTPs that reference it and do things with them.  I understand all of the fields in the indicator package because they are all well documented on the Github
    site [1] for Indicators.  So I can either dump this data in to a relational database or in to a document database like MongoDB.  


     


    Please help me understand why namespaces are required for structured data that is well defined.  Like I said before,  I can totally get and fully understand  the need for JSON-LD in the open web.  It makes perfect sense when
    you need this to share say random profile data between two or more entities (twitter, Facebook, youtube, etc).  But we are not transporting random CTI, it will be in STIX.  So alternative_ids are Alternative IDs, and a title is a Title.  I do not see how JSON-LD
    helps us in anyway other than making a case for RDF over UML/OWL as RDF can work with JSON-LD.  


     


    The only value I can see for JSON-LD is if we want to allow overloading.  So I can make my own Indicator format and not adhere to the STIX version of an Indicator.  In that case, yes, I can see the value, but I can also see the madness
    and chaos that would come from it.  


     


    [1] -  http://stixproject.github.io/data-model/1.2/indicator/IndicatorType/


     















     


    Thanks,


     


    Bret



     


     


     



    Bret Jordan CISSP

    Director of Security Architecture and Standards Office of the CTO


    Blue Coat Systems



    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447  F2C0 74F8 ACAE 7415 0050


    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg." 









     



    On Oct 6, 2015, at 10:53, Barnum, Sean D. < sbarnum@mitre.org > wrote:

     



    I would agree with Cory’s characterizations and assertions here.


    Jason, I think you may have misinterpreted what Cory was trying to say.


    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and
    there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings
    just that its one meaning may serve multiple purposes.


     


    Cory, please feel free to point out if I am mischaracterizing your intent.


     


    sean


     



     


    From:   Cory Casanave
    Date:   Tuesday, October 6, 2015 at 10:37 AM
    To:   Jason Keirstead
    Cc:   "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


     




    Jason,


    Re:   This premise is untrue. Or at least, at the release of STIX 2.0, this has
    to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.


     


    The count of terms is easily verified, so I assume you think this is untrue:   may
    be used for very different use cases that use different viewpoints of the data with different root structures


     


    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently
    suggested that all uses of STIX will be coded.


     


    Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”.


     


    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.


     


    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different
    approaches to handling such diversity – which is part of this conversation.


     


    -Cory


     




    From:   Jason
    Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]  
    Sent:   Tuesday, October 06, 2015 8:26 AM
    To:   Cory Casanave
    Cc:   Barnum, Sean D.; Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ;
    Wunder, John A.
    Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding




     

    " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the
    data with different root structures. "

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this
    whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other
    context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what
    is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security     www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown  


    <image001.gif> Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From:   Cory Casanave < cory-c@modeldriven.com >
    To:   "Barnum, Sean D." < sbarnum@mitre.org >, Terry MacDonald
    < terry.macdonald@gmail.com >, "Jordan, Bret" < bret.jordan@bluecoat.com >
    Cc:   " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >,
    " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org >
    Date:   2015/10/05 09:04 PM
    Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by:   < cti-users@lists.oasis-open.org >









    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My
    server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility
    and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am
    concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE
    complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models
    easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from   Shawn Riley   to
    show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding
    the meaning of the data then it’s the humans who have to understand it and “connect the dots”.  

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From: cti-stix@lists.oasis-open.org   [ mailto:cti-stix@lists.oasis-open.org ]   On
    Behalf Of   Barnum, Sean D.
    Sent:   Monday, October 05, 2015 9:18 AM
    To:   Terry MacDonald; Jordan, Bret
    Cc:   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ;
    Wunder, John A.
    Subject:   [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From:   < cti-users@lists.oasis-open.org >
    on behalf of Terry MacDonald
    Date:   Friday, October 2, 2015 at 5:51 PM
    To:   "Jordan, Bret"
    Cc:   " cti-users@lists.oasis-open.org ",
    " cti-stix@lists.oasis-open.org ", John Wunder
    Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that
    the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.
    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com >
    wrote:
    I think this is a great idea..  

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org >
    wrote:

    How about we take two of the idioms on the   stixproject.github.io   site?

    -   http://stixproject.github.io/documentation/idioms/c2-indicator/
    -   http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John


    On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com >
    wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple
    “pure hierarchical data” and at least one with some related entities.
    -Cory







    <image001.gif>



     







  • 8.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:40
    +1 for RDF/JSON-LD As IBM said so clearly in their article:

    If we serialize the graph into a standard format, we end up having
    completely portable data. *Any RDF system can consume RDF from any other
    RDF system without any type of coordination. *The application or users
    might not know what to do with the data yet, but they can at least consume
    it and then see what they have ingested.

    https://www.ibm.com/developerworks/library/wa-data-integration-at-scale_rdf/

    On Tue, Oct 6, 2015 at 2:22 PM, Cory Casanave <cory-c@modeldriven.com>
    wrote:

    > Bret,
    >
    > JSON comes from the assumption of a coupled environment “everyone knows
    > what it means” and “everything will fit in a single hierarchical format”
    > from a single data source. There is also the assumption that someone will
    > write code for every use of every data element. I’m not suggesting that
    > this does not have a place.
    >
    >
    >
    > RDF comes from the assumption of an open (perhaps within a protected
    > ecosystem), loosely coupled environment – the “web of data” – multiple
    > sources of data. This data may be consumed and integrated dynamically and
    > sometimes without custom code. You said you understood the attraction of
    > RDF for these purposes.
    >
    >
    >
    > So, the question is: do our use cases fall completely to one side or
    > somewhere in the middle? I think your perspective is that the CTI use cases
    > fall completely to the “coupled, we know what to expect” side. If you are
    > correct then the “LD” context extensions are extra baggage in a message. I
    > would suggest that if you are correct that the “cost” of these extra
    > elements is minimal – just ignore them and code to the JSON tags. I tend to
    > think the use cases fall in the middle.
    >
    >
    >
    > If I am correct and there is leverage in ANY OF THE FOLLOWING:
    >
    > · The ability to reference external data from a CTI data
    > structure and be able to understand it (to some extent). Note this may be
    > less true of the “core data” but very true of “edge data”, like
    > organizations, software kinds and CWEs. However, there exist today open or
    > somewhat open repositories of malware and bad IP addresses, so I would
    > assert SOME DATA WILL BE OPEN or partially open –probably REST.
    >
    > · The ability of external agents to reference CTI data and
    > reference it to some extent. Thus allowing CTI to define the formats for
    > some of the above (e.g. malware).
    >
    > · That data consumers will ingest some CTI data into their
    > analytics engines (or other software) without writing any custom code.
    >
    > · That CTI data will be combined/related with non CTI data
    >
    > · That everything you want to know about a subject may not be in
    > a single message.
    >
    > · That some level of semantics may be able to augment human or
    > manual capabilities.
    >
    > · There may be different hierarchies of data appropriate for
    > different needs/use cases.
    >
    > · That there is a need to validate data (without puking like XML
    > tools do)
    >
    > · That some consumers will not want to code for the entire CTI
    > framework.
    >
    > · That the less we need to custom code, the better (faster,
    > cheaper and more reliable). You write code four your core algorithms, the
    > rest can be automated.
    >
    > · That there may be name conflicts across the many CTI imported
    > packages.
    >
    > · That there will be some data repositories that we want to query
    >
    >
    >
    > All of the above depend on being able to understand what you get without
    > human intervention. All of the above are capabilities leveraged by RDF &
    > JSON-LD (and in many cases XML). JSON-LD is much more friendly than its
    > RDF-XML or XML-Schema counterparts. IMHO the small cost of those context
    > declarations is justified by these capabilities, even if they are not
    > leveraged by everyone. What we don’t want to do is lock ourselves into a
    > “data island” where we can’t break out to the more open environment.
    >
    >
    >
    > I also don’t think something the size of CTI, even in pure JSON, will be
    > small or simple.
    >
    >
    >
    > Thus from a cost/benefit or cost/risk point of view, LD is a justified
    > extension to using JSON.
    >
    >
    >
    > -Cory
    >
    >
    >
    > *From:* Jordan, Bret [mailto:bret.jordan@bluecoat.com]
    > *Sent:* Tuesday, October 06, 2015 1:00 PM
    > *To:* Sean D. Barnum
    > *Cc:* Cory Casanave; Jason Keirstead; Terry MacDonald;
    > cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder,
    > John A.
    > *Subject:* Re: [cti-users] [cti-stix] [cti-users] MTI Binding
    >
    >
    >
    > Well my question still remains...
    >
    >
    >
    >
    >
    > Please help me understand....
    >
    >
    >
    > Say for kicks and giggles I have some structs that looks like this to
    > consume an Indicator in a STIX package
    >
    >
    >
    > type StixMessageType struct {
    > Id string `json:"id,omitempty"`
    > IdRef string `json:"idref,omitempty"`
    > Timestamp string `json:"timestamp,omitempty"`
    > Version string `json:"version,omitempty"`
    > Indicators []indicator.IndicatorType `json:"indicators,omitempty"`
    > }
    >
    >
    >
    > type IndicatorType struct {
    >
    > Id string
    > `json:"id,omitempty"`
    >
    > IdRef string
    > `json:"idref,omitempty"`
    > Timestamp string
    > `json:"timestamp,omitempty"`
    > Version string
    > `json:"version,omitempty"`
    > Negate bool
    > `json:"negate,omitempty"`
    > Title string
    > `json:"title,omitempty"`
    > Types []string
    > `json:"type,omitempty"`
    > AlternativeIDs []string
    > `json:"alternative_ids,omitempty"`
    > Descriptions []common.StructuredTextType
    > `json:"descriptions,omitempty"`
    > ShortDescriptions []common.StructuredTextType
    > `json:"short_descriptions,omitempty"`
    > ValidTimePositions []ValidTimeType
    > `json:"valid_time_positions,omitempty"`
    > Observable *observable.ObservableType
    > `json:"observable,omitempty"`
    > CompositeIndicatorExpression *CompositeIndicatorExpressionType
    > `json:"composite_indicator_expression,omitempty"`
    > IndicatedTTP []common.RelatedTTPType
    > `json:"indicated_ttps,omitempty"`
    > KillChainPhases []common.KillChainPhaseReferenceType
    > `json:"kill_chain_phases,omitempty"`
    > TestMechanisms []TestMechanismType
    > `json:"test_mechanisms,omitempty"`
    > LikelyImpact *common.StatementType
    > `json:"likely_impact,omitempty"`
    > SuggestedCOAs []SuggestedCOAsType
    > `json:"suggested_coas,omitempty"`
    > Handling []common.MarkingSpecificationType
    > `json:"handling,omitempty"`
    > Confidence *common.ConfidenceType
    > `json:"confidence,omitempty"`
    > Sightings *SightingsType
    > `json:"sightings,omitempty"`
    > RelatedIndicators *RelatedIndicatorsType
    > `json:"related_indicators,omitempty"`
    > RelatedCampaigns *RelatedCampaignReferencesType
    > `json:"related_campaigns,omitempty"`
    > RelatedPackages []common.RelatedPackageRefType
    > `json:"related_packages,omitempty"`
    > Producer *common.InformationSourceType
    > `json:"producer,omitempty"`
    > }
    >
    > And lets say I get an indicator over the wire that looks something like
    > this, built directly from the STIX 1.2 schema.
    >
    >
    >
    > {
    > "stix_package": {
    > "id": "example:package-1ad2aab5-1707-4fcc-8fd2-ebae152adeec",
    > "indicators": [
    > {
    > "id":
    > "example:indicator-8571137a-32a2-4934-8077-2129475813af",
    > "idref": "companyfoo:indicator-1234-1234-1234-1234",
    > "timestamp": "2015-10-05T20:03:23-06:00",
    > "version": "1.2.1",
    > "title": "Some really neat indicator that we found",
    > "type": [
    > "URL Watchlist"
    > ],
    > "alternative_ids": [
    > "CV-2014-12-12345",
    > "CV-2015-02-54321"
    > ],
    > "descriptions": [
    > {
    > "id":
    > "example:text-8769b510-9e76-4573-9778-864a51f052ae",
    > "format": "text/plain",
    > "value": "Some long description"
    > }
    > ],
    > "short_descriptions": [
    > {
    > "id":
    > "example:text-12170f79-62f4-48d9-9a97-d7077f05714f",
    > "format": "text/plain",
    > "value": "Some shorter description"
    > }
    > ]
    > }
    > ]
    > }
    > }
    >
    >
    >
    > We have a version field to say what version of an indicator it is and we
    > know the type because it is in an indicator blob inside a stix_package
    > blob.
    >
    >
    >
    > How does adding namespace elements make this more clear?
    >
    >
    >
    > I can easily parse this indicator and do interesting things with it. I
    > can parse the TTPs that reference it and do things with them. I understand
    > all of the fields in the indicator package because they are all well
    > documented on the Github site [1] for Indicators. So I can either dump
    > this data in to a relational database or in to a document database like
    > MongoDB.
    >
    >
    >
    > Please help me understand why namespaces are required for structured data
    > that is well defined. Like I said before, *I can totally get and fully
    > understand* the need for JSON-LD in the open web. It makes perfect sense
    > when you need this to share say random profile data between two or more
    > entities (twitter, Facebook, youtube, etc). But we are not transporting
    > random CTI, it will be in STIX. So alternative_ids are Alternative IDs,
    > and a title is a Title. I do not see how JSON-LD helps us in anyway other
    > than making a case for RDF over UML/OWL as RDF can work with JSON-LD.
    >
    >
    >
    > The only value I can see for JSON-LD is if we want to allow overloading.
    > So I can make my own Indicator format and not adhere to the STIX version of
    > an Indicator. In that case, yes, I can see the value, but I can also see
    > the madness and chaos that would come from it.
    >
    >
    >
    > [1] - http://stixproject.github.io/data-model/1.2/indicator/IndicatorType/
    >
    >
    >
    >
    >
    > Thanks,
    >
    >
    >
    > Bret
    >
    >
    >
    >
    >
    >
    >
    > *Bret Jordan CISSP*
    >
    > Director of Security Architecture and Standards | Office of the CTO
    >
    > Blue Coat Systems
    >
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > can not be unscrambled is an egg."
    >
    >
    >
    > On Oct 6, 2015, at 10:53, Barnum, Sean D. <sbarnum@mitre.org> wrote:
    >
    >
    >
    > I would agree with Cory’s characterizations and assertions here.
    >
    > Jason, I think you may have misinterpreted what Cory was trying to say.
    >
    > He was not saying that given fields have multiple meanings. He was saying
    > that differing use cases focused on different purposes may leverage
    > different sets of fields and there will likely be overlap between the
    > fields leveraged by different use cases. And that different use cases may
    > care about a given field for different reasons and do different things with
    > its content. That does not mean that the field has multiple meanings just
    > that its one meaning may serve multiple purposes.
    >
    >
    >
    > Cory, please feel free to point out if I am mischaracterizing your intent.
    >
    >
    >
    > sean
    >
    >
    >
    >
    >
    > *From: *Cory Casanave
    > *Date: *Tuesday, October 6, 2015 at 10:37 AM
    > *To: *Jason Keirstead
    > *Cc: *"Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "
    > cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org", John
    > Wunder
    > *Subject: *RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    >
    >
    > Jason,
    >
    > Re: This premise is untrue. Or at least, at the release of STIX 2.0, this
    > has to be untrue - otherwise we have fundamentally failed in creating a
    > data interchange standard. And I believe that this incongruency is at the
    > heart of this whole discussion.
    >
    >
    >
    > The count of terms is easily verified, so I assume you think this is
    > untrue: *may be used for very different use cases that use different
    > viewpoints of the data with different root structures*
    >
    >
    >
    > Consider STIX may be used by one application to produce or consume a list
    > of suspect IP addresses, and is hard-coded to that purpose and structure.
    > It has been independently suggested that all uses of STIX will be coded.
    >
    >
    >
    > Another is coded for “Mitigation Strategies - Coordinated Action Plans -
    > Courses of Action - Understanding of Achievable Mitigation Effects”.
    >
    >
    >
    > Other than having a common STIX envelope, I would consider these different
    > viewpoints of the data with different root structures.
    >
    >
    >
    > You could identify dozens of such essentially different exchanges. I’m not
    > suggesting this as a failure, only a reality of the domain and scope. Of
    > course, there are different approaches to handling such diversity – which
    > is part of this conversation.
    >
    >
    >
    > -Cory
    >
    >
    >
    > *From:* Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com
    > <Jason.Keirstead@ca.ibm.com>]
    > *Sent:* Tuesday, October 06, 2015 8:26 AM
    > *To:* Cory Casanave
    > *Cc:* Barnum, Sean D.; Terry MacDonald; Jordan, Bret;
    > cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder,
    > John A.
    > *Subject:* RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    >
    >
    > "STIX is several thousand terms and may be used for very different use
    > cases that use different viewpoints of the data with different root
    > structures."
    >
    > This premise is untrue. Or at least, at the release of STIX 2.0, this has
    > to be untrue - otherwise we have fundamentally failed in creating a data
    > interchange standard. And I believe that this incongruency is at the heart
    > of this whole discussion.
    >
    > The whole point of data interchange standards is to explicitly avoid this
    > premise. It is so that when I create a message such as
    > "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that
    > message without any other context to any recipient on the planet** - and
    > the recipient will be able to understand it, because they do not have to
    > guess as to what "name", or "id" mean - because they know that I am
    > following the "Fooferah 1.0" standard, which explicitly defines what is
    > present in those fields.
    >
    >
    > -
    > Jason Keirstead
    > Product Architect, Security Intelligence, IBM Security Systems
    > www.ibm.com/security | www.securityintelligence.com
    >
    > Without data, all you are is just another person with an opinion - Unknown
    >
    >
    >
    > <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much
    > agree. A lot of the “its simple” view of JSON or even early XML is based on
    > its us
    >
    > From: Cory Casanave <cory-c@modeldriven.com>
    > To: "Barnum, Sean D." <sbarnum@mitre.org>, Terry MacDonald <
    > terry.macdonald@gmail.com>, "Jordan, Bret" <bret.jordan@bluecoat.com>
    > Cc: "cti-users@lists.oasis-open.org" <cti-users@lists.oasis-open.org>, "
    > cti-stix@lists.oasis-open.org" <cti-stix@lists.oasis-open.org>, "Wunder,
    > John A." <jwunder@mitre.org>
    > Date: 2015/10/05 09:04 PM
    > Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    > Sent by: <cti-users@lists.oasis-open.org>
    > ------------------------------
    >
    >
    >
    >
    > Sean,
    > I very much agree. A lot of the “its simple” view of JSON or even early
    > XML is based on its use for single and highly structured interactions
    > between endpoints controlled by the same authority (My server talking to my
    > android application).
    >
    > STIX is several thousand terms and may be used for very different use
    > cases that use different viewpoints of the data with different root
    > structures. On top of this is the need for extensibility and flexibility.
    > This is simply the reality of the domain and the scope of STIX. The bad
    > news is that regardless of the serialization format, schema language,
    > model, language, etc. It is somewhat complex – that is the real and
    > necessary complexity. So I am concerned that the “Pure JSON will be simple”
    > view will end in some disappointment. Note that the same concerns of
    > complexity are levied against NIEM, another large XML schema based data
    > sharing standard.
    >
    > The good news is we can make it BETTER and as simple as is practical! When
    > some of these requirements are folded into XML schema, it adds complexity –
    > so perhaps some of these other choices REDUCE complexity even if they
    > require some new learning. Where we can add semantic precision software can
    > handle some of the load. If we have a way to define fine-tuned “profiles”,
    > these may be much simpler for their more limited purpose. We can also make
    > the models easier to understand for us humans with graphical models linked
    > to semantic definitions.
    >
    > I am copying the following list from Shawn Riley to show the variety of
    > information formats and viewpoints that we are trying to fit together under
    > one, many faceted, schema:
    >
    > Below is some of the typical cybersecurity data and information
    > users/analysts/scientists have to organize into some type of body of
    > knowledge so they understand their cybersecurity ecosystem. If the
    > technology can’t understanding the meaning of the data then it’s the humans
    > who have to understand it and “connect the dots”.
    >
    > Configuration/Anomaly Reporting - Infrastructure Information - Risk
    > Posture - Anomalies
    >
    > Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor
    > Personas - Collected Threat Actor Indicators - Threat Actor Attribution -
    > Trend Analysis - Victim Information
    >
    > Incident Awareness - Incident Information - Incident Data - Infrastructure
    > Impact and Effects - Investigations/cases - Alerting Indicators - Victim
    > Information
    >
    > Indications and Warnings - Events and Alerts - Tipping and Cueing -
    > Warnings - Impact assessments - Potential Indicators
    >
    > Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim
    > Information
    >
    > Mitigation Strategies - Coordinated Action Plans - Courses of Action -
    > Understanding of Achievable Mitigation Effects
    >
    > Mitigation Actions and Responses - Computer Network Defense Situational
    > Awareness - Action Tasking and Status - Effectiveness Reporting - After
    > Action Reporting and Lessons Learned
    >
    >
    > *From:*cti-stix@lists.oasis-open.org [mailto:cti-stix@lists.oasis-open.org
    > <cti-stix@lists.oasis-open.org>] *On Behalf Of *Barnum, Sean D.
    > * Sent:* Monday, October 05, 2015 9:18 AM
    > * To:* Terry MacDonald; Jordan, Bret
    > * Cc:* cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org;
    > Wunder, John A.
    > * Subject:* [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI
    > Binding
    >
    > I think that using these simple idioms would be great for folks to see
    > roughly what the different forms look like but I do not think they would be
    > sufficient for comparing size and complexity as a whole.
    > These are VERY simple example structures. More complex examples would
    > likely differ from these simple ones in how each representation tackle size
    > and complexity.
    >
    > sean
    >
    > *From: *<cti-users@lists.oasis-open.org> on behalf of Terry MacDonald
    > * Date: *Friday, October 2, 2015 at 5:51 PM
    > * To: *"Jordan, Bret"
    > * Cc: *"cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org",
    > John Wunder
    > * Subject: *Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > +1. Is a nice idea as we can see a size and complexity comparison. Is
    > there any chance each person can document the process that the generation
    > took? I'm thinking it could be useful to see how complicated the toolchain
    > for developing each type of output is.
    >
    > Cheers
    > Terry MacDonald
    > On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com> wrote:
    > I think this is a great idea..
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > *Bret Jordan CISSP*
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > can not be unscrambled is an egg."
    >
    > On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org> wrote:
    >
    > How about we take two of the idioms on the stixproject.github.io site?
    >
    > - http://stixproject.github.io/documentation/idioms/c2-indicator/
    > - http://stixproject.github.io/documentation/idioms/simple-incident/
    >
    > Thanks for helping out. I think it would be nice to see these as:
    >
    > - Current STIX XML (Done already)
    > - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    > - JSON/JSON-Schema (Wunder)
    > - JSON-LD (Casanave)
    > - Any others people are interest (PMML, Thrift, ProtoBuf, etc)
    >
    > John
    >
    > On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com> wrote:
    >
    > Re: Examples.
    > Pick your examples, I can help out. Would prefer to baseline off of the
    > same schema subset & example data, current STIX is fine to define the
    > examples. I suggest at least one that is very simple “pure hierarchical
    > data” and at least one with some related entities.
    > -Cory
    >
    >
    >
    >
    > <image001.gif>
    >
    >
    >



  • 9.  Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 17:18
    This is my point exactly...

    > "And that different use cases may care about a given field for
    different reasons and do different things with its content. ".

    This doesn't work.

    As an example, the word "Angel" means something very different in English
    than it does in German. Surely this will cause confusion if we use it in an
    XML tag! But when I send you <angel>fooferah</angel>, it doesn't matter
    what language we speak, there is no confusion... because we have agreed,
    codified, and committed that the Fooferah 1.0 standard codifies exactly
    what the <angel> tag means, and there is no dispute. There is no "do
    different things with its content". We will all do exactly the same thing
    with that content - whatever the standard says we are to do with it,
    because that is what we have agreed on. Malware is Malware is Malware -
    there is no dispute, or should not be any dispute, what that means. If
    there is any dispute, then we have to codify the standard around it more,
    until we all agree on exactly what it is.

    Why is this important? It is important because if I as an intelligence
    creator (software A) can't reliably send data to an intelligence consumer
    (software B) and know **exactly** how it will be interpreted, then products
    and services will never be inter-operable.

    If the goal of this endeavor is not to allow products to be able to
    reliably communicate threat intelligence with each other - then what is it?




    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security | www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown




    From: "Barnum, Sean D." <sbarnum@mitre.org>
    To: Cory Casanave <cory-c@modeldriven.com>, Jason
    Keirstead/CanEast/IBM@IBMCA
    Cc: Terry MacDonald <terry.macdonald@gmail.com>, "Jordan, Bret"
    <bret.jordan@bluecoat.com>, "cti-users@lists.oasis-open.org"
    <cti-users@lists.oasis-open.org>,
    "cti-stix@lists.oasis-open.org"
    <cti-stix@lists.oasis-open.org>, "Wunder, John A."
    <jwunder@mitre.org>
    Date: 2015/10/06 01:53 PM
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI
    Binding
    Sent by: <cti-stix@lists.oasis-open.org>



    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying
    that differing use cases focused on different purposes may leverage
    different sets of fields and there will likely be overlap between the
    fields leveraged by different use cases. And that different use cases may
    care about a given field for different reasons and do different things with
    its content. That does not mean that the field has multiple meanings just
    that its one meaning may serve multiple purposes.

    Cory, please feel free to point out if I am mischaracterizing your intent.

    sean


    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "
    cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org", John
    Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Jason,
    Re: This premise is untrue. Or at least, at the release of STIX 2.0, this
    has to be untrue - otherwise we have fundamentally failed in creating a
    data interchange standard. And I believe that this incongruency is at the
    heart of this whole discussion.

    The count of terms is easily verified, so I assume you think this is
    untrue: may be used for very different use cases that use different
    viewpoints of the data with different root structures

    Consider STIX may be used by one application to produce or consume a list
    of suspect IP addresses, and is hard-coded to that purpose and structure.
    It has been independently suggested that all uses of STIX will be coded.

    Another is coded for “Mitigation Strategies - Coordinated Action Plans -
    Courses of Action - Understanding of Achievable Mitigation Effects”.

    Other than having a common STIX envelope, I would consider these different
    viewpoints of the data with different root structures.

    You could identify dozens of such essentially different exchanges. I’m not
    suggesting this as a failure, only a reality of the domain and scope. Of
    course, there are different approaches to handling such diversity – which
    is part of this conversation.

    -Cory

    From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com]
    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret;
    cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder, John
    A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding



    "STIX is several thousand terms and may be used for very different use
    cases that use different viewpoints of the data with different root
    structures."

    This premise is untrue. Or at least, at the release of STIX 2.0, this has
    to be untrue - otherwise we have fundamentally failed in creating a data
    interchange standard. And I believe that this incongruency is at the heart
    of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this
    premise. It is so that when I create a message such as
    "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that
    message without any other context to any recipient on the planet** - and
    the recipient will be able to understand it, because they do not have to
    guess as to what "name", or "id" mean - because they know that I am
    following the "Fooferah 1.0" standard, which explicitly defines what is
    present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security | www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown


    Inactive hide details for Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I
    very much agree. A lot of the “its simple” view oCory Casanave
    ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its
    simple” view of JSON or even early XML is based on its us

    From: Cory Casanave <cory-c@modeldriven.com>
    To: "Barnum, Sean D." <sbarnum@mitre.org>, Terry MacDonald <
    terry.macdonald@gmail.com>, "Jordan, Bret" <bret.jordan@bluecoat.com>
    Cc: "cti-users@lists.oasis-open.org" <cti-users@lists.oasis-open.org>, "
    cti-stix@lists.oasis-open.org" <cti-stix@lists.oasis-open.org>, "Wunder,
    John A." <jwunder@mitre.org>
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-users@lists.oasis-open.org>




    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML
    is based on its use for single and highly structured interactions between
    endpoints controlled by the same authority (My server talking to my android
    application).

    STIX is several thousand terms and may be used for very different use cases
    that use different viewpoints of the data with different root structures.
    On top of this is the need for extensibility and flexibility. This is
    simply the reality of the domain and the scope of STIX. The bad news is
    that regardless of the serialization format, schema language, model,
    language, etc. It is somewhat complex – that is the real and necessary
    complexity. So I am concerned that the “Pure JSON will be simple” view will
    end in some disappointment. Note that the same concerns of complexity are
    levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When
    some of these requirements are folded into XML schema, it adds complexity –
    so perhaps some of these other choices REDUCE complexity even if they
    require some new learning. Where we can add semantic precision software can
    handle some of the load. If we have a way to define fine-tuned “profiles”,
    these may be much simpler for their more limited purpose. We can also make
    the models easier to understand for us humans with graphical models linked
    to semantic definitions.

    I am copying the following list from Shawn Riley to show the variety of
    information formats and viewpoints that we are trying to fit together under
    one, many faceted, schema:

    Below is some of the typical cybersecurity data and information
    users/analysts/scientists have to organize into some type of body of
    knowledge so they understand their cybersecurity ecosystem. If the
    technology can’t understanding the meaning of the data then it’s the humans
    who have to understand it and “connect the dots”.

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture
    - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor
    Personas - Collected Threat Actor Indicators - Threat Actor Attribution -
    Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure
    Impact and Effects - Investigations/cases - Alerting Indicators - Victim
    Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing -
    Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim
    Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action -
    Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational
    Awareness - Action Tasking and Status - Effectiveness Reporting - After
    Action Reporting and Lessons Learned


    From:cti-stix@lists.oasis-open.org [mailto:cti-stix@lists.oasis-open.org]
    On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder,
    John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see
    roughly what the different forms look like but I do not think they would be
    sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would
    likely differ from these simple ones in how each representation tackle size
    and complexity.

    sean

    From: <cti-users@lists.oasis-open.org> on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: "cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org", John
    Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


    +1. Is a nice idea as we can see a size and complexity comparison. Is there
    any chance each person can document the process that the generation took?
    I'm thinking it could be useful to see how complicated the toolchain for
    developing each type of output is.


    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com> wrote:
    I think this is a great idea..

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can
    not be unscrambled is an egg."
    On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org>
    wrote:

    How about we take two of the idioms on the
    stixproject.github.io site?

    -
    http://stixproject.github.io/documentation/idioms/c2-indicator/
    -
    http://stixproject.github.io/documentation/idioms/simple-incident/


    Thanks for helping out. I think it would be nice to see these
    as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do
    this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave <
    cory-c@modeldriven.com> wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to
    baseline off of the same schema subset & example
    data, current STIX is fine to define the examples.
    I suggest at least one that is very simple “pure
    hierarchical data” and at least one with some
    related entities.
    -Cory


    ---------------------------------------------------------------------
    To unsubscribe from this mail list, you must leave the OASIS TC that
    generates this mail. Follow this link to all your TCs in OASIS at:
    https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
    [attachment "image001.gif" deleted by Jason Keirstead/CanEast/IBM]



  • 10.  Re: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 19:07
    Jason, I am afraid we are still talking past each other.

    We absolutely agree with the need to have one clear and explicit meaning defined for each concept, term and field.
    We are talking about the fact that there is a difference between what a field “means” and what you might “do” with its instantial content.

    Using a very simple example let’s assume I send out a STIX indicator associating a particular IP Address to malicious infrastructure. I send it to Party A, Party B and Party C.
    Everybody (me, A, B and C) all understand what is “meant" by the IP Address field but the different parties may wish to “do” different things with that IP Address field value.

    * Party A might immediately deploy it to their IDS
    * Party B might extract the IP Address from the Indicator and inject it into their SIEM to see what else they might know about that IP Address
    * Party C might take that IP Address and go conduct enrichment activities around geolocation, WHOIS registration info, DNS binding history, etc.

    The IP Address field “means" the same thing to each party and there is no confusion on what the sender intended it to mean.
    However, each party will use that information in different ways to support different use cases.

    This is what we are talking about.

    Does that make sense?

    sean

    From: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>> on behalf of Jason Keirstead
    Date: Tuesday, October 6, 2015 at 1:18 PM
    To: "Barnum, Sean D."
    Cc: Cory Casanave, Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


    This is my point exactly...

    > "And that different use cases may care about a given field for different reasons and do different things with its content. ".

    This doesn't work.

    As an example, the word "Angel" means something very different in English than it does in German. Surely this will cause confusion if we use it in an XML tag! But when I send you <angel>fooferah</angel>, it doesn't matter what language we speak, there is no confusion... because we have agreed, codified, and committed that the Fooferah 1.0 standard codifies exactly what the <angel> tag means, and there is no dispute. There is no "do different things with its content". We will all do exactly the same thing with that content - whatever the standard says we are to do with it, because that is what we have agreed on. Malware is Malware is Malware - there is no dispute, or should not be any dispute, what that means. If there is any dispute, then we have to codify the standard around it more, until we all agree on exactly what it is.

    Why is this important? It is important because if I as an intelligence creator (software A) can't reliably send data to an intelligence consumer (software B) and know **exactly** how it will be interpreted, then products and services will never be inter-operable.

    If the goal of this endeavor is not to allow products to be able to reliably communicate threat intelligence with each other - then what is it?




    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security | www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown


    [Inactive hide details for "Barnum, Sean D." ---2015/10/06 01:53:20 PM---I would agree with Cory’s characterizations and assert]"Barnum, Sean D." ---2015/10/06 01:53:20 PM---I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinte

    From: "Barnum, Sean D." <sbarnum@mitre.org<mailto:sbarnum@mitre.org>>
    To: Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>>, Jason Keirstead/CanEast/IBM@IBMCA
    Cc: Terry MacDonald <terry.macdonald@gmail.com<mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>>, "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org<mailto:jwunder@mitre.org>>
    Date: 2015/10/06 01:53 PM
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>>
    ________________________________



    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.

    Cory, please feel free to point out if I am mischaracterizing your intent.

    sean


    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Jason,
    Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures

    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.

    Another is coded for “Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects”.

    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.

    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.

    -Cory

    From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com]
    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    "STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures."

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security<http://www.ibm.com/security> | www.securityintelligence.com<http://www.securityintelligence.com/>

    Without data, all you are is just another person with an opinion - Unknown


    [Inactive hide details for Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view o]Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>>
    To: "Barnum, Sean D." <sbarnum@mitre.org<mailto:sbarnum@mitre.org>>, Terry MacDonald <terry.macdonald@gmail.com<mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>>
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org<mailto:jwunder@mitre.org>>
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>

    ________________________________




    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From:cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org> [mailto:cti-stix@lists.oasis-open.org] On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.

    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>> wrote:
    I think this is a great idea..

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org<mailto:jwunder@mitre.org>> wrote:

    How about we take two of the idioms on the stixproject.github.io<http://stixproject.github.io/> site?

    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>> wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    -Cory


    ---------------------------------------------------------------------
    To unsubscribe from this mail list, you must leave the OASIS TC that
    generates this mail. Follow this link to all your TCs in OASIS at:
    https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
    [attachment "image001.gif" deleted by Jason Keirstead/CanEast/IBM]




  • 11.  Re: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 19:07





    Jason, I am afraid we are still talking past each other.


    We absolutely agree with the need to have one clear and explicit meaning defined for each concept, term and field.
    We are talking about the fact that there is a difference between what a field “means” and what you might “do” with its instantial content.


    Using a very simple example let’s assume I send out a STIX indicator associating a particular IP Address to malicious infrastructure. I send it to Party A, Party B and Party C.
    Everybody (me, A, B and C) all understand what is “meant" by the IP Address field but the different parties may wish to “do” different things with that IP Address field value.

    Party A might immediately deploy it to their IDS Party B might extract the IP Address from the Indicator and inject it into their SIEM to see what else they might know about that IP Address Party C might take that IP Address and go conduct enrichment activities around geolocation, WHOIS registration info, DNS binding history, etc.
    The IP Address field “means" the same thing to each party and there is no confusion on what the sender intended it to mean.
    However, each party will use that information in different ways to support different use cases.


    This is what we are talking about.


    Does that make sense?


    sean









    From: < cti-users@lists.oasis-open.org > on behalf of Jason Keirstead
    Date: Tuesday, October 6, 2015 at 1:18 PM
    To: "Barnum, Sean D."
    Cc: Cory Casanave, Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding





    This is my point exactly...


    > " And that different use cases may care about a given field for different reasons and do different things with its content. ".


    This doesn't work.

    As an example, the word "Angel" means something very different in English than it does in German. Surely this will cause confusion if we use it in an XML tag! But when I send you <angel>fooferah</angel>, it doesn't matter what language
    we speak, there is no confusion... because we have agreed, codified, and committed that the Fooferah 1.0 standard codifies exactly what the <angel> tag means, and there is no dispute. There is no "do different things with its content". We will all do exactly
    the same thing with that content - whatever the standard says we are to do with it, because that is what we have agreed on. Malware is Malware is Malware - there is no dispute, or should not be any dispute, what that means. If there is any dispute, then we
    have to codify the standard around it more, until we all agree on exactly what it is.

    Why is this important? It is important because if I as an intelligence creator (software A) can't reliably send data to an intelligence consumer (software B) and know **exactly** how it will be interpreted, then products and services will
    never be inter-operable.

    If the goal of this endeavor is not to allow products to be able to reliably communicate threat intelligence with each other - then what is it?




    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown


    "Barnum,
    Sean D." ---2015/10/06 01:53:20 PM---I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinte

    From: "Barnum, Sean D." < sbarnum@mitre.org >
    To: Cory Casanave < cory-c@modeldriven.com >, Jason Keirstead/CanEast/IBM@IBMCA
    Cc: Terry MacDonald < terry.macdonald@gmail.com >, "Jordan, Bret" < bret.jordan@bluecoat.com >, " cti-users@lists.oasis-open.org "
    < cti-users@lists.oasis-open.org >, " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder,
    John A." < jwunder@mitre.org >
    Date: 2015/10/06 01:53 PM
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: < cti-stix@lists.oasis-open.org >




    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different
    use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.

    Cory, please feel free to point out if I am mischaracterizing your intent.

    sean


    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ",
    " cti-stix@lists.oasis-open.org ", John Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Jason,
    Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And
    I believe that this incongruency is at the heart of this whole discussion.

    The count of terms is easily verified, so I assume you think this is untrue:
    may be used for very different use cases that use different viewpoints of the data with different root structures

    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will
    be coded.

    Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”.

    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.

    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity
    – which is part of this conversation.

    -Cory

    From: Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]

    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret;
    cti-users@lists.oasis-open.org ;
    cti-stix@lists.oasis-open.org ; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. "

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the
    planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security
    www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown


    Cory
    Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave < cory-c@modeldriven.com >
    To: "Barnum, Sean D." < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >,
    "Jordan, Bret" < bret.jordan@bluecoat.com >
    Cc: " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >,
    " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >,
    "Wunder, John A." < jwunder@mitre.org >
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: < cti-users@lists.oasis-open.org >






    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and
    the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in
    some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we
    can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models
    linked to semantic definitions.

    I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted,
    schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then
    it’s the humans who have to understand it and “connect the dots”.

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From: cti-stix@lists.oasis-open.org [ mailto:cti-stix@lists.oasis-open.org ]
    On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org ;
    cti-stix@lists.oasis-open.org ; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From: < cti-users@lists.oasis-open.org > on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing
    each type of output is.
    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com > wrote:
    I think this is a great idea..

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."





    On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org > wrote:

    How about we take two of the idioms on the stixproject.github.io site?

    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John




    On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com >
    wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    -Cory









    ---------------------------------------------------------------------
    To unsubscribe from this mail list, you must leave the OASIS TC that
    generates this mail.  Follow this link to all your TCs in OASIS at:
    https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php  
    [attachment "image001.gif" deleted by Jason Keirstead/CanEast/IBM]









  • 12.  Re: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 19:31
    This makes sense - I am just not sure what impact this would have on the
    data transmission format ?

    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security | www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown




    From: "Barnum, Sean D." <sbarnum@mitre.org>
    To: Jason Keirstead/CanEast/IBM@IBMCA
    Cc: Cory Casanave <cory-c@modeldriven.com>, Terry MacDonald
    <terry.macdonald@gmail.com>, "Jordan, Bret"
    <bret.jordan@bluecoat.com>, "cti-users@lists.oasis-open.org"
    <cti-users@lists.oasis-open.org>,
    "cti-stix@lists.oasis-open.org"
    <cti-stix@lists.oasis-open.org>, "Wunder, John A."
    <jwunder@mitre.org>
    Date: 2015/10/06 04:07 PM
    Subject: Re: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix]
    [cti-users] MTI Binding



    Jason, I am afraid we are still talking past each other.

    We absolutely agree with the need to have one clear and explicit meaning
    defined for each concept, term and field.
    We are talking about the fact that there is a difference between what a
    field “means” and what you might “do” with its instantial content.

    Using a very simple example let’s assume I send out a STIX indicator
    associating a particular IP Address to malicious infrastructure. I send it
    to Party A, Party B and Party C.
    Everybody (me, A, B and C) all understand what is “meant" by the IP Address
    field but the different parties may wish to “do” different things with that
    IP Address field value.
    Party A might immediately deploy it to their IDS
    Party B might extract the IP Address from the Indicator and inject it
    into their SIEM to see what else they might know about that IP
    Address
    Party C might take that IP Address and go conduct enrichment
    activities around geolocation, WHOIS registration info, DNS binding
    history, etc.
    The IP Address field “means" the same thing to each party and there is no
    confusion on what the sender intended it to mean.
    However, each party will use that information in different ways to support
    different use cases.

    This is what we are talking about.

    Does that make sense?

    sean

    From: <cti-users@lists.oasis-open.org> on behalf of Jason Keirstead
    Date: Tuesday, October 6, 2015 at 1:18 PM
    To: "Barnum, Sean D."
    Cc: Cory Casanave, Terry MacDonald, "Jordan, Bret", "
    cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org", John
    Wunder
    Subject: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix]
    [cti-users] MTI Binding



    This is my point exactly...



    > "And that different use cases may care about a given field for
    different reasons and do different things with its content. ".

    This doesn't work.

    As an example, the word "Angel" means something very different in English
    than it does in German. Surely this will cause confusion if we use it in an
    XML tag! But when I send you <angel>fooferah</angel>, it doesn't matter
    what language we speak, there is no confusion... because we have agreed,
    codified, and committed that the Fooferah 1.0 standard codifies exactly
    what the <angel> tag means, and there is no dispute. There is no "do
    different things with its content". We will all do exactly the same thing
    with that content - whatever the standard says we are to do with it,
    because that is what we have agreed on. Malware is Malware is Malware -
    there is no dispute, or should not be any dispute, what that means. If
    there is any dispute, then we have to codify the standard around it more,
    until we all agree on exactly what it is.

    Why is this important? It is important because if I as an intelligence
    creator (software A) can't reliably send data to an intelligence consumer
    (software B) and know **exactly** how it will be interpreted, then products
    and services will never be inter-operable.

    If the goal of this endeavor is not to allow products to be able to
    reliably communicate threat intelligence with each other - then what is it?




    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security | www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown


    Inactive hide details for "Barnum, Sean D." ---2015/10/06 01:53:20 PM---I
    would agree with Cory’s characterizations and assert"Barnum, Sean D."
    ---2015/10/06 01:53:20 PM---I would agree with Cory’s characterizations and
    assertions here. Jason, I think you may have misinte

    From: "Barnum, Sean D." <sbarnum@mitre.org>
    To: Cory Casanave <cory-c@modeldriven.com>, Jason
    Keirstead/CanEast/IBM@IBMCA
    Cc: Terry MacDonald <terry.macdonald@gmail.com>, "Jordan, Bret" <
    bret.jordan@bluecoat.com>, "cti-users@lists.oasis-open.org" <
    cti-users@lists.oasis-open.org>, "cti-stix@lists.oasis-open.org" <
    cti-stix@lists.oasis-open.org>, "Wunder, John A." <jwunder@mitre.org>
    Date: 2015/10/06 01:53 PM
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-stix@lists.oasis-open.org>



    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying
    that differing use cases focused on different purposes may leverage
    different sets of fields and there will likely be overlap between the
    fields leveraged by different use cases. And that different use cases may
    care about a given field for different reasons and do different things with
    its content. That does not mean that the field has multiple meanings just
    that its one meaning may serve multiple purposes.

    Cory, please feel free to point out if I am mischaracterizing your intent.

    sean


    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "
    cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org", John
    Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Jason,
    Re: This premise is untrue. Or at least, at the release of STIX 2.0, this
    has to be untrue - otherwise we have fundamentally failed in creating a
    data interchange standard. And I believe that this incongruency is at the
    heart of this whole discussion.

    The count of terms is easily verified, so I assume you think this is
    untrue: may be used for very different use cases that use different
    viewpoints of the data with different root structures

    Consider STIX may be used by one application to produce or consume a list
    of suspect IP addresses, and is hard-coded to that purpose and structure.
    It has been independently suggested that all uses of STIX will be coded.

    Another is coded for “Mitigation Strategies - Coordinated Action Plans -
    Courses of Action - Understanding of Achievable Mitigation Effects”.

    Other than having a common STIX envelope, I would consider these different
    viewpoints of the data with different root structures.

    You could identify dozens of such essentially different exchanges. I’m not
    suggesting this as a failure, only a reality of the domain and scope. Of
    course, there are different approaches to handling such diversity – which
    is part of this conversation.

    -Cory

    From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com]
    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret;
    cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder, John
    A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


    "STIX is several thousand terms and may be used for very different use
    cases that use different viewpoints of the data with different root
    structures."

    This premise is untrue. Or at least, at the release of STIX 2.0, this has
    to be untrue - otherwise we have fundamentally failed in creating a data
    interchange standard. And I believe that this incongruency is at the heart
    of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this
    premise. It is so that when I create a message such as
    "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that
    message without any other context to any recipient on the planet** - and
    the recipient will be able to understand it, because they do not have to
    guess as to what "name", or "id" mean - because they know that I am
    following the "Fooferah 1.0" standard, which explicitly defines what is
    present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security | www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown


    Inactive hide details for Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I
    very much agree. A lot of the “its simple” view oCory Casanave
    ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its
    simple” view of JSON or even early XML is based on its us

    From: Cory Casanave <cory-c@modeldriven.com>
    To: "Barnum, Sean D." <sbarnum@mitre.org>, Terry MacDonald <
    terry.macdonald@gmail.com>, "Jordan, Bret" <bret.jordan@bluecoat.com>
    Cc: "cti-users@lists.oasis-open.org" <cti-users@lists.oasis-open.org>, "
    cti-stix@lists.oasis-open.org" <cti-stix@lists.oasis-open.org>, "Wunder,
    John A." <jwunder@mitre.org>
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-users@lists.oasis-open.org>






    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML
    is based on its use for single and highly structured interactions between
    endpoints controlled by the same authority (My server talking to my android
    application).

    STIX is several thousand terms and may be used for very different use cases
    that use different viewpoints of the data with different root structures.
    On top of this is the need for extensibility and flexibility. This is
    simply the reality of the domain and the scope of STIX. The bad news is
    that regardless of the serialization format, schema language, model,
    language, etc. It is somewhat complex – that is the real and necessary
    complexity. So I am concerned that the “Pure JSON will be simple” view will
    end in some disappointment. Note that the same concerns of complexity are
    levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When
    some of these requirements are folded into XML schema, it adds complexity –
    so perhaps some of these other choices REDUCE complexity even if they
    require some new learning. Where we can add semantic precision software can
    handle some of the load. If we have a way to define fine-tuned “profiles”,
    these may be much simpler for their more limited purpose. We can also make
    the models easier to understand for us humans with graphical models linked
    to semantic definitions.

    I am copying the following list from Shawn Riley to show the variety of
    information formats and viewpoints that we are trying to fit together under
    one, many faceted, schema:

    Below is some of the typical cybersecurity data and information
    users/analysts/scientists have to organize into some type of body of
    knowledge so they understand their cybersecurity ecosystem. If the
    technology can’t understanding the meaning of the data then it’s the humans
    who have to understand it and “connect the dots”.

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture
    - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor
    Personas - Collected Threat Actor Indicators - Threat Actor Attribution -
    Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure
    Impact and Effects - Investigations/cases - Alerting Indicators - Victim
    Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing -
    Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim
    Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action -
    Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational
    Awareness - Action Tasking and Status - Effectiveness Reporting - After
    Action Reporting and Lessons Learned


    From:cti-stix@lists.oasis-open.org [mailto:cti-stix@lists.oasis-open.org]
    On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder,
    John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see
    roughly what the different forms look like but I do not think they would be
    sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would
    likely differ from these simple ones in how each representation tackle size
    and complexity.

    sean

    From: <cti-users@lists.oasis-open.org> on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: "cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org", John
    Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


    +1. Is a nice idea as we can see a size and complexity comparison. Is there
    any chance each person can document the process that the generation took?
    I'm thinking it could be useful to see how complicated the toolchain for
    developing each type of output is.


    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com> wrote:
    I think this is a great idea..

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can
    not be unscrambled is an egg."


    On Oct 2, 2015, at 14:08, Wunder, John A. <
    jwunder@mitre.org> wrote:

    How about we take two of the idioms on the
    stixproject.github.io site?

    -
    http://stixproject.github.io/documentation/idioms/c2-indicator/

    -
    http://stixproject.github.io/documentation/idioms/simple-incident/


    Thanks for helping out. I think it would be nice to
    see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is
    quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift,
    ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50
    AM, Cory Casanave <
    cory-c@modeldriven.com>
    wrote:

    Re: Examples.
    Pick your examples, I can
    help out. Would prefer to
    baseline off of the same
    schema subset & example
    data, current STIX is fine
    to define the examples. I
    suggest at least one that
    is very simple “pure
    hierarchical data” and at
    least one with some related
    entities.
    -Cory


    ---------------------------------------------------------------------
    To unsubscribe from this mail list, you must leave the OASIS TC that
    generates this mail. Follow this link to all your TCs in OASIS at:
    https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
    [attachment "image001.gif" deleted by Jason Keirstead/CanEast/IBM]

    [attachment "graycol.gif" deleted by Jason Keirstead/CanEast/IBM]



  • 13.  Re: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 19:31
    This makes sense - I am just not sure what impact this would have on the data transmission format ? - Jason Keirstead Product Architect, Security Intelligence, IBM Security Systems www.ibm.com/security www.securityintelligence.com Without data, all you are is just another person with an opinion - Unknown "Barnum, Sean D." ---2015/10/06 04:07:24 PM---Jason, I am afraid we are still talking past each other. We absolutely agree with the need to have o From: "Barnum, Sean D." <sbarnum@mitre.org> To: Jason Keirstead/CanEast/IBM@IBMCA Cc: Cory Casanave <cory-c@modeldriven.com>, Terry MacDonald <terry.macdonald@gmail.com>, "Jordan, Bret" <bret.jordan@bluecoat.com>, "cti-users@lists.oasis-open.org" <cti-users@lists.oasis-open.org>, "cti-stix@lists.oasis-open.org" <cti-stix@lists.oasis-open.org>, "Wunder, John A." <jwunder@mitre.org> Date: 2015/10/06 04:07 PM Subject: Re: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Jason, I am afraid we are still talking past each other. We absolutely agree with the need to have one clear and explicit meaning defined for each concept, term and field. We are talking about the fact that there is a difference between what a field “means” and what you might “do” with its instantial content. Using a very simple example let’s assume I send out a STIX indicator associating a particular IP Address to malicious infrastructure. I send it to Party A, Party B and Party C. Everybody (me, A, B and C) all understand what is “meant" by the IP Address field but the different parties may wish to “do” different things with that IP Address field value. Party A might immediately deploy it to their IDS Party B might extract the IP Address from the Indicator and inject it into their SIEM to see what else they might know about that IP Address Party C might take that IP Address and go conduct enrichment activities around geolocation, WHOIS registration info, DNS binding history, etc. The IP Address field “means" the same thing to each party and there is no confusion on what the sender intended it to mean. However, each party will use that information in different ways to support different use cases. This is what we are talking about. Does that make sense? sean From: < cti-users@lists.oasis-open.org > on behalf of Jason Keirstead Date: Tuesday, October 6, 2015 at 1:18 PM To: "Barnum, Sean D." Cc: Cory Casanave, Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ", John Wunder Subject: [cti-users] Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding This is my point exactly... > "And that different use cases may care about a given field for different reasons and do different things with its content. ". This doesn't work. As an example, the word "Angel" means something very different in English than it does in German. Surely this will cause confusion if we use it in an XML tag! But when I send you <angel>fooferah</angel>, it doesn't matter what language we speak, there is no confusion... because we have agreed, codified, and committed that the Fooferah 1.0 standard codifies exactly what the <angel> tag means, and there is no dispute. There is no "do different things with its content". We will all do exactly the same thing with that content - whatever the standard says we are to do with it, because that is what we have agreed on. Malware is Malware is Malware - there is no dispute, or should not be any dispute, what that means. If there is any dispute, then we have to codify the standard around it more, until we all agree on exactly what it is. Why is this important? It is important because if I as an intelligence creator (software A) can't reliably send data to an intelligence consumer (software B) and know **exactly** how it will be interpreted, then products and services will never be inter-operable. If the goal of this endeavor is not to allow products to be able to reliably communicate threat intelligence with each other - then what is it? - Jason Keirstead Product Architect, Security Intelligence, IBM Security Systems www.ibm.com/security www.securityintelligence.com Without data, all you are is just another person with an opinion - Unknown "Barnum, Sean D." ---2015/10/06 01:53:20 PM---I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinte From: "Barnum, Sean D." < sbarnum@mitre.org > To: Cory Casanave < cory-c@modeldriven.com >, Jason Keirstead/CanEast/IBM@IBMCA Cc: Terry MacDonald < terry.macdonald@gmail.com >, "Jordan, Bret" < bret.jordan@bluecoat.com >, " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >, " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org > Date: 2015/10/06 01:53 PM Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Sent by: < cti-stix@lists.oasis-open.org > I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinterpreted what Cory was trying to say. He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes. Cory, please feel free to point out if I am mischaracterizing your intent. sean From: Cory Casanave Date: Tuesday, October 6, 2015 at 10:37 AM To: Jason Keirstead Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ", John Wunder Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Jason, Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion. The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded. Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”. Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures. You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation. -Cory From: Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ] Sent: Tuesday, October 06, 2015 8:26 AM To: Cory Casanave Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org ; cti-stix@lists.oasis-open.org ; Wunder, John A. Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. " This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion. The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields. - Jason Keirstead Product Architect, Security Intelligence, IBM Security Systems www.ibm.com/security www.securityintelligence.com Without data, all you are is just another person with an opinion - Unknown Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us From: Cory Casanave < cory-c@modeldriven.com > To: "Barnum, Sean D." < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >, "Jordan, Bret" < bret.jordan@bluecoat.com > Cc: " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >, " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org > Date: 2015/10/05 09:04 PM Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Sent by: < cti-users@lists.oasis-open.org > Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application). STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard. The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions. I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema: Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”. Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned From: cti-stix@lists.oasis-open.org [ mailto:cti-stix@lists.oasis-open.org ] On Behalf Of Barnum, Sean D. Sent: Monday, October 05, 2015 9:18 AM To: Terry MacDonald; Jordan, Bret Cc: cti-users@lists.oasis-open.org ; cti-stix@lists.oasis-open.org ; Wunder, John A. Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole. These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity. sean From: < cti-users@lists.oasis-open.org > on behalf of Terry MacDonald Date: Friday, October 2, 2015 at 5:51 PM To: "Jordan, Bret" Cc: " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ", John Wunder Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is. Cheers Terry MacDonald On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com > wrote: I think this is a great idea.. Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050 "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg." On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org > wrote: How about we take two of the idioms on the stixproject.github.io site? - http://stixproject.github.io/documentation/idioms/c2-indicator/ - http://stixproject.github.io/documentation/idioms/simple-incident/ Thanks for helping out. I think it would be nice to see these as: - Current STIX XML (Done already) - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too) - JSON/JSON-Schema (Wunder) - JSON-LD (Casanave) - Any others people are interest (PMML, Thrift, ProtoBuf, etc) John On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com > wrote: Re: Examples. Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities. -Cory --------------------------------------------------------------------- To unsubscribe from this mail list, you must leave the OASIS TC that generates this mail. Follow this link to all your TCs in OASIS at: https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php [attachment "image001.gif" deleted by Jason Keirstead/CanEast/IBM] [attachment "graycol.gif" deleted by Jason Keirstead/CanEast/IBM]


  • 14.  Re: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 17:18
    This is my point exactly...
    > " And that different use cases may care about a given field for different reasons and do different things with its content. ". This doesn't work. As an example, the word "Angel" means something very different in English than it does in German. Surely this will cause confusion if we use it in an XML tag! But when I send you <angel>fooferah</angel>, it doesn't matter what language we speak, there is no confusion... because we have agreed, codified, and committed that the Fooferah 1.0 standard codifies exactly what the <angel> tag means, and there is no dispute. There is no "do different things with its content". We will all do exactly the same thing with that content - whatever the standard says we are to do with it, because that is what we have agreed on. Malware is Malware is Malware - there is no dispute, or should not be any dispute, what that means. If there is any dispute, then we have to codify the standard around it more, until we all agree on exactly what it is. Why is this important? It is important because if I as an intelligence creator (software A) can't reliably send data to an intelligence consumer (software B) and know **exactly** how it will be interpreted, then products and services will never be inter-operable. If the goal of this endeavor is not to allow products to be able to reliably communicate threat intelligence with each other - then what is it? - Jason Keirstead Product Architect, Security Intelligence, IBM Security Systems www.ibm.com/security www.securityintelligence.com Without data, all you are is just another person with an opinion - Unknown "Barnum, Sean D." ---2015/10/06 01:53:20 PM---I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinte From: "Barnum, Sean D." <sbarnum@mitre.org> To: Cory Casanave <cory-c@modeldriven.com>, Jason Keirstead/CanEast/IBM@IBMCA Cc: Terry MacDonald <terry.macdonald@gmail.com>, "Jordan, Bret" <bret.jordan@bluecoat.com>, "cti-users@lists.oasis-open.org" <cti-users@lists.oasis-open.org>, "cti-stix@lists.oasis-open.org" <cti-stix@lists.oasis-open.org>, "Wunder, John A." <jwunder@mitre.org> Date: 2015/10/06 01:53 PM Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Sent by: <cti-stix@lists.oasis-open.org> I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinterpreted what Cory was trying to say. He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes. Cory, please feel free to point out if I am mischaracterizing your intent. sean From: Cory Casanave Date: Tuesday, October 6, 2015 at 10:37 AM To: Jason Keirstead Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ", John Wunder Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Jason, Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion. The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded. Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”. Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures. You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation. -Cory From: Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ] Sent: Tuesday, October 06, 2015 8:26 AM To: Cory Casanave Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org ; cti-stix@lists.oasis-open.org ; Wunder, John A. Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. " This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion. The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields. - Jason Keirstead Product Architect, Security Intelligence, IBM Security Systems www.ibm.com/security www.securityintelligence.com Without data, all you are is just another person with an opinion - Unknown Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us From: Cory Casanave < cory-c@modeldriven.com > To: "Barnum, Sean D." < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >, "Jordan, Bret" < bret.jordan@bluecoat.com > Cc: " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >, " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org > Date: 2015/10/05 09:04 PM Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Sent by: < cti-users@lists.oasis-open.org > Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application). STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard. The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions. I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema: Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”. Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned From: cti-stix@lists.oasis-open.org [ mailto:cti-stix@lists.oasis-open.org ] On Behalf Of Barnum, Sean D. Sent: Monday, October 05, 2015 9:18 AM To: Terry MacDonald; Jordan, Bret Cc: cti-users@lists.oasis-open.org ; cti-stix@lists.oasis-open.org ; Wunder, John A. Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole. These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity. sean From: < cti-users@lists.oasis-open.org > on behalf of Terry MacDonald Date: Friday, October 2, 2015 at 5:51 PM To: "Jordan, Bret" Cc: " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ", John Wunder Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is. Cheers Terry MacDonald On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com > wrote: I think this is a great idea.. Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050 "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg." On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org > wrote: How about we take two of the idioms on the stixproject.github.io site? - http://stixproject.github.io/documentation/idioms/c2-indicator/ - http://stixproject.github.io/documentation/idioms/simple-incident/ Thanks for helping out. I think it would be nice to see these as: - Current STIX XML (Done already) - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too) - JSON/JSON-Schema (Wunder) - JSON-LD (Casanave) - Any others people are interest (PMML, Thrift, ProtoBuf, etc) John On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com > wrote: Re: Examples. Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities. -Cory --------------------------------------------------------------------- To unsubscribe from this mail list, you must leave the OASIS TC that generates this mail.  Follow this link to all your TCs in OASIS at: https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php   [attachment "image001.gif" deleted by Jason Keirstead/CanEast/IBM]




  • 15.  RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 17:21
    Yes.
    This is the reason for requirement: 2: That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.

    Which current STIX-XML satisfies.


    From: Barnum, Sean D. [mailto:sbarnum@mitre.org]
    Sent: Tuesday, October 06, 2015 12:53 PM
    To: Cory Casanave; Jason Keirstead
    Cc: Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder, John A.
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.

    Cory, please feel free to point out if I am mischaracterizing your intent.

    sean


    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Jason,
    Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures

    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.

    Another is coded for “Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects”.

    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.

    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.

    -Cory

    From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com]
    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


    "STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures."

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security<http://www.ibm.com/security> | www.securityintelligence.com<http://www.securityintelligence.com>

    Without data, all you are is just another person with an opinion - Unknown


    [Inactive hide details for Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view o]Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>>
    To: "Barnum, Sean D." <sbarnum@mitre.org<mailto:sbarnum@mitre.org>>, Terry MacDonald <terry.macdonald@gmail.com<mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>>
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org<mailto:jwunder@mitre.org>>
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>

    ________________________________



    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From:cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org> [mailto:cti-stix@lists.oasis-open.org] On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.

    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>> wrote:
    I think this is a great idea..

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."
    On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org<mailto:jwunder@mitre.org>> wrote:

    How about we take two of the idioms on the stixproject.github.io<http://stixproject.github.io/> site?

    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>> wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    -Cory






  • 16.  RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 17:22




    Yes.
    This is the reason for requirement:
    2: That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.
     
    Which current STIX-XML satisfies.
     
     


    From: Barnum, Sean D. [mailto:sbarnum@mitre.org]

    Sent: Tuesday, October 06, 2015 12:53 PM
    To: Cory Casanave; Jason Keirstead
    Cc: Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder, John A.
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


     


    I would agree with Cory’s characterizations and assertions here.


    Jason, I think you may have misinterpreted what Cory was trying to say.


    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of
    fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple
    meanings just that its one meaning may serve multiple purposes.


     


    Cory, please feel free to point out if I am mischaracterizing your intent.


     


    sean


     



     


    From:
    Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ", John Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


     



    Jason,
    Re:
    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is
    at the heart of this whole discussion.
     
    The count of terms is easily verified, so I assume you think this is untrue:
    may be used for very different use cases that use different viewpoints of the data with different root structures
     
    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently
    suggested that all uses of STIX will be coded.
     
    Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation
    Effects ”.
     
    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.
     
    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different
    approaches to handling such diversity – which is part of this conversation.
     
    -Cory
     


    From: Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]

    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret;
    cti-users@lists.oasis-open.org ;
    cti-stix@lists.oasis-open.org ; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


     
    " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. "

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is
    at the heart of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message
    without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly
    defines what is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security
    www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown


    Cory
    Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave < cory-c@modeldriven.com >
    To: "Barnum, Sean D." < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >,
    "Jordan, Bret" < bret.jordan@bluecoat.com >
    Cc: " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >,
    " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org >
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: < cti-users@lists.oasis-open.org >








    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority
    (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility
    and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am
    concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices
    REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make
    the models easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from
    Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology
    can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.


    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From: cti-stix@lists.oasis-open.org [ mailto:cti-stix@lists.oasis-open.org ]
    On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org ;
    cti-stix@lists.oasis-open.org ; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity
    as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From:
    < cti-users@lists.oasis-open.org >
    on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: " cti-users@lists.oasis-open.org ",
    " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how
    complicated the toolchain for developing each type of output is.
    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com >
    wrote:
    I think this is a great idea..


    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org >
    wrote:

    How about we take two of the idioms on the
    stixproject.github.io site?

    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com >
    wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very
    simple “pure hierarchical data” and at least one with some related entities.
    -Cory












  • 17.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 17:37
    I will completely and utterly disagree with these requirements. See Jason's post for further understanding. And for the record I completely agree with Jason from IBM.


    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    > On Oct 6, 2015, at 11:21, Cory Casanave <cory-c@modeldriven.com> wrote:
    >
    > Yes.
    > This is the reason for requirement: 2: That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.
    >
    > Which current STIX-XML satisfies.
    >
    >
    > From: Barnum, Sean D. [mailto:sbarnum@mitre.org <mailto:sbarnum@mitre.org>]
    > Sent: Tuesday, October 06, 2015 12:53 PM
    > To: Cory Casanave; Jason Keirstead
    > Cc: Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    > Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > I would agree with Cory’s characterizations and assertions here.
    > Jason, I think you may have misinterpreted what Cory was trying to say.
    > He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.
    >
    > Cory, please feel free to point out if I am mischaracterizing your intent.
    >
    > sean
    >
    >
    > From: Cory Casanave
    > Date: Tuesday, October 6, 2015 at 10:37 AM
    > To: Jason Keirstead
    > Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>", John Wunder
    > Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > Jason,
    > Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.
    >
    > The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures
    >
    > Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.
    >
    > Another is coded for “Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects”.
    >
    > Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.
    >
    > You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.
    >
    > -Cory
    >
    > From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com <mailto:Jason.Keirstead@ca.ibm.com>]
    > Sent: Tuesday, October 06, 2015 8:26 AM
    > To: Cory Casanave
    > Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    > Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > "STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures."
    >
    > This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.
    >
    > The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.
    >
    >
    > -
    > Jason Keirstead
    > Product Architect, Security Intelligence, IBM Security Systems
    > www.ibm.com/security <http://www.ibm.com/security> | www.securityintelligence.com <http://www.securityintelligence.com/>
    >
    > Without data, all you are is just another person with an opinion - Unknown
    >
    >
    > <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us
    >
    > From: Cory Casanave <cory-c@modeldriven.com <mailto:cory-c@modeldriven.com>>
    > To: "Barnum, Sean D." <sbarnum@mitre.org <mailto:sbarnum@mitre.org>>, Terry MacDonald <terry.macdonald@gmail.com <mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com <mailto:bret.jordan@bluecoat.com>>
    > Cc: "cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org <mailto:jwunder@mitre.org>>
    > Date: 2015/10/05 09:04 PM
    > Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    > Sent by: <cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>>
    >
    >
    >
    >
    > Sean,
    > I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).
    >
    > STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.
    >
    > The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.
    >
    > I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:
    >
    > Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.
    >
    > Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies
    >
    > Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information
    >
    > Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information
    >
    > Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators
    >
    > Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information
    >
    > Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects
    >
    > Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned
    >
    >
    > From:cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org> [mailto:cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>] On Behalf Of Barnum, Sean D.
    > Sent: Monday, October 05, 2015 9:18 AM
    > To: Terry MacDonald; Jordan, Bret
    > Cc: cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    > Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    > These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.
    >
    > sean
    >
    > From: <cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald
    > Date: Friday, October 2, 2015 at 5:51 PM
    > To: "Jordan, Bret"
    > Cc: "cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>", John Wunder
    > Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    > +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.
    >
    > Cheers
    > Terry MacDonald
    > On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com <mailto:bret.jordan@bluecoat.com>> wrote:
    > I think this is a great idea..
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > Bret Jordan CISSP
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."
    >
    > On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org <mailto:jwunder@mitre.org>> wrote:
    >
    > How about we take two of the idioms on the stixproject.github.io <http://stixproject.github.io/> site?
    >
    > - http://stixproject.github.io/documentation/idioms/c2-indicator/ <http://stixproject.github.io/documentation/idioms/c2-indicator/>
    > - http://stixproject.github.io/documentation/idioms/simple-incident/ <http://stixproject.github.io/documentation/idioms/simple-incident/>
    >
    > Thanks for helping out. I think it would be nice to see these as:
    >
    > - Current STIX XML (Done already)
    > - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    > - JSON/JSON-Schema (Wunder)
    > - JSON-LD (Casanave)
    > - Any others people are interest (PMML, Thrift, ProtoBuf, etc)
    >
    > John
    > On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com <mailto:cory-c@modeldriven.com>> wrote:
    >
    > Re: Examples.
    > Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    > -Cory




  • 18.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 17:37
    I will completely and utterly disagree with these requirements.  See Jason's post for further understanding.  And for the record I completely agree with Jason from IBM.    Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447  F2C0 74F8 ACAE 7415 0050 Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg.   On Oct 6, 2015, at 11:21, Cory Casanave < cory-c@modeldriven.com > wrote: Yes. This is the reason for requirement:   2: That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.   Which current STIX-XML satisfies.     From:   Barnum, Sean D. [ mailto:sbarnum@mitre.org ]   Sent:   Tuesday, October 06, 2015 12:53 PM To:   Cory Casanave; Jason Keirstead Cc:   Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinterpreted what Cory was trying to say. He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.   Cory, please feel free to point out if I am mischaracterizing your intent.   sean     From:   Cory Casanave Date:   Tuesday, October 6, 2015 at 10:37 AM To:   Jason Keirstead Cc:   Barnum, Sean D. , Terry MacDonald, Jordan, Bret , cti-users@lists.oasis-open.org , cti-stix@lists.oasis-open.org , John Wunder Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   Jason, Re:   This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.   The count of terms is easily verified, so I assume you think this is untrue:   may be used for very different use cases that use different viewpoints of the data with different root structures   Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.   Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”.   Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.   You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.   -Cory   From:   Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]   Sent:   Tuesday, October 06, 2015 8:26 AM To:   Cory Casanave Cc:   Barnum, Sean D.; Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion. The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as <foofarah><name>foo</name><id>bar</id></foofarah> , **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what name , or id mean - because they know that I am following the Fooferah 1.0 standard, which explicitly defines what is present in those fields. - Jason Keirstead Product Architect, Security Intelligence, IBM Security Systems www.ibm.com/security     www.securityintelligence.com Without data, all you are is just another person with an opinion - Unknown   <image001.gif> Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us From:   Cory Casanave < cory-c@modeldriven.com > To:   Barnum, Sean D. < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >, Jordan, Bret < bret.jordan@bluecoat.com > Cc:   cti-users@lists.oasis-open.org < cti-users@lists.oasis-open.org >, cti-stix@lists.oasis-open.org < cti-stix@lists.oasis-open.org >, Wunder, John A. < jwunder@mitre.org > Date:   2015/10/05 09:04 PM Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Sent by:   < cti-users@lists.oasis-open.org > Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application). STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard. The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions. I am copying the following list from   Shawn Riley   to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema: Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.   Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned From: cti-stix@lists.oasis-open.org   [ mailto:cti-stix@lists.oasis-open.org ]   On Behalf Of   Barnum, Sean D. Sent:   Monday, October 05, 2015 9:18 AM To:   Terry MacDonald; Jordan, Bret Cc:   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole. These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity. sean From:   < cti-users@lists.oasis-open.org > on behalf of Terry MacDonald Date:   Friday, October 2, 2015 at 5:51 PM To:   Jordan, Bret Cc:   cti-users@lists.oasis-open.org , cti-stix@lists.oasis-open.org , John Wunder Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is. Cheers Terry MacDonald On 3 Oct 2015 6:33 am, Jordan, Bret < bret.jordan@bluecoat.com > wrote: I think this is a great idea..   Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050 Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg. On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org > wrote: How about we take two of the idioms on the   stixproject.github.io   site? -   http://stixproject.github.io/documentation/idioms/c2-indicator/ -   http://stixproject.github.io/documentation/idioms/simple-incident/ Thanks for helping out. I think it would be nice to see these as: - Current STIX XML (Done already) - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too) - JSON/JSON-Schema (Wunder) - JSON-LD (Casanave) - Any others people are interest (PMML, Thrift, ProtoBuf, etc) John On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com > wrote: Re: Examples. Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities. -Cory Attachment: signature.asc Description: Message signed with OpenPGP using GPGMail


  • 19.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:13
    I just talked to Sean on the phone (as you may have noticed we’re coming from different sides here) and wanted to bring up a few points here:

    - We all agree there will be a high-level model
    - We all agree that there will be at least one “binding” of that model to a format on the wire

    There’s middle layer there: how do you map fields between that high-level model and the format on the wire? Let’s imagine three approaches:

    a) The JSON-LD / RDF approach has explicit linkages directly between the high-level model and the on-the-wire format.
    b) JSON-Schema would be similar to what we’ve done with XML schema…defining some rules for how that works and a binding specification that describes it.
    c) “Raw” JSON, without a schema, does not have that binding. That said, I don’t think Bret (or myself, or the other people in favor of JSON) are saying we should do schema-less JSON. We’re saying we should develop a JSON-Schema binding similar to how we have an XML-Schema binding now.

    Looking at the requirements:
    #1. Satisfied by "a" and “b"
    #2. This requirement specifies an approach (“exchange data reference its definitions”) plus a requirement (“every tag may be deterministically be bound to its definition”). JSON-schema would not require that exchange data reference definitions (IMO not a requirement) but does allow you to deterministically bind data to its definition. JSON-LD does both, XML schema (depending on whether you use schemaLocation) can do either one or both. Raw JSON does not do this.
    #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2. STIX 1.2 tools are doing this now, so I don’t think you can assert that it doesn’t meet this requirement. STIX defines @id and @idref and how they should work to meet this requirement, so although it doesn’t use something like XLink it does work. Similarly, you could do the same think in JSONSchema. Heck, you could even use the same exact field names and URIs as you do in JSON-LD. So, both meet this requirement.
    #4. I think this is a balancing act…leveraging every single existing standard might not always be the best approach. If existing standards are overly complex (maybe they do more than we need) then we should invent our own simpler way of doing things. JSON-LD is more “standard”, but if it adds a lot of complexity that makes STIX harder to use then it might not be worth it.
    #5. I agree with this as a general statement and I would say it really comes down more to model definition than specific bindings. That said, to me, JSON-LD seems to make it more complex to do simple things (extra fields, need to understand JSON-LD in addition to JSON, etc), but perhaps as we do more complex things that complexity becomes useful.

    Given this, I would like to cut out choice (c). Let’s agree that we need to either leverage JSON-LD or define JSONSchemas.

    I looked into JSON-LD a bit and see the following advantages (as compared to JSON-Schema / JSON):

    - Standard approach to ID, Type, and links might be nice to leverage
    - If we get to an approach where things are defined in RDF it’s easier to generate JSON-LD-compatible schemas than JSONSchema schemas
    - Perhaps better integration with other data models, though those data models are of varying quality (many use XSD datatypes, which would suck to do in JSON)

    I also see some disadvantages:

    - Larger conceptual burden to understand than pure JSON…JSON people can understand JSONSchema because they understand JSON, but hunting down and understanding the JSON-LD schemas from schema.org<http://schema.org> has been challenging for me.
    - I’m concerned about how open the types seem to be and how it relies on producers telling consumers what to expect. As a consumer, I want to know what I’m getting and I worry that some of the things you can do in JSON-LD make that difficult. Essentially, I worry that consumers will have to do a lot of work “revalidating” data because JSON-LD lets you be so open about type definitions and extensions. For example, I’m a STIX consumer and get some data: how do I validate that it actually is vanilla STIX and not some weird extension that the producer created? Producers can even send type definitions inline, which means they could potentially redefine things at that level. This flexibility could be a bad thing for scenarios where we want to lock down the exchanges.

    I think a few things would help:
    - Examples of STIX content encoded in JSON-LD. I was actually going to put this together but couldn’t figure out how to define the schemas so gave up.
    - Examples of another community that collaborated on defining these schemas and now uses it for exchange. I saw a lot of examples of one-offs (Google using it for Gmail, where Google is the only consumer) but not a lot where you have validated P2P exchanges based on schemas the community agreed to.

    I hope this helps focus the discussion.

    John

    On Oct 6, 2015, at 1:37 PM, Jordan, Bret <bret.jordan@BLUECOAT.COM<mailto:bret.jordan@BLUECOAT.COM>> wrote:

    I will completely and utterly disagree with these requirements. See Jason's post for further understanding. And for the record I completely agree with Jason from IBM.


    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 6, 2015, at 11:21, Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>> wrote:

    Yes.
    This is the reason for requirement: 2: That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.

    Which current STIX-XML satisfies.


    From: Barnum, Sean D. [mailto:sbarnum@mitre.org]
    Sent: Tuesday, October 06, 2015 12:53 PM
    To: Cory Casanave; Jason Keirstead
    Cc: Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.

    Cory, please feel free to point out if I am mischaracterizing your intent.

    sean


    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Jason,
    Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures

    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.

    Another is coded for “Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects”.

    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.

    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.

    -Cory

    From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com]
    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding


    "STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures."

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security<http://www.ibm.com/security> | www.securityintelligence.com<http://www.securityintelligence.com/>

    Without data, all you are is just another person with an opinion - Unknown


    <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>>
    To: "Barnum, Sean D." <sbarnum@mitre.org<mailto:sbarnum@mitre.org>>, Terry MacDonald <terry.macdonald@gmail.com<mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>>
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org<mailto:jwunder@mitre.org>>
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>

    ________________________________



    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From:cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org> [mailto:cti-stix@lists.oasis-open.org] On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.

    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>> wrote:
    I think this is a great idea..

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org<mailto:jwunder@mitre.org>> wrote:

    How about we take two of the idioms on the stixproject.github.io<http://stixproject.github.io/> site?

    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>> wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    -Cory





  • 20.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:13



    I just talked to Sean on the phone (as you may have noticed we’re coming from different sides here) and wanted to bring up a few points here:


    - We all agree there will be a high-level model
    - We all agree that there will be at least one “binding” of that model to a format on the wire


    There’s middle layer there: how do you map fields between that high-level model and the format on the wire? Let’s imagine three approaches:


    a) The JSON-LD / RDF approach has explicit linkages directly between the high-level model and the on-the-wire format.
    b) JSON-Schema would be similar to what we’ve done with XML schema…defining some rules for how that works and a binding specification that describes it.
    c) “Raw” JSON, without a schema, does not have that binding. That said, I don’t think Bret (or myself, or the other people in favor of JSON) are saying we should do schema-less JSON. We’re saying we should develop a JSON-Schema binding similar
    to how we have an XML-Schema binding now.


    Looking at the requirements:
    #1. Satisfied by "a" and “b"
    #2. This requirement specifies an approach (“exchange data reference its definitions”) plus a requirement (“every tag may be deterministically be bound to its definition”). JSON-schema would not require that exchange data reference definitions
    (IMO not a requirement) but does allow you to deterministically bind data to its definition. JSON-LD does both, XML schema (depending on whether you use schemaLocation) can do either one or both. Raw JSON does not do this.
    #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2. STIX 1.2 tools are doing this now, so I don’t think you can assert that it doesn’t meet this requirement. STIX defines @id and @idref and how they should work to meet this
    requirement, so although it doesn’t use something like XLink it does work. Similarly, you could do the same think in JSONSchema. Heck, you could even use the same exact field names and URIs as you do in JSON-LD. So, both meet this requirement.
    #4. I think this is a balancing act…leveraging every single existing standard might not always be the best approach. If existing standards are overly complex (maybe they do more than we need) then we should invent our own simpler way of doing
    things. JSON-LD is more “standard”, but if it adds a lot of complexity that makes STIX harder to use then it might not be worth it.
    #5. I agree with this as a general statement and I would say it really comes down more to model definition than specific bindings. That said, to me, JSON-LD seems to make it more complex to do simple things (extra fields, need to understand JSON-LD
    in addition to JSON, etc), but perhaps as we do more complex things that complexity becomes useful.


    Given this, I would like to cut out choice (c). Let’s agree that we need to either leverage JSON-LD or define JSONSchemas.


    I looked into JSON-LD a bit and see the following advantages (as compared to JSON-Schema / JSON):


    - Standard approach to ID, Type, and links might be nice to leverage
    - If we get to an approach where things are defined in RDF it’s easier to generate JSON-LD-compatible schemas than JSONSchema schemas
    - Perhaps better integration with other data models, though those data models are of varying quality (many use XSD datatypes, which would suck to do in JSON)


    I also see some disadvantages:


    - Larger conceptual burden to understand than pure JSON…JSON people can understand JSONSchema because they understand JSON, but hunting down and understanding the JSON-LD schemas from
    schema.org  has been challenging for me.
    - I’m concerned about how open the types seem to be and how it relies on producers telling consumers what to expect. As a consumer, I want to know what I’m getting and I worry that some of the things you can do in JSON-LD make that difficult.
    Essentially, I worry that consumers will have to do a lot of work “revalidating” data because JSON-LD lets you be so open about type definitions and extensions. For example, I’m a STIX consumer and get some data: how do I validate that it actually is vanilla
    STIX and not some weird extension that the producer created? Producers can even send type definitions inline, which means they could potentially redefine things at that level. This flexibility could be a bad thing for scenarios where we want to lock down the
    exchanges.


    I think a few things would help:
    - Examples of STIX content encoded in JSON-LD. I was actually going to put this together but couldn’t figure out how to define the schemas so gave up.
    - Examples of another community that collaborated on defining these schemas and now uses it for exchange. I saw a lot of examples of one-offs (Google using it for Gmail, where Google is the only consumer) but not a lot where you have validated
    P2P exchanges based on schemas the community agreed to.


    I hope this helps focus the discussion.


    John



    On Oct 6, 2015, at 1:37 PM, Jordan, Bret < bret.jordan@BLUECOAT.COM > wrote:



    I will completely and utterly disagree with these requirements.  See Jason's post for further understanding.  And for the record I completely agree with Jason from IBM.   











    Thanks,


    Bret











    Bret Jordan CISSP

    Director of Security Architecture and Standards Office of the CTO

    Blue Coat Systems

    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447  F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg." 











    On Oct 6, 2015, at 11:21, Cory Casanave < cory-c@modeldriven.com > wrote:




    Yes.

    This is the reason for requirement:   2:
    That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.

     

    Which current STIX-XML satisfies.

     

     



    From:   Barnum, Sean D. [ mailto:sbarnum@mitre.org ]  
    Sent:   Tuesday, October 06, 2015 12:53 PM
    To:   Cory Casanave; Jason Keirstead
    Cc:   Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ;
    Wunder, John A.
    Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding



     



    I would agree with Cory’s characterizations and assertions here.



    Jason, I think you may have misinterpreted what Cory was trying to say.



    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will
    likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that
    its one meaning may serve multiple purposes.



     



    Cory, please feel free to point out if I am mischaracterizing your intent.



     



    sean



     




     



    From:   Cory Casanave
    Date:   Tuesday, October 6, 2015 at 10:37 AM
    To:   Jason Keirstead
    Cc:   "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ",
    " cti-stix@lists.oasis-open.org ", John Wunder
    Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding



     




    Jason,

    Re:   This premise is untrue. Or at least, at the release of STIX 2.0,
    this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

     

    The count of terms is easily verified, so I assume you think this is untrue:   may
    be used for very different use cases that use different viewpoints of the data with different root structures

     

    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested
    that all uses of STIX will be coded.

     

    Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation
    Effects ”.

     

    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.

     

    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different
    approaches to handling such diversity – which is part of this conversation.

     

    -Cory

     



    From:   Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]  
    Sent:   Tuesday, October 06, 2015 8:26 AM
    To:   Cory Casanave
    Cc:   Barnum, Sean D.; Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ;
    Wunder, John A.
    Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding



     

    " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. "

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is
    at the heart of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message
    without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly
    defines what is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security     www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown  


    <image001.gif> Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is
    based on its us

    From:   Cory Casanave < cory-c@modeldriven.com >
    To:   "Barnum, Sean D." < sbarnum@mitre.org >,
    Terry MacDonald < terry.macdonald@gmail.com >, "Jordan, Bret" < bret.jordan@bluecoat.com >
    Cc:   " cti-users@lists.oasis-open.org "
    < cti-users@lists.oasis-open.org >, " cti-stix@lists.oasis-open.org "
    < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org >
    Date:   2015/10/05 09:04 PM
    Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by:   < cti-users@lists.oasis-open.org >










    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled
    by the same authority (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is
    the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary
    complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of
    these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose.
    We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from   Shawn Riley   to
    show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology
    can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.  

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From: cti-stix@lists.oasis-open.org   [ mailto:cti-stix@lists.oasis-open.org ]   On
    Behalf Of   Barnum, Sean D.
    Sent:   Monday, October 05, 2015 9:18 AM
    To:   Terry MacDonald; Jordan, Bret
    Cc:   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ;
    Wunder, John A.
    Subject:   [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as
    a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From:   < cti-users@lists.oasis-open.org >
    on behalf of Terry MacDonald
    Date:   Friday, October 2, 2015 at 5:51 PM
    To:   "Jordan, Bret"
    Cc:   " cti-users@lists.oasis-open.org ",
    " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated
    the toolchain for developing each type of output is.

    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com >
    wrote:
    I think this is a great idea..  

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org >
    wrote:

    How about we take two of the idioms on the   stixproject.github.io   site?

    -   http://stixproject.github.io/documentation/idioms/c2-indicator/
    -   http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John

    On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com >
    wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least
    one that is very simple “pure hierarchical data” and at least one with some related entities.
    -Cory


















  • 21.  Re: [cti-stix] [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 19:06
    Yes, I am advocating (b), that we do JSON with JSON Schema, so for those people that want to do validation they can. This is what we did with TAXII when we wrote the TAXII JSON specification and it worked well. So I suggest we learn from TAXII land.

    The fact that John and others have tried working with JSON-LD and could not get it working so they "gave up", is a good indicator that a lot of developers in the world will have the same issue.

    The reality is JSON with JSON schema, if we could decide today, would enable lot of groups, companies, vendors, developers, to start writing software and tools to support a STIX version of CTI instead of YACS. This is what we desperately need. Adoption.... We need more people and more vendors doing things with STIX and CybOX beyond what we have today.

    At our current rate I wonder when Facebook's ThreatExchange will catch up to STIX in adoption?

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    > On Oct 6, 2015, at 12:12, Wunder, John A. <jwunder@mitre.org> wrote:
    >
    > I just talked to Sean on the phone (as you may have noticed we’re coming from different sides here) and wanted to bring up a few points here:
    >
    > - We all agree there will be a high-level model
    > - We all agree that there will be at least one “binding” of that model to a format on the wire
    >
    > There’s middle layer there: how do you map fields between that high-level model and the format on the wire? Let’s imagine three approaches:
    >
    > a) The JSON-LD / RDF approach has explicit linkages directly between the high-level model and the on-the-wire format.
    > b) JSON-Schema would be similar to what we’ve done with XML schema…defining some rules for how that works and a binding specification that describes it.
    > c) “Raw” JSON, without a schema, does not have that binding. That said, I don’t think Bret (or myself, or the other people in favor of JSON) are saying we should do schema-less JSON. We’re saying we should develop a JSON-Schema binding similar to how we have an XML-Schema binding now.
    >
    > Looking at the requirements:
    > #1. Satisfied by "a" and “b"
    > #2. This requirement specifies an approach (“exchange data reference its definitions”) plus a requirement (“every tag may be deterministically be bound to its definition”). JSON-schema would not require that exchange data reference definitions (IMO not a requirement) but does allow you to deterministically bind data to its definition. JSON-LD does both, XML schema (depending on whether you use schemaLocation) can do either one or both. Raw JSON does not do this.
    > #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2. STIX 1.2 tools are doing this now, so I don’t think you can assert that it doesn’t meet this requirement. STIX defines @id and @idref and how they should work to meet this requirement, so although it doesn’t use something like XLink it does work. Similarly, you could do the same think in JSONSchema. Heck, you could even use the same exact field names and URIs as you do in JSON-LD. So, both meet this requirement.
    > #4. I think this is a balancing act…leveraging every single existing standard might not always be the best approach. If existing standards are overly complex (maybe they do more than we need) then we should invent our own simpler way of doing things. JSON-LD is more “standard”, but if it adds a lot of complexity that makes STIX harder to use then it might not be worth it.
    > #5. I agree with this as a general statement and I would say it really comes down more to model definition than specific bindings. That said, to me, JSON-LD seems to make it more complex to do simple things (extra fields, need to understand JSON-LD in addition to JSON, etc), but perhaps as we do more complex things that complexity becomes useful.
    >
    > Given this, I would like to cut out choice (c). Let’s agree that we need to either leverage JSON-LD or define JSONSchemas.
    >
    > I looked into JSON-LD a bit and see the following advantages (as compared to JSON-Schema / JSON):
    >
    > - Standard approach to ID, Type, and links might be nice to leverage
    > - If we get to an approach where things are defined in RDF it’s easier to generate JSON-LD-compatible schemas than JSONSchema schemas
    > - Perhaps better integration with other data models, though those data models are of varying quality (many use XSD datatypes, which would suck to do in JSON)
    >
    > I also see some disadvantages:
    >
    > - Larger conceptual burden to understand than pure JSON…JSON people can understand JSONSchema because they understand JSON, but hunting down and understanding the JSON-LD schemas from schema.org <http://schema.org/> has been challenging for me.
    > - I’m concerned about how open the types seem to be and how it relies on producers telling consumers what to expect. As a consumer, I want to know what I’m getting and I worry that some of the things you can do in JSON-LD make that difficult. Essentially, I worry that consumers will have to do a lot of work “revalidating” data because JSON-LD lets you be so open about type definitions and extensions. For example, I’m a STIX consumer and get some data: how do I validate that it actually is vanilla STIX and not some weird extension that the producer created? Producers can even send type definitions inline, which means they could potentially redefine things at that level. This flexibility could be a bad thing for scenarios where we want to lock down the exchanges.
    >
    > I think a few things would help:
    > - Examples of STIX content encoded in JSON-LD. I was actually going to put this together but couldn’t figure out how to define the schemas so gave up.
    > - Examples of another community that collaborated on defining these schemas and now uses it for exchange. I saw a lot of examples of one-offs (Google using it for Gmail, where Google is the only consumer) but not a lot where you have validated P2P exchanges based on schemas the community agreed to.
    >
    > I hope this helps focus the discussion.
    >
    > John
    >
    >> On Oct 6, 2015, at 1:37 PM, Jordan, Bret <bret.jordan@BLUECOAT.COM <mailto:bret.jordan@BLUECOAT.COM>> wrote:
    >>
    >> I will completely and utterly disagree with these requirements. See Jason's post for further understanding. And for the record I completely agree with Jason from IBM.
    >>
    >>
    >> Thanks,
    >>
    >> Bret
    >>
    >>
    >>
    >> Bret Jordan CISSP
    >> Director of Security Architecture and Standards | Office of the CTO
    >> Blue Coat Systems
    >> PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >> "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."
    >>
    >>> On Oct 6, 2015, at 11:21, Cory Casanave <cory-c@modeldriven.com <mailto:cory-c@modeldriven.com>> wrote:
    >>>
    >>> Yes.
    >>> This is the reason for requirement: 2: That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.
    >>>
    >>> Which current STIX-XML satisfies.
    >>>
    >>>
    >>> From: Barnum, Sean D. [mailto:sbarnum@mitre.org <mailto:sbarnum@mitre.org>]
    >>> Sent: Tuesday, October 06, 2015 12:53 PM
    >>> To: Cory Casanave; Jason Keirstead
    >>> Cc: Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    >>> Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>>
    >>> I would agree with Cory’s characterizations and assertions here.
    >>> Jason, I think you may have misinterpreted what Cory was trying to say.
    >>> He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.
    >>>
    >>> Cory, please feel free to point out if I am mischaracterizing your intent.
    >>>
    >>> sean
    >>>
    >>>
    >>> From: Cory Casanave
    >>> Date: Tuesday, October 6, 2015 at 10:37 AM
    >>> To: Jason Keirstead
    >>> Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>", John Wunder
    >>> Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>>
    >>> Jason,
    >>> Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.
    >>>
    >>> The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures
    >>>
    >>> Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.
    >>>
    >>> Another is coded for “Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects”.
    >>>
    >>> Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.
    >>>
    >>> You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.
    >>>
    >>> -Cory
    >>>
    >>> From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com <mailto:Jason.Keirstead@ca.ibm.com>]
    >>> Sent: Tuesday, October 06, 2015 8:26 AM
    >>> To: Cory Casanave
    >>> Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    >>> Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>>
    >>> "STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures."
    >>>
    >>> This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.
    >>>
    >>> The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.
    >>>
    >>>
    >>> -
    >>> Jason Keirstead
    >>> Product Architect, Security Intelligence, IBM Security Systems
    >>> www.ibm.com/security <http://www.ibm.com/security> | www.securityintelligence.com <http://www.securityintelligence.com/>
    >>>
    >>> Without data, all you are is just another person with an opinion - Unknown
    >>>
    >>>
    >>> <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us
    >>>
    >>> From: Cory Casanave <cory-c@modeldriven.com <mailto:cory-c@modeldriven.com>>
    >>> To: "Barnum, Sean D." <sbarnum@mitre.org <mailto:sbarnum@mitre.org>>, Terry MacDonald <terry.macdonald@gmail.com <mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com <mailto:bret.jordan@bluecoat.com>>
    >>> Cc: "cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org <mailto:jwunder@mitre.org>>
    >>> Date: 2015/10/05 09:04 PM
    >>> Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>> Sent by: <cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>>
    >>>
    >>>
    >>>
    >>>
    >>> Sean,
    >>> I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).
    >>>
    >>> STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.
    >>>
    >>> The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.
    >>>
    >>> I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:
    >>>
    >>> Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.
    >>>
    >>> Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies
    >>>
    >>> Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information
    >>>
    >>> Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information
    >>>
    >>> Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators
    >>>
    >>> Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information
    >>>
    >>> Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects
    >>>
    >>> Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned
    >>>
    >>>
    >>> From:cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org> [mailto:cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>] On Behalf Of Barnum, Sean D.
    >>> Sent: Monday, October 05, 2015 9:18 AM
    >>> To: Terry MacDonald; Jordan, Bret
    >>> Cc: cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    >>> Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>>
    >>> I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    >>> These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.
    >>>
    >>> sean
    >>>
    >>> From: <cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald
    >>> Date: Friday, October 2, 2015 at 5:51 PM
    >>> To: "Jordan, Bret"
    >>> Cc: "cti-users@lists.oasis-open.org <mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org <mailto:cti-stix@lists.oasis-open.org>", John Wunder
    >>> Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>> +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.
    >>>
    >>> Cheers
    >>> Terry MacDonald
    >>> On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com <mailto:bret.jordan@bluecoat.com>> wrote:
    >>> I think this is a great idea..
    >>>
    >>> Thanks,
    >>>
    >>> Bret
    >>>
    >>>
    >>>
    >>> Bret Jordan CISSP
    >>> Director of Security Architecture and Standards | Office of the CTO
    >>> Blue Coat Systems
    >>> PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >>> "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."
    >>>
    >>> On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org <mailto:jwunder@mitre.org>> wrote:
    >>>
    >>> How about we take two of the idioms on the stixproject.github.io <http://stixproject.github.io/> site?
    >>>
    >>> - http://stixproject.github.io/documentation/idioms/c2-indicator/ <http://stixproject.github.io/documentation/idioms/c2-indicator/>
    >>> - http://stixproject.github.io/documentation/idioms/simple-incident/ <http://stixproject.github.io/documentation/idioms/simple-incident/>
    >>>
    >>> Thanks for helping out. I think it would be nice to see these as:
    >>>
    >>> - Current STIX XML (Done already)
    >>> - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    >>> - JSON/JSON-Schema (Wunder)
    >>> - JSON-LD (Casanave)
    >>> - Any others people are interest (PMML, Thrift, ProtoBuf, etc)
    >>>
    >>> John
    >>> On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com <mailto:cory-c@modeldriven.com>> wrote:
    >>>
    >>> Re: Examples.
    >>> Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    >>> -Cory
    >>
    >




  • 22.  Re: [cti-stix] [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 19:06
    Yes, I am advocating (b), that we do JSON with JSON Schema, so for those people that want to do validation they can.  This is what we did with TAXII when we wrote the TAXII JSON specification and it worked well.  So I suggest we learn from TAXII land. The fact that John and others have tried working with JSON-LD and could not get it working so they gave up , is a good indicator that a lot of developers in the world will have the same issue. The reality is JSON with JSON schema, if we could decide today, would enable lot of groups, companies, vendors, developers, to start writing software and tools to support a STIX version of CTI instead of YACS.  This is what we desperately need.  Adoption....  We need more people and more vendors doing things with STIX and CybOX beyond what we have today.   At our current rate I wonder when Facebook's ThreatExchange will catch up to STIX in adoption?    Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447  F2C0 74F8 ACAE 7415 0050 Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg.   On Oct 6, 2015, at 12:12, Wunder, John A. < jwunder@mitre.org > wrote: I just talked to Sean on the phone (as you may have noticed we’re coming from different sides here) and wanted to bring up a few points here: - We all agree there will be a high-level model - We all agree that there will be at least one “binding” of that model to a format on the wire There’s middle layer there: how do you map fields between that high-level model and the format on the wire? Let’s imagine three approaches: a) The JSON-LD / RDF approach has explicit linkages directly between the high-level model and the on-the-wire format. b) JSON-Schema would be similar to what we’ve done with XML schema…defining some rules for how that works and a binding specification that describes it. c) “Raw” JSON, without a schema, does not have that binding. That said, I don’t think Bret (or myself, or the other people in favor of JSON) are saying we should do schema-less JSON. We’re saying we should develop a JSON-Schema binding similar to how we have an XML-Schema binding now. Looking at the requirements: #1. Satisfied by a and “b #2. This requirement specifies an approach (“exchange data reference its definitions”) plus a requirement (“every tag may be deterministically be bound to its definition”). JSON-schema would not require that exchange data reference definitions (IMO not a requirement) but does allow you to deterministically bind data to its definition. JSON-LD does both, XML schema (depending on whether you use schemaLocation) can do either one or both. Raw JSON does not do this. #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2. STIX 1.2 tools are doing this now, so I don’t think you can assert that it doesn’t meet this requirement. STIX defines @id and @idref and how they should work to meet this requirement, so although it doesn’t use something like XLink it does work. Similarly, you could do the same think in JSONSchema. Heck, you could even use the same exact field names and URIs as you do in JSON-LD. So, both meet this requirement. #4. I think this is a balancing act…leveraging every single existing standard might not always be the best approach. If existing standards are overly complex (maybe they do more than we need) then we should invent our own simpler way of doing things. JSON-LD is more “standard”, but if it adds a lot of complexity that makes STIX harder to use then it might not be worth it. #5. I agree with this as a general statement and I would say it really comes down more to model definition than specific bindings. That said, to me, JSON-LD seems to make it more complex to do simple things (extra fields, need to understand JSON-LD in addition to JSON, etc), but perhaps as we do more complex things that complexity becomes useful. Given this, I would like to cut out choice (c). Let’s agree that we need to either leverage JSON-LD or define JSONSchemas. I looked into JSON-LD a bit and see the following advantages (as compared to JSON-Schema / JSON): - Standard approach to ID, Type, and links might be nice to leverage - If we get to an approach where things are defined in RDF it’s easier to generate JSON-LD-compatible schemas than JSONSchema schemas - Perhaps better integration with other data models, though those data models are of varying quality (many use XSD datatypes, which would suck to do in JSON) I also see some disadvantages: - Larger conceptual burden to understand than pure JSON…JSON people can understand JSONSchema because they understand JSON, but hunting down and understanding the JSON-LD schemas from schema.org  has been challenging for me. - I’m concerned about how open the types seem to be and how it relies on producers telling consumers what to expect. As a consumer, I want to know what I’m getting and I worry that some of the things you can do in JSON-LD make that difficult. Essentially, I worry that consumers will have to do a lot of work “revalidating” data because JSON-LD lets you be so open about type definitions and extensions. For example, I’m a STIX consumer and get some data: how do I validate that it actually is vanilla STIX and not some weird extension that the producer created? Producers can even send type definitions inline, which means they could potentially redefine things at that level. This flexibility could be a bad thing for scenarios where we want to lock down the exchanges. I think a few things would help: - Examples of STIX content encoded in JSON-LD. I was actually going to put this together but couldn’t figure out how to define the schemas so gave up. - Examples of another community that collaborated on defining these schemas and now uses it for exchange. I saw a lot of examples of one-offs (Google using it for Gmail, where Google is the only consumer) but not a lot where you have validated P2P exchanges based on schemas the community agreed to. I hope this helps focus the discussion. John On Oct 6, 2015, at 1:37 PM, Jordan, Bret < bret.jordan@BLUECOAT.COM > wrote: I will completely and utterly disagree with these requirements.  See Jason's post for further understanding.  And for the record I completely agree with Jason from IBM.    Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447  F2C0 74F8 ACAE 7415 0050 Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg.   On Oct 6, 2015, at 11:21, Cory Casanave < cory-c@modeldriven.com > wrote: Yes. This is the reason for requirement:   2: That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.   Which current STIX-XML satisfies.     From:   Barnum, Sean D. [ mailto:sbarnum@mitre.org ]   Sent:   Tuesday, October 06, 2015 12:53 PM To:   Cory Casanave; Jason Keirstead Cc:   Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinterpreted what Cory was trying to say. He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.   Cory, please feel free to point out if I am mischaracterizing your intent.   sean     From:   Cory Casanave Date:   Tuesday, October 6, 2015 at 10:37 AM To:   Jason Keirstead Cc:   Barnum, Sean D. , Terry MacDonald, Jordan, Bret , cti-users@lists.oasis-open.org , cti-stix@lists.oasis-open.org , John Wunder Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   Jason, Re:   This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.   The count of terms is easily verified, so I assume you think this is untrue:   may be used for very different use cases that use different viewpoints of the data with different root structures   Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.   Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”.   Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.   You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.   -Cory   From:   Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]   Sent:   Tuesday, October 06, 2015 8:26 AM To:   Cory Casanave Cc:   Barnum, Sean D.; Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion. The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as <foofarah><name>foo</name><id>bar</id></foofarah> , **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what name , or id mean - because they know that I am following the Fooferah 1.0 standard, which explicitly defines what is present in those fields. - Jason Keirstead Product Architect, Security Intelligence, IBM Security Systems www.ibm.com/security     www.securityintelligence.com Without data, all you are is just another person with an opinion - Unknown   <image001.gif> Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us From:   Cory Casanave < cory-c@modeldriven.com > To:   Barnum, Sean D. < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >, Jordan, Bret < bret.jordan@bluecoat.com > Cc:   cti-users@lists.oasis-open.org < cti-users@lists.oasis-open.org >, cti-stix@lists.oasis-open.org < cti-stix@lists.oasis-open.org >, Wunder, John A. < jwunder@mitre.org > Date:   2015/10/05 09:04 PM Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Sent by:   < cti-users@lists.oasis-open.org > Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application). STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard. The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions. I am copying the following list from   Shawn Riley   to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema: Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.   Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned From: cti-stix@lists.oasis-open.org   [ mailto:cti-stix@lists.oasis-open.org ]   On Behalf Of   Barnum, Sean D. Sent:   Monday, October 05, 2015 9:18 AM To:   Terry MacDonald; Jordan, Bret Cc:   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole. These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity. sean From:   < cti-users@lists.oasis-open.org > on behalf of Terry MacDonald Date:   Friday, October 2, 2015 at 5:51 PM To:   Jordan, Bret Cc:   cti-users@lists.oasis-open.org , cti-stix@lists.oasis-open.org , John Wunder Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is. Cheers Terry MacDonald On 3 Oct 2015 6:33 am, Jordan, Bret < bret.jordan@bluecoat.com > wrote: I think this is a great idea..   Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050 Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg. On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org > wrote: How about we take two of the idioms on the   stixproject.github.io   site? -   http://stixproject.github.io/documentation/idioms/c2-indicator/ -   http://stixproject.github.io/documentation/idioms/simple-incident/ Thanks for helping out. I think it would be nice to see these as: - Current STIX XML (Done already) - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too) - JSON/JSON-Schema (Wunder) - JSON-LD (Casanave) - Any others people are interest (PMML, Thrift, ProtoBuf, etc) John On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com > wrote: Re: Examples. Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities. -Cory Attachment: signature.asc Description: Message signed with OpenPGP using GPGMail


  • 23.  RE: [cti-stix] [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 21:38
    I agree with this concern as well, hence my suggestion for a face-to-face with those in the group that are most knowledgeable (I probably do not fit into that group I admit). We are making very slow if any real progress while our competition almost has to be catching up to us.

    From: cti-stix@lists.oasis-open.org [mailto:cti-stix@lists.oasis-open.org] On Behalf Of Jordan, Bret
    Sent: Tuesday, October 06, 2015 3:06 PM
    To: Wunder, John A.
    Cc: cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org
    Subject: Re: [cti-stix] [cti-users] [cti-stix] [cti-users] MTI Binding

    Yes, I am advocating (b), that we do JSON with JSON Schema, so for those people that want to do validation they can. This is what we did with TAXII when we wrote the TAXII JSON specification and it worked well. So I suggest we learn from TAXII land.

    The fact that John and others have tried working with JSON-LD and could not get it working so they "gave up", is a good indicator that a lot of developers in the world will have the same issue.

    The reality is JSON with JSON schema, if we could decide today, would enable lot of groups, companies, vendors, developers, to start writing software and tools to support a STIX version of CTI instead of YACS. This is what we desperately need. Adoption.... We need more people and more vendors doing things with STIX and CybOX beyond what we have today.

    At our current rate I wonder when Facebook's ThreatExchange will catch up to STIX in adoption?
    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 6, 2015, at 12:12, Wunder, John A. <jwunder@mitre.org<mailto:jwunder@mitre.org>> wrote:

    I just talked to Sean on the phone (as you may have noticed we’re coming from different sides here) and wanted to bring up a few points here:

    - We all agree there will be a high-level model
    - We all agree that there will be at least one “binding” of that model to a format on the wire

    There’s middle layer there: how do you map fields between that high-level model and the format on the wire? Let’s imagine three approaches:

    a) The JSON-LD / RDF approach has explicit linkages directly between the high-level model and the on-the-wire format.
    b) JSON-Schema would be similar to what we’ve done with XML schema…defining some rules for how that works and a binding specification that describes it.
    c) “Raw” JSON, without a schema, does not have that binding. That said, I don’t think Bret (or myself, or the other people in favor of JSON) are saying we should do schema-less JSON. We’re saying we should develop a JSON-Schema binding similar to how we have an XML-Schema binding now.

    Looking at the requirements:
    #1. Satisfied by "a" and “b"
    #2. This requirement specifies an approach (“exchange data reference its definitions”) plus a requirement (“every tag may be deterministically be bound to its definition”). JSON-schema would not require that exchange data reference definitions (IMO not a requirement) but does allow you to deterministically bind data to its definition. JSON-LD does both, XML schema (depending on whether you use schemaLocation) can do either one or both. Raw JSON does not do this.
    #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2. STIX 1.2 tools are doing this now, so I don’t think you can assert that it doesn’t meet this requirement. STIX defines @id and @idref and how they should work to meet this requirement, so although it doesn’t use something like XLink it does work. Similarly, you could do the same think in JSONSchema. Heck, you could even use the same exact field names and URIs as you do in JSON-LD. So, both meet this requirement.
    #4. I think this is a balancing act…leveraging every single existing standard might not always be the best approach. If existing standards are overly complex (maybe they do more than we need) then we should invent our own simpler way of doing things. JSON-LD is more “standard”, but if it adds a lot of complexity that makes STIX harder to use then it might not be worth it.
    #5. I agree with this as a general statement and I would say it really comes down more to model definition than specific bindings. That said, to me, JSON-LD seems to make it more complex to do simple things (extra fields, need to understand JSON-LD in addition to JSON, etc), but perhaps as we do more complex things that complexity becomes useful.

    Given this, I would like to cut out choice (c). Let’s agree that we need to either leverage JSON-LD or define JSONSchemas.

    I looked into JSON-LD a bit and see the following advantages (as compared to JSON-Schema / JSON):

    - Standard approach to ID, Type, and links might be nice to leverage
    - If we get to an approach where things are defined in RDF it’s easier to generate JSON-LD-compatible schemas than JSONSchema schemas
    - Perhaps better integration with other data models, though those data models are of varying quality (many use XSD datatypes, which would suck to do in JSON)

    I also see some disadvantages:

    - Larger conceptual burden to understand than pure JSON…JSON people can understand JSONSchema because they understand JSON, but hunting down and understanding the JSON-LD schemas from schema.org<http://schema.org/> has been challenging for me.
    - I’m concerned about how open the types seem to be and how it relies on producers telling consumers what to expect. As a consumer, I want to know what I’m getting and I worry that some of the things you can do in JSON-LD make that difficult. Essentially, I worry that consumers will have to do a lot of work “revalidating” data because JSON-LD lets you be so open about type definitions and extensions. For example, I’m a STIX consumer and get some data: how do I validate that it actually is vanilla STIX and not some weird extension that the producer created? Producers can even send type definitions inline, which means they could potentially redefine things at that level. This flexibility could be a bad thing for scenarios where we want to lock down the exchanges.

    I think a few things would help:
    - Examples of STIX content encoded in JSON-LD. I was actually going to put this together but couldn’t figure out how to define the schemas so gave up.
    - Examples of another community that collaborated on defining these schemas and now uses it for exchange. I saw a lot of examples of one-offs (Google using it for Gmail, where Google is the only consumer) but not a lot where you have validated P2P exchanges based on schemas the community agreed to.

    I hope this helps focus the discussion.

    John

    On Oct 6, 2015, at 1:37 PM, Jordan, Bret <bret.jordan@BLUECOAT.COM<mailto:bret.jordan@BLUECOAT.COM>> wrote:

    I will completely and utterly disagree with these requirements. See Jason's post for further understanding. And for the record I completely agree with Jason from IBM.

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 6, 2015, at 11:21, Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>> wrote:

    Yes.
    This is the reason for requirement: 2: That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.

    Which current STIX-XML satisfies.


    From: Barnum, Sean D. [mailto:sbarnum@mitre.org]
    Sent: Tuesday, October 06, 2015 12:53 PM
    To: Cory Casanave; Jason Keirstead
    Cc: Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I would agree with Cory’s characterizations and assertions here.
    Jason, I think you may have misinterpreted what Cory was trying to say.
    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.

    Cory, please feel free to point out if I am mischaracterizing your intent.

    sean


    From: Cory Casanave
    Date: Tuesday, October 6, 2015 at 10:37 AM
    To: Jason Keirstead
    Cc: "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    Jason,
    Re: This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The count of terms is easily verified, so I assume you think this is untrue: may be used for very different use cases that use different viewpoints of the data with different root structures

    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.

    Another is coded for “Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects”.

    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.

    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.

    -Cory

    From: Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com]
    Sent: Tuesday, October 06, 2015 8:26 AM
    To: Cory Casanave
    Cc: Barnum, Sean D.; Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    "STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures."

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security<http://www.ibm.com/security> | www.securityintelligence.com<http://www.securityintelligence.com/>

    Without data, all you are is just another person with an opinion - Unknown


    <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From: Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>>
    To: "Barnum, Sean D." <sbarnum@mitre.org<mailto:sbarnum@mitre.org>>, Terry MacDonald <terry.macdonald@gmail.com<mailto:terry.macdonald@gmail.com>>, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>>
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>, "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>" <cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org<mailto:jwunder@mitre.org>>
    Date: 2015/10/05 09:04 PM
    Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>
    ________________________________



    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from Shawn Riley to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From:cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org> [mailto:cti-stix@lists.oasis-open.org] On Behalf Of Barnum, Sean D.
    Sent: Monday, October 05, 2015 9:18 AM
    To: Terry MacDonald; Jordan, Bret
    Cc: cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>; cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>; Wunder, John A.
    Subject: [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald
    Date: Friday, October 2, 2015 at 5:51 PM
    To: "Jordan, Bret"
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.
    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>> wrote:
    I think this is a great idea..

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."
    On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org<mailto:jwunder@mitre.org>> wrote:

    How about we take two of the idioms on the stixproject.github.io<http://stixproject.github.io/> site?

    - http://stixproject.github.io/documentation/idioms/c2-indicator/
    - http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John
    On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com<mailto:cory-c@modeldriven.com>> wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities.
    -Cory



    DTCC DISCLAIMER: This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error, please notify us immediately and delete the email and any attachments from your system. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.



  • 24.  RE: [cti-stix] [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 21:38




    I agree with this concern as well, hence my suggestion for a face-to-face with those in the group that are most knowledgeable (I probably do not fit into that group
    I admit).  We are making very slow if any real progress while our competition almost has to be catching up to us.
     


    From: cti-stix@lists.oasis-open.org [mailto:cti-stix@lists.oasis-open.org]
    On Behalf Of Jordan, Bret
    Sent: Tuesday, October 06, 2015 3:06 PM
    To: Wunder, John A.
    Cc: cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org
    Subject: Re: [cti-stix] [cti-users] [cti-stix] [cti-users] MTI Binding


     
    Yes, I am advocating (b), that we do JSON with JSON Schema, so for those people that want to do validation they can.  This is what we did with TAXII when we wrote the TAXII JSON specification and it worked well.  So I suggest we learn from
    TAXII land.

     


    The fact that John and others have tried working with JSON-LD and could not get it working so they "gave up", is a good indicator that a lot of developers in the world will have the same issue.

     









    The reality is JSON with JSON schema, if we could decide today, would enable lot of groups, companies, vendors, developers, to start writing software and tools to support a
    STIX version of CTI instead of YACS.  This is what we desperately need.  Adoption....  We need more people and more vendors doing things with STIX and CybOX beyond what we have today.  


     


    At our current rate I wonder when Facebook's ThreatExchange will catch up to STIX in adoption?   


    Thanks,


     


    Bret



     


     


     



    Bret Jordan CISSP

    Director of Security Architecture and Standards Office of the CTO


    Blue Coat Systems



    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447  F2C0 74F8 ACAE 7415 0050


    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg." 









     



    On Oct 6, 2015, at 12:12, Wunder, John A. < jwunder@mitre.org > wrote:

     


    I just talked to Sean on the phone (as you may have noticed we’re coming from different sides here) and wanted to bring up a few points here:


     


    - We all agree there will be a high-level model


    - We all agree that there will be at least one “binding” of that model to a format on the wire


     


    There’s middle layer there: how do you map fields between that high-level model and the format on the wire? Let’s imagine three approaches:


     


    a) The JSON-LD / RDF approach has explicit linkages directly between the high-level model and the on-the-wire format.


    b) JSON-Schema would be similar to what we’ve done with XML schema…defining some rules for how that works and a binding specification that describes it.


    c) “Raw” JSON, without a schema, does not have that binding. That said, I don’t think Bret (or myself, or the other people in favor of JSON) are saying we should do schema-less JSON. We’re saying we should develop a JSON-Schema binding
    similar to how we have an XML-Schema binding now.


     


    Looking at the requirements:


    #1. Satisfied by "a" and “b"


    #2. This requirement specifies an approach (“exchange data reference its definitions”) plus a requirement (“every tag may be deterministically be bound to its definition”). JSON-schema would not require that exchange data reference definitions
    (IMO not a requirement) but does allow you to deterministically bind data to its definition. JSON-LD does both, XML schema (depending on whether you use schemaLocation) can do either one or both. Raw JSON does not do this.


    #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2. STIX 1.2 tools are doing this now, so I don’t think you can assert that it doesn’t meet this requirement. STIX defines @id and @idref and how they should work to meet
    this requirement, so although it doesn’t use something like XLink it does work. Similarly, you could do the same think in JSONSchema. Heck, you could even use the same exact field names and URIs as you do in JSON-LD. So, both meet this requirement.


    #4. I think this is a balancing act…leveraging every single existing standard might not always be the best approach. If existing standards are overly complex (maybe they do more than we need) then we should invent our own simpler way of
    doing things. JSON-LD is more “standard”, but if it adds a lot of complexity that makes STIX harder to use then it might not be worth it.


    #5. I agree with this as a general statement and I would say it really comes down more to model definition than specific bindings. That said, to me, JSON-LD seems to make it more complex to do simple things (extra fields, need to understand
    JSON-LD in addition to JSON, etc), but perhaps as we do more complex things that complexity becomes useful.


     


    Given this, I would like to cut out choice (c). Let’s agree that we need to either leverage JSON-LD or define JSONSchemas.


     


    I looked into JSON-LD a bit and see the following advantages (as compared to JSON-Schema / JSON):


     


    - Standard approach to ID, Type, and links might be nice to leverage


    - If we get to an approach where things are defined in RDF it’s easier to generate JSON-LD-compatible schemas than JSONSchema schemas


    - Perhaps better integration with other data models, though those data models are of varying quality (many use XSD datatypes, which would suck to do in JSON)


     


    I also see some disadvantages:


     


    - Larger conceptual burden to understand than pure JSON…JSON people can understand JSONSchema because they understand JSON, but hunting down and understanding the JSON-LD schemas from
    schema.org  has been challenging for me.


    - I’m concerned about how open the types seem to be and how it relies on producers telling consumers what to expect. As a consumer, I want to know what I’m getting and I worry that some of the things you can do in JSON-LD make that difficult.
    Essentially, I worry that consumers will have to do a lot of work “revalidating” data because JSON-LD lets you be so open about type definitions and extensions. For example, I’m a STIX consumer and get some data: how do I validate that it actually is vanilla
    STIX and not some weird extension that the producer created? Producers can even send type definitions inline, which means they could potentially redefine things at that level. This flexibility could be a bad thing for scenarios where we want to lock down the
    exchanges.


     


    I think a few things would help:


    - Examples of STIX content encoded in JSON-LD. I was actually going to put this together but couldn’t figure out how to define the schemas so gave up.


    - Examples of another community that collaborated on defining these schemas and now uses it for exchange. I saw a lot of examples of one-offs (Google using it for Gmail, where Google is the only consumer) but not a lot where you have validated
    P2P exchanges based on schemas the community agreed to.


     


    I hope this helps focus the discussion.


     


    John


     



    On Oct 6, 2015, at 1:37 PM, Jordan, Bret < bret.jordan@BLUECOAT.COM > wrote:

     


    I will completely and utterly disagree with these requirements.  See Jason's post for further understanding.  And for the record I completely agree with Jason from IBM.   







     


    Thanks,


     


    Bret



     


     


     



    Bret Jordan CISSP


    Director of Security Architecture and Standards Office of the CTO


    Blue Coat Systems



    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447  F2C0 74F8 ACAE 7415 0050


    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg." 









     



    On Oct 6, 2015, at 11:21, Cory Casanave < cory-c@modeldriven.com > wrote:

     


    Yes.


    This is the reason for requirement:   2: That all exchange data reference its definition(s) such that every tag used
    may be deterministically bound to its definition.


     


    Which current STIX-XML satisfies.


     


     




    From:   Barnum,
    Sean D. [ mailto:sbarnum@mitre.org ]  
    Sent:   Tuesday, October 06, 2015 12:53 PM
    To:   Cory Casanave; Jason Keirstead
    Cc:   Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ;
    Wunder, John A.
    Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding




     




    I would agree with Cory’s characterizations and assertions here.




    Jason, I think you may have misinterpreted what Cory was trying to say.




    He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and
    there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings
    just that its one meaning may serve multiple purposes.




     




    Cory, please feel free to point out if I am mischaracterizing your intent.




     




    sean




     





     




    From:   Cory Casanave
    Date:   Tuesday, October 6, 2015 at 10:37 AM
    To:   Jason Keirstead
    Cc:   "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding




     





    Jason,


    Re:   This premise is untrue. Or at least, at the release of STIX 2.0, this has
    to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.


     


    The count of terms is easily verified, so I assume you think this is untrue:   may
    be used for very different use cases that use different viewpoints of the data with different root structures


     


    Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently
    suggested that all uses of STIX will be coded.


     


    Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”.


     


    Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.


     


    You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different
    approaches to handling such diversity – which is part of this conversation.


     


    -Cory


     




    From:   Jason
    Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]  
    Sent:   Tuesday, October 06, 2015 8:26 AM
    To:   Cory Casanave
    Cc:   Barnum, Sean D.; Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ;
    Wunder, John A.
    Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding




     

    " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the
    data with different root structures. "

    This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this
    whole discussion.

    The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other
    context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what
    is present in those fields.


    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security     www.securityintelligence.com

    Without data, all you are is just another person with an opinion - Unknown  


    <image001.gif> Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us

    From:   Cory Casanave < cory-c@modeldriven.com >
    To:   "Barnum, Sean D." < sbarnum@mitre.org >, Terry MacDonald
    < terry.macdonald@gmail.com >, "Jordan, Bret" < bret.jordan@bluecoat.com >
    Cc:   " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >,
    " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org >
    Date:   2015/10/05 09:04 PM
    Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    Sent by:   < cti-users@lists.oasis-open.org >











    Sean,
    I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My
    server talking to my android application).

    STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility
    and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am
    concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard.

    The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE
    complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models
    easier to understand for us humans with graphical models linked to semantic definitions.

    I am copying the following list from   Shawn Riley   to
    show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema:

    Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding
    the meaning of the data then it’s the humans who have to understand it and “connect the dots”.  

    Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies

    Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information

    Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information

    Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators

    Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information

    Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects

    Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned


    From: cti-stix@lists.oasis-open.org   [ mailto:cti-stix@lists.oasis-open.org ]   On
    Behalf Of   Barnum, Sean D.
    Sent:   Monday, October 05, 2015 9:18 AM
    To:   Terry MacDonald; Jordan, Bret
    Cc:   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ;
    Wunder, John A.
    Subject:   [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole.
    These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity.

    sean

    From:   < cti-users@lists.oasis-open.org >
    on behalf of Terry MacDonald
    Date:   Friday, October 2, 2015 at 5:51 PM
    To:   "Jordan, Bret"
    Cc:   " cti-users@lists.oasis-open.org ",
    " cti-stix@lists.oasis-open.org ", John Wunder
    Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding

    +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that
    the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is.
    Cheers
    Terry MacDonald
    On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com >
    wrote:
    I think this is a great idea..  

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org >
    wrote:

    How about we take two of the idioms on the   stixproject.github.io   site?

    -   http://stixproject.github.io/documentation/idioms/c2-indicator/
    -   http://stixproject.github.io/documentation/idioms/simple-incident/

    Thanks for helping out. I think it would be nice to see these as:

    - Current STIX XML (Done already)
    - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    - JSON/JSON-Schema (Wunder)
    - JSON-LD (Casanave)
    - Any others people are interest (PMML, Thrift, ProtoBuf, etc)

    John


    On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com >
    wrote:

    Re: Examples.
    Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple
    “pure hierarchical data” and at least one with some related entities.
    -Cory






     




     





     



    DTCC DISCLAIMER: This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error, please notify us immediately and delete the email and any attachments from your system. The recipient should check this email and any attachments for the presence of viruses.  The company accepts no liability for any damage caused by any virus transmitted by this email.




  • 25.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 20:47
    John,

    Thank you for a very balanced explanation of the relative merits of both
    JSON(Schema) and JSON(-LD).

    JSON-LD people,

    Before I provide my opinion I would like to know whether it is a
    requirement for JSON-LD schemas to use a schema.org context. Or are we able
    to use a JSON-LD schema specific to STIX, housed at OASIS, that meets our
    requirements? If we are able to create or own 'definitions' then I am a lot
    more interested.

    It seems to me that if we are allowed our own definitions within JSON-LD we
    get the best of both worlds.

    I really would appreciate someone who is a JSON-LD expert to describe
    exactly what the JSON-LD Schema would contain, and how it would look with
    an example STIX doc. Two indicators and a campaign in an example doc should
    be enough to give us all an idea.

    I think we may be missing the exact value proposition that JSON-LD will
    bring us, and I really want to be sure I understand it properly.

    Cheers
    Terry MacDonald
    On 7/10/2015 5:13 am, "Wunder, John A." <jwunder@mitre.org> wrote:

    > I just talked to Sean on the phone (as you may have noticed we’re coming
    > from different sides here) and wanted to bring up a few points here:
    >
    > - We all agree there will be a high-level model
    > - We all agree that there will be at least one “binding” of that model to
    > a format on the wire
    >
    > There’s middle layer there: how do you map fields between that high-level
    > model and the format on the wire? Let’s imagine three approaches:
    >
    > a) The JSON-LD / RDF approach has explicit linkages directly between the
    > high-level model and the on-the-wire format.
    > b) JSON-Schema would be similar to what we’ve done with XML
    > schema…defining some rules for how that works and a binding specification
    > that describes it.
    > c) “Raw” JSON, without a schema, does not have that binding. That said, I
    > don’t think Bret (or myself, or the other people in favor of JSON) are
    > saying we should do schema-less JSON. We’re saying we should develop a
    > JSON-Schema binding similar to how we have an XML-Schema binding now.
    >
    > Looking at the requirements:
    > #1. Satisfied by "a" and “b"
    > #2. This requirement specifies an approach (“exchange data reference its
    > definitions”) plus a requirement (“every tag may be deterministically be
    > bound to its definition”). JSON-schema would not require that exchange data
    > reference definitions (IMO not a requirement) but does allow you to
    > deterministically bind data to its definition. JSON-LD does both, XML
    > schema (depending on whether you use schemaLocation) can do either one or
    > both. Raw JSON does not do this.
    > #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2.
    > STIX 1.2 tools are doing this now, so I don’t think you can assert that it
    > doesn’t meet this requirement. STIX defines @id and @idref and how they
    > should work to meet this requirement, so although it doesn’t use something
    > like XLink it does work. Similarly, you could do the same think in
    > JSONSchema. Heck, you could even use the same exact field names and URIs as
    > you do in JSON-LD. So, both meet this requirement.
    > #4. I think this is a balancing act…leveraging every single existing
    > standard might not always be the best approach. If existing standards are
    > overly complex (maybe they do more than we need) then we should invent our
    > own simpler way of doing things. JSON-LD is more “standard”, but if it adds
    > a lot of complexity that makes STIX harder to use then it might not be
    > worth it.
    > #5. I agree with this as a general statement and I would say it really
    > comes down more to model definition than specific bindings. That said, to
    > me, JSON-LD seems to make it more complex to do simple things (extra
    > fields, need to understand JSON-LD in addition to JSON, etc), but perhaps
    > as we do more complex things that complexity becomes useful.
    >
    > Given this, I would like to cut out choice (c). Let’s agree that we need
    > to either leverage JSON-LD or define JSONSchemas.
    >
    > I looked into JSON-LD a bit and see the following advantages (as compared
    > to JSON-Schema / JSON):
    >
    > - Standard approach to ID, Type, and links might be nice to leverage
    > - If we get to an approach where things are defined in RDF it’s easier to
    > generate JSON-LD-compatible schemas than JSONSchema schemas
    > - Perhaps better integration with other data models, though those data
    > models are of varying quality (many use XSD datatypes, which would suck to
    > do in JSON)
    >
    > I also see some disadvantages:
    >
    > - Larger conceptual burden to understand than pure JSON…JSON people can
    > understand JSONSchema because they understand JSON, but hunting down and
    > understanding the JSON-LD schemas from schema.org has been challenging
    > for me.
    > - I’m concerned about how open the types seem to be and how it relies on
    > producers telling consumers what to expect. As a consumer, I want to know
    > what I’m getting and I worry that some of the things you can do in JSON-LD
    > make that difficult. Essentially, I worry that consumers will have to do a
    > lot of work “revalidating” data because JSON-LD lets you be so open about
    > type definitions and extensions. For example, I’m a STIX consumer and get
    > some data: how do I validate that it actually is vanilla STIX and not some
    > weird extension that the producer created? Producers can even send type
    > definitions inline, which means they could potentially redefine things at
    > that level. This flexibility could be a bad thing for scenarios where we
    > want to lock down the exchanges.
    >
    > I think a few things would help:
    > - Examples of STIX content encoded in JSON-LD. I was actually going to put
    > this together but couldn’t figure out how to define the schemas so gave up.
    > - Examples of another community that collaborated on defining these
    > schemas and now uses it for exchange. I saw a lot of examples of one-offs
    > (Google using it for Gmail, where Google is the only consumer) but not a
    > lot where you have validated P2P exchanges based on schemas the community
    > agreed to.
    >
    > I hope this helps focus the discussion.
    >
    > John
    >
    > On Oct 6, 2015, at 1:37 PM, Jordan, Bret <bret.jordan@BLUECOAT.COM> wrote:
    >
    > I will completely and utterly disagree with these requirements. See
    > Jason's post for further understanding. And for the record I completely
    > agree with Jason from IBM.
    >
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > *Bret Jordan CISSP*
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > can not be unscrambled is an egg."
    >
    > On Oct 6, 2015, at 11:21, Cory Casanave <cory-c@modeldriven.com> wrote:
    >
    > Yes.
    > This is the reason for requirement: 2: That all exchange data reference
    > its definition(s) such that every tag used may be deterministically bound
    > to its definition.
    >
    > Which current STIX-XML satisfies.
    >
    >
    > *From:* Barnum, Sean D. [mailto:sbarnum@mitre.org <sbarnum@mitre.org>]
    > *Sent:* Tuesday, October 06, 2015 12:53 PM
    > *To:* Cory Casanave; Jason Keirstead
    > *Cc:* Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org;
    > cti-stix@lists.oasis-open.org; Wunder, John A.
    > *Subject:* Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > I would agree with Cory’s characterizations and assertions here.
    > Jason, I think you may have misinterpreted what Cory was trying to say.
    > He was not saying that given fields have multiple meanings. He was saying
    > that differing use cases focused on different purposes may leverage
    > different sets of fields and there will likely be overlap between the
    > fields leveraged by different use cases. And that different use cases may
    > care about a given field for different reasons and do different things with
    > its content. That does not mean that the field has multiple meanings just
    > that its one meaning may serve multiple purposes.
    >
    > Cory, please feel free to point out if I am mischaracterizing your intent.
    >
    > sean
    >
    >
    > *From: *Cory Casanave
    > *Date: *Tuesday, October 6, 2015 at 10:37 AM
    > *To: *Jason Keirstead
    > *Cc: *"Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "
    > cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org", John
    > Wunder
    > *Subject: *RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > Jason,
    > Re: This premise is untrue. Or at least, at the release of STIX 2.0, this
    > has to be untrue - otherwise we have fundamentally failed in creating a
    > data interchange standard. And I believe that this incongruency is at the
    > heart of this whole discussion.
    >
    > The count of terms is easily verified, so I assume you think this is
    > untrue: *may be used for very different use cases that use different
    > viewpoints of the data with different root structures*
    >
    > Consider STIX may be used by one application to produce or consume a list
    > of suspect IP addresses, and is hard-coded to that purpose and structure.
    > It has been independently suggested that all uses of STIX will be coded.
    >
    > Another is coded for “Mitigation Strategies - Coordinated Action Plans -
    > Courses of Action - Understanding of Achievable Mitigation Effects”.
    >
    > Other than having a common STIX envelope, I would consider these different
    > viewpoints of the data with different root structures.
    >
    > You could identify dozens of such essentially different exchanges. I’m not
    > suggesting this as a failure, only a reality of the domain and scope. Of
    > course, there are different approaches to handling such diversity – which
    > is part of this conversation.
    >
    > -Cory
    >
    > *From:* Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com
    > <Jason.Keirstead@ca.ibm.com>]
    > *Sent:* Tuesday, October 06, 2015 8:26 AM
    > *To:* Cory Casanave
    > *Cc:* Barnum, Sean D.; Terry MacDonald; Jordan, Bret;
    > cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder,
    > John A.
    > *Subject:* RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    >
    > "STIX is several thousand terms and may be used for very different use
    > cases that use different viewpoints of the data with different root
    > structures."
    >
    > This premise is untrue. Or at least, at the release of STIX 2.0, this has
    > to be untrue - otherwise we have fundamentally failed in creating a data
    > interchange standard. And I believe that this incongruency is at the heart
    > of this whole discussion.
    >
    > The whole point of data interchange standards is to explicitly avoid this
    > premise. It is so that when I create a message such as
    > "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that
    > message without any other context to any recipient on the planet** - and
    > the recipient will be able to understand it, because they do not have to
    > guess as to what "name", or "id" mean - because they know that I am
    > following the "Fooferah 1.0" standard, which explicitly defines what is
    > present in those fields.
    >
    >
    > -
    > Jason Keirstead
    > Product Architect, Security Intelligence, IBM Security Systems
    > www.ibm.com/security | www.securityintelligence.com
    >
    > Without data, all you are is just another person with an opinion - Unknown
    >
    >
    >
    > <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much
    > agree. A lot of the “its simple” view of JSON or even early XML is based on
    > its us
    >
    > From: Cory Casanave <cory-c@modeldriven.com>
    > To: "Barnum, Sean D." <sbarnum@mitre.org>, Terry MacDonald <
    > terry.macdonald@gmail.com>, "Jordan, Bret" <bret.jordan@bluecoat.com>
    > Cc: "cti-users@lists.oasis-open.org" <cti-users@lists.oasis-open.org>, "
    > cti-stix@lists.oasis-open.org" <cti-stix@lists.oasis-open.org>, "Wunder,
    > John A." <jwunder@mitre.org>
    > Date: 2015/10/05 09:04 PM
    > Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    > Sent by: <cti-users@lists.oasis-open.org>
    > ------------------------------
    >
    >
    >
    > Sean,
    > I very much agree. A lot of the “its simple” view of JSON or even early
    > XML is based on its use for single and highly structured interactions
    > between endpoints controlled by the same authority (My server talking to my
    > android application).
    >
    > STIX is several thousand terms and may be used for very different use
    > cases that use different viewpoints of the data with different root
    > structures. On top of this is the need for extensibility and flexibility.
    > This is simply the reality of the domain and the scope of STIX. The bad
    > news is that regardless of the serialization format, schema language,
    > model, language, etc. It is somewhat complex – that is the real and
    > necessary complexity. So I am concerned that the “Pure JSON will be simple”
    > view will end in some disappointment. Note that the same concerns of
    > complexity are levied against NIEM, another large XML schema based data
    > sharing standard.
    >
    > The good news is we can make it BETTER and as simple as is practical! When
    > some of these requirements are folded into XML schema, it adds complexity –
    > so perhaps some of these other choices REDUCE complexity even if they
    > require some new learning. Where we can add semantic precision software can
    > handle some of the load. If we have a way to define fine-tuned “profiles”,
    > these may be much simpler for their more limited purpose. We can also make
    > the models easier to understand for us humans with graphical models linked
    > to semantic definitions.
    >
    > I am copying the following list from Shawn Riley to show the variety of
    > information formats and viewpoints that we are trying to fit together under
    > one, many faceted, schema:
    >
    > Below is some of the typical cybersecurity data and information
    > users/analysts/scientists have to organize into some type of body of
    > knowledge so they understand their cybersecurity ecosystem. If the
    > technology can’t understanding the meaning of the data then it’s the humans
    > who have to understand it and “connect the dots”.
    >
    > Configuration/Anomaly Reporting - Infrastructure Information - Risk
    > Posture - Anomalies
    >
    > Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor
    > Personas - Collected Threat Actor Indicators - Threat Actor Attribution -
    > Trend Analysis - Victim Information
    >
    > Incident Awareness - Incident Information - Incident Data - Infrastructure
    > Impact and Effects - Investigations/cases - Alerting Indicators - Victim
    > Information
    >
    > Indications and Warnings - Events and Alerts - Tipping and Cueing -
    > Warnings - Impact assessments - Potential Indicators
    >
    > Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim
    > Information
    >
    > Mitigation Strategies - Coordinated Action Plans - Courses of Action -
    > Understanding of Achievable Mitigation Effects
    >
    > Mitigation Actions and Responses - Computer Network Defense Situational
    > Awareness - Action Tasking and Status - Effectiveness Reporting - After
    > Action Reporting and Lessons Learned
    >
    >
    > *From:*cti-stix@lists.oasis-open.org [mailto:cti-stix@lists.oasis-open.org
    > <cti-stix@lists.oasis-open.org>] *On Behalf Of *Barnum, Sean D.
    > * Sent:* Monday, October 05, 2015 9:18 AM
    > * To:* Terry MacDonald; Jordan, Bret
    > * Cc:* cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org;
    > Wunder, John A.
    > * Subject:* [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI
    > Binding
    >
    > I think that using these simple idioms would be great for folks to see
    > roughly what the different forms look like but I do not think they would be
    > sufficient for comparing size and complexity as a whole.
    > These are VERY simple example structures. More complex examples would
    > likely differ from these simple ones in how each representation tackle size
    > and complexity.
    >
    > sean
    >
    > *From: *<cti-users@lists.oasis-open.org> on behalf of Terry MacDonald
    > * Date: *Friday, October 2, 2015 at 5:51 PM
    > * To: *"Jordan, Bret"
    > * Cc: *"cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org",
    > John Wunder
    > * Subject: *Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >
    > +1. Is a nice idea as we can see a size and complexity comparison. Is
    > there any chance each person can document the process that the generation
    > took? I'm thinking it could be useful to see how complicated the toolchain
    > for developing each type of output is.
    >
    > Cheers
    > Terry MacDonald
    > On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com> wrote:
    > I think this is a great idea..
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > *Bret Jordan CISSP*
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > can not be unscrambled is an egg."
    > On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org> wrote:
    >
    > How about we take two of the idioms on the stixproject.github.io site?
    >
    > - http://stixproject.github.io/documentation/idioms/c2-indicator/
    > - http://stixproject.github.io/documentation/idioms/simple-incident/
    >
    > Thanks for helping out. I think it would be nice to see these as:
    >
    > - Current STIX XML (Done already)
    > - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    > - JSON/JSON-Schema (Wunder)
    > - JSON-LD (Casanave)
    > - Any others people are interest (PMML, Thrift, ProtoBuf, etc)
    >
    > John
    > On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com> wrote:
    >
    > Re: Examples.
    > Pick your examples, I can help out. Would prefer to baseline off of the
    > same schema subset & example data, current STIX is fine to define the
    > examples. I suggest at least one that is very simple “pure hierarchical
    > data” and at least one with some related entities.
    > -Cory
    >
    >
    >
    >



  • 26.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 20:47
    John, Thank you for a very balanced explanation of the relative merits of both JSON(Schema) and JSON(-LD). JSON-LD people, Before I provide my opinion I would like to know whether it is a requirement for JSON-LD schemas to use a schema.org context. Or are we able to use a JSON-LD schema specific to STIX, housed at OASIS, that meets our requirements? If we are able to create or own 'definitions' then I am a lot more interested. It seems to me that if we are allowed our own definitions within JSON-LD we get the best of both worlds. I really would appreciate someone who is a JSON-LD expert to describe exactly what the JSON-LD Schema would contain, and how  it would look with an example STIX doc. Two indicators and a campaign in an example doc should be enough to give us all an idea. I think we may be missing the exact value proposition that JSON-LD will bring us, and I really want to be sure I understand it properly. Cheers Terry MacDonald On 7/10/2015 5:13 am, "Wunder, John A." < jwunder@mitre.org > wrote: I just talked to Sean on the phone (as you may have noticed we’re coming from different sides here) and wanted to bring up a few points here: - We all agree there will be a high-level model - We all agree that there will be at least one “binding” of that model to a format on the wire There’s middle layer there: how do you map fields between that high-level model and the format on the wire? Let’s imagine three approaches: a) The JSON-LD / RDF approach has explicit linkages directly between the high-level model and the on-the-wire format. b) JSON-Schema would be similar to what we’ve done with XML schema…defining some rules for how that works and a binding specification that describes it. c) “Raw” JSON, without a schema, does not have that binding. That said, I don’t think Bret (or myself, or the other people in favor of JSON) are saying we should do schema-less JSON. We’re saying we should develop a JSON-Schema binding similar to how we have an XML-Schema binding now. Looking at the requirements: #1. Satisfied by "a" and “b" #2. This requirement specifies an approach (“exchange data reference its definitions”) plus a requirement (“every tag may be deterministically be bound to its definition”). JSON-schema would not require that exchange data reference definitions (IMO not a requirement) but does allow you to deterministically bind data to its definition. JSON-LD does both, XML schema (depending on whether you use schemaLocation) can do either one or both. Raw JSON does not do this. #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2. STIX 1.2 tools are doing this now, so I don’t think you can assert that it doesn’t meet this requirement. STIX defines @id and @idref and how they should work to meet this requirement, so although it doesn’t use something like XLink it does work. Similarly, you could do the same think in JSONSchema. Heck, you could even use the same exact field names and URIs as you do in JSON-LD. So, both meet this requirement. #4. I think this is a balancing act…leveraging every single existing standard might not always be the best approach. If existing standards are overly complex (maybe they do more than we need) then we should invent our own simpler way of doing things. JSON-LD is more “standard”, but if it adds a lot of complexity that makes STIX harder to use then it might not be worth it. #5. I agree with this as a general statement and I would say it really comes down more to model definition than specific bindings. That said, to me, JSON-LD seems to make it more complex to do simple things (extra fields, need to understand JSON-LD in addition to JSON, etc), but perhaps as we do more complex things that complexity becomes useful. Given this, I would like to cut out choice (c). Let’s agree that we need to either leverage JSON-LD or define JSONSchemas. I looked into JSON-LD a bit and see the following advantages (as compared to JSON-Schema / JSON): - Standard approach to ID, Type, and links might be nice to leverage - If we get to an approach where things are defined in RDF it’s easier to generate JSON-LD-compatible schemas than JSONSchema schemas - Perhaps better integration with other data models, though those data models are of varying quality (many use XSD datatypes, which would suck to do in JSON) I also see some disadvantages: - Larger conceptual burden to understand than pure JSON…JSON people can understand JSONSchema because they understand JSON, but hunting down and understanding the JSON-LD schemas from schema.org  has been challenging for me. - I’m concerned about how open the types seem to be and how it relies on producers telling consumers what to expect. As a consumer, I want to know what I’m getting and I worry that some of the things you can do in JSON-LD make that difficult. Essentially, I worry that consumers will have to do a lot of work “revalidating” data because JSON-LD lets you be so open about type definitions and extensions. For example, I’m a STIX consumer and get some data: how do I validate that it actually is vanilla STIX and not some weird extension that the producer created? Producers can even send type definitions inline, which means they could potentially redefine things at that level. This flexibility could be a bad thing for scenarios where we want to lock down the exchanges. I think a few things would help: - Examples of STIX content encoded in JSON-LD. I was actually going to put this together but couldn’t figure out how to define the schemas so gave up. - Examples of another community that collaborated on defining these schemas and now uses it for exchange. I saw a lot of examples of one-offs (Google using it for Gmail, where Google is the only consumer) but not a lot where you have validated P2P exchanges based on schemas the community agreed to. I hope this helps focus the discussion. John On Oct 6, 2015, at 1:37 PM, Jordan, Bret < bret.jordan@BLUECOAT.COM > wrote: I will completely and utterly disagree with these requirements.  See Jason's post for further understanding.  And for the record I completely agree with Jason from IBM.    Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447  F2C0 74F8 ACAE 7415 0050 "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."  On Oct 6, 2015, at 11:21, Cory Casanave < cory-c@modeldriven.com > wrote: Yes. This is the reason for requirement:   2: That all exchange data reference its definition(s) such that every tag used may be deterministically bound to its definition.   Which current STIX-XML satisfies.     From:   Barnum, Sean D. [ mailto:sbarnum@mitre.org ]   Sent:   Tuesday, October 06, 2015 12:53 PM To:   Cory Casanave; Jason Keirstead Cc:   Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   I would agree with Cory’s characterizations and assertions here. Jason, I think you may have misinterpreted what Cory was trying to say. He was not saying that given fields have multiple meanings. He was saying that differing use cases focused on different purposes may leverage different sets of fields and there will likely be overlap between the fields leveraged by different use cases. And that different use cases may care about a given field for different reasons and do different things with its content. That does not mean that the field has multiple meanings just that its one meaning may serve multiple purposes.   Cory, please feel free to point out if I am mischaracterizing your intent.   sean     From:   Cory Casanave Date:   Tuesday, October 6, 2015 at 10:37 AM To:   Jason Keirstead Cc:   "Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ", John Wunder Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   Jason, Re:   This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion.   The count of terms is easily verified, so I assume you think this is untrue:   may be used for very different use cases that use different viewpoints of the data with different root structures   Consider STIX may be used by one application to produce or consume a list of suspect IP addresses, and is hard-coded to that purpose and structure. It has been independently suggested that all uses of STIX will be coded.   Another is coded for “ Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects ”.   Other than having a common STIX envelope, I would consider these different viewpoints of the data with different root structures.   You could identify dozens of such essentially different exchanges. I’m not suggesting this as a failure, only a reality of the domain and scope. Of course, there are different approaches to handling such diversity – which is part of this conversation.   -Cory   From:   Jason Keirstead [ mailto:Jason.Keirstead@ca.ibm.com ]   Sent:   Tuesday, October 06, 2015 8:26 AM To:   Cory Casanave Cc:   Barnum, Sean D.; Terry MacDonald; Jordan, Bret;   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding   " STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. " This premise is untrue. Or at least, at the release of STIX 2.0, this has to be untrue - otherwise we have fundamentally failed in creating a data interchange standard. And I believe that this incongruency is at the heart of this whole discussion. The whole point of data interchange standards is to explicitly avoid this premise. It is so that when I create a message such as "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that message without any other context to any recipient on the planet** - and the recipient will be able to understand it, because they do not have to guess as to what "name", or "id" mean - because they know that I am following the "Fooferah 1.0" standard, which explicitly defines what is present in those fields. - Jason Keirstead Product Architect, Security Intelligence, IBM Security Systems www.ibm.com/security     www.securityintelligence.com Without data, all you are is just another person with an opinion - Unknown   <image001.gif> Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its us From:   Cory Casanave < cory-c@modeldriven.com > To:   "Barnum, Sean D." < sbarnum@mitre.org >, Terry MacDonald < terry.macdonald@gmail.com >, "Jordan, Bret" < bret.jordan@bluecoat.com > Cc:   " cti-users@lists.oasis-open.org " < cti-users@lists.oasis-open.org >, " cti-stix@lists.oasis-open.org " < cti-stix@lists.oasis-open.org >, "Wunder, John A." < jwunder@mitre.org > Date:   2015/10/05 09:04 PM Subject:   RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding Sent by:   < cti-users@lists.oasis-open.org > Sean, I very much agree. A lot of the “its simple” view of JSON or even early XML is based on its use for single and highly structured interactions between endpoints controlled by the same authority (My server talking to my android application). STIX is several thousand terms and may be used for very different use cases that use different viewpoints of the data with different root structures. On top of this is the need for extensibility and flexibility. This is simply the reality of the domain and the scope of STIX. The bad news is that regardless of the serialization format, schema language, model, language, etc. It is somewhat complex – that is the real and necessary complexity. So I am concerned that the “Pure JSON will be simple” view will end in some disappointment. Note that the same concerns of complexity are levied against NIEM, another large XML schema based data sharing standard. The good news is we can make it BETTER and as simple as is practical! When some of these requirements are folded into XML schema, it adds complexity – so perhaps some of these other choices REDUCE complexity even if they require some new learning. Where we can add semantic precision software can handle some of the load. If we have a way to define fine-tuned “profiles”, these may be much simpler for their more limited purpose. We can also make the models easier to understand for us humans with graphical models linked to semantic definitions. I am copying the following list from   Shawn Riley   to show the variety of information formats and viewpoints that we are trying to fit together under one, many faceted, schema: Below is some of the typical cybersecurity data and information users/analysts/scientists have to organize into some type of body of knowledge so they understand their cybersecurity ecosystem. If the technology can’t understanding the meaning of the data then it’s the humans who have to understand it and “connect the dots”.   Configuration/Anomaly Reporting - Infrastructure Information - Risk Posture - Anomalies Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor Personas - Collected Threat Actor Indicators - Threat Actor Attribution - Trend Analysis - Victim Information Incident Awareness - Incident Information - Incident Data - Infrastructure Impact and Effects - Investigations/cases - Alerting Indicators - Victim Information Indications and Warnings - Events and Alerts - Tipping and Cueing - Warnings - Impact assessments - Potential Indicators Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim Information Mitigation Strategies - Coordinated Action Plans - Courses of Action - Understanding of Achievable Mitigation Effects Mitigation Actions and Responses - Computer Network Defense Situational Awareness - Action Tasking and Status - Effectiveness Reporting - After Action Reporting and Lessons Learned From: cti-stix@lists.oasis-open.org   [ mailto:cti-stix@lists.oasis-open.org ]   On Behalf Of   Barnum, Sean D. Sent:   Monday, October 05, 2015 9:18 AM To:   Terry MacDonald; Jordan, Bret Cc:   cti-users@lists.oasis-open.org ;   cti-stix@lists.oasis-open.org ; Wunder, John A. Subject:   [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding I think that using these simple idioms would be great for folks to see roughly what the different forms look like but I do not think they would be sufficient for comparing size and complexity as a whole. These are VERY simple example structures. More complex examples would likely differ from these simple ones in how each representation tackle size and complexity. sean From:   < cti-users@lists.oasis-open.org > on behalf of Terry MacDonald Date:   Friday, October 2, 2015 at 5:51 PM To:   "Jordan, Bret" Cc:   " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ", John Wunder Subject:   Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding +1. Is a nice idea as we can see a size and complexity comparison. Is there any chance each person can document the process that the generation took? I'm thinking it could be useful to see how complicated the toolchain for developing each type of output is. Cheers Terry MacDonald On 3 Oct 2015 6:33 am, "Jordan, Bret" < bret.jordan@bluecoat.com > wrote: I think this is a great idea..   Thanks, Bret Bret Jordan CISSP Director of Security Architecture and Standards Office of the CTO Blue Coat Systems PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050 "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg." On Oct 2, 2015, at 14:08, Wunder, John A. < jwunder@mitre.org > wrote: How about we take two of the idioms on the   stixproject.github.io   site? -   http://stixproject.github.io/documentation/idioms/c2-indicator/ -   http://stixproject.github.io/documentation/idioms/simple-incident/ Thanks for helping out. I think it would be nice to see these as: - Current STIX XML (Done already) - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too) - JSON/JSON-Schema (Wunder) - JSON-LD (Casanave) - Any others people are interest (PMML, Thrift, ProtoBuf, etc) John On Oct 2, 2015, at 11:50 AM, Cory Casanave < cory-c@modeldriven.com > wrote: Re: Examples. Pick your examples, I can help out. Would prefer to baseline off of the same schema subset & example data, current STIX is fine to define the examples. I suggest at least one that is very simple “pure hierarchical data” and at least one with some related entities. -Cory


  • 27.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 21:05
    There is no requirement to use schema.org with JSON-LD or any of the RDF
    serializations unless you are referencing some entity or definition there.

    On Tue, Oct 6, 2015 at 4:47 PM, Terry MacDonald <
    terry.macdonald@threatloop.com> wrote:

    > John,
    >
    > Thank you for a very balanced explanation of the relative merits of both
    > JSON(Schema) and JSON(-LD).
    >
    > JSON-LD people,
    >
    > Before I provide my opinion I would like to know whether it is a
    > requirement for JSON-LD schemas to use a schema.org context. Or are we
    > able to use a JSON-LD schema specific to STIX, housed at OASIS, that meets
    > our requirements? If we are able to create or own 'definitions' then I am a
    > lot more interested.
    >
    > It seems to me that if we are allowed our own definitions within JSON-LD
    > we get the best of both worlds.
    >
    > I really would appreciate someone who is a JSON-LD expert to describe
    > exactly what the JSON-LD Schema would contain, and how it would look with
    > an example STIX doc. Two indicators and a campaign in an example doc should
    > be enough to give us all an idea.
    >
    > I think we may be missing the exact value proposition that JSON-LD will
    > bring us, and I really want to be sure I understand it properly.
    >
    > Cheers
    > Terry MacDonald
    > On 7/10/2015 5:13 am, "Wunder, John A." <jwunder@mitre.org> wrote:
    >
    >> I just talked to Sean on the phone (as you may have noticed we’re coming
    >> from different sides here) and wanted to bring up a few points here:
    >>
    >> - We all agree there will be a high-level model
    >> - We all agree that there will be at least one “binding” of that model to
    >> a format on the wire
    >>
    >> There’s middle layer there: how do you map fields between that high-level
    >> model and the format on the wire? Let’s imagine three approaches:
    >>
    >> a) The JSON-LD / RDF approach has explicit linkages directly between the
    >> high-level model and the on-the-wire format.
    >> b) JSON-Schema would be similar to what we’ve done with XML
    >> schema…defining some rules for how that works and a binding specification
    >> that describes it.
    >> c) “Raw” JSON, without a schema, does not have that binding. That said, I
    >> don’t think Bret (or myself, or the other people in favor of JSON) are
    >> saying we should do schema-less JSON. We’re saying we should develop a
    >> JSON-Schema binding similar to how we have an XML-Schema binding now.
    >>
    >> Looking at the requirements:
    >> #1. Satisfied by "a" and “b"
    >> #2. This requirement specifies an approach (“exchange data reference its
    >> definitions”) plus a requirement (“every tag may be deterministically be
    >> bound to its definition”). JSON-schema would not require that exchange data
    >> reference definitions (IMO not a requirement) but does allow you to
    >> deterministically bind data to its definition. JSON-LD does both, XML
    >> schema (depending on whether you use schemaLocation) can do either one or
    >> both. Raw JSON does not do this.
    >> #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2.
    >> STIX 1.2 tools are doing this now, so I don’t think you can assert that it
    >> doesn’t meet this requirement. STIX defines @id and @idref and how they
    >> should work to meet this requirement, so although it doesn’t use something
    >> like XLink it does work. Similarly, you could do the same think in
    >> JSONSchema. Heck, you could even use the same exact field names and URIs as
    >> you do in JSON-LD. So, both meet this requirement.
    >> #4. I think this is a balancing act…leveraging every single existing
    >> standard might not always be the best approach. If existing standards are
    >> overly complex (maybe they do more than we need) then we should invent our
    >> own simpler way of doing things. JSON-LD is more “standard”, but if it adds
    >> a lot of complexity that makes STIX harder to use then it might not be
    >> worth it.
    >> #5. I agree with this as a general statement and I would say it really
    >> comes down more to model definition than specific bindings. That said, to
    >> me, JSON-LD seems to make it more complex to do simple things (extra
    >> fields, need to understand JSON-LD in addition to JSON, etc), but perhaps
    >> as we do more complex things that complexity becomes useful.
    >>
    >> Given this, I would like to cut out choice (c). Let’s agree that we need
    >> to either leverage JSON-LD or define JSONSchemas.
    >>
    >> I looked into JSON-LD a bit and see the following advantages (as compared
    >> to JSON-Schema / JSON):
    >>
    >> - Standard approach to ID, Type, and links might be nice to leverage
    >> - If we get to an approach where things are defined in RDF it’s easier to
    >> generate JSON-LD-compatible schemas than JSONSchema schemas
    >> - Perhaps better integration with other data models, though those data
    >> models are of varying quality (many use XSD datatypes, which would suck to
    >> do in JSON)
    >>
    >> I also see some disadvantages:
    >>
    >> - Larger conceptual burden to understand than pure JSON…JSON people can
    >> understand JSONSchema because they understand JSON, but hunting down and
    >> understanding the JSON-LD schemas from schema.org has been challenging
    >> for me.
    >> - I’m concerned about how open the types seem to be and how it relies on
    >> producers telling consumers what to expect. As a consumer, I want to know
    >> what I’m getting and I worry that some of the things you can do in JSON-LD
    >> make that difficult. Essentially, I worry that consumers will have to do a
    >> lot of work “revalidating” data because JSON-LD lets you be so open about
    >> type definitions and extensions. For example, I’m a STIX consumer and get
    >> some data: how do I validate that it actually is vanilla STIX and not some
    >> weird extension that the producer created? Producers can even send type
    >> definitions inline, which means they could potentially redefine things at
    >> that level. This flexibility could be a bad thing for scenarios where we
    >> want to lock down the exchanges.
    >>
    >> I think a few things would help:
    >> - Examples of STIX content encoded in JSON-LD. I was actually going to
    >> put this together but couldn’t figure out how to define the schemas so gave
    >> up.
    >> - Examples of another community that collaborated on defining these
    >> schemas and now uses it for exchange. I saw a lot of examples of one-offs
    >> (Google using it for Gmail, where Google is the only consumer) but not a
    >> lot where you have validated P2P exchanges based on schemas the community
    >> agreed to.
    >>
    >> I hope this helps focus the discussion.
    >>
    >> John
    >>
    >> On Oct 6, 2015, at 1:37 PM, Jordan, Bret <bret.jordan@BLUECOAT.COM>
    >> wrote:
    >>
    >> I will completely and utterly disagree with these requirements. See
    >> Jason's post for further understanding. And for the record I completely
    >> agree with Jason from IBM.
    >>
    >>
    >> Thanks,
    >>
    >> Bret
    >>
    >>
    >>
    >> *Bret Jordan CISSP*
    >> Director of Security Architecture and Standards | Office of the CTO
    >> Blue Coat Systems
    >> PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >> "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    >> can not be unscrambled is an egg."
    >>
    >> On Oct 6, 2015, at 11:21, Cory Casanave <cory-c@modeldriven.com> wrote:
    >>
    >> Yes.
    >> This is the reason for requirement: 2: That all exchange data reference
    >> its definition(s) such that every tag used may be deterministically bound
    >> to its definition.
    >>
    >> Which current STIX-XML satisfies.
    >>
    >>
    >> *From:* Barnum, Sean D. [mailto:sbarnum@mitre.org <sbarnum@mitre.org>]
    >> *Sent:* Tuesday, October 06, 2015 12:53 PM
    >> *To:* Cory Casanave; Jason Keirstead
    >> *Cc:* Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org;
    >> cti-stix@lists.oasis-open.org; Wunder, John A.
    >> *Subject:* Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>
    >> I would agree with Cory’s characterizations and assertions here.
    >> Jason, I think you may have misinterpreted what Cory was trying to say.
    >> He was not saying that given fields have multiple meanings. He was saying
    >> that differing use cases focused on different purposes may leverage
    >> different sets of fields and there will likely be overlap between the
    >> fields leveraged by different use cases. And that different use cases may
    >> care about a given field for different reasons and do different things with
    >> its content. That does not mean that the field has multiple meanings just
    >> that its one meaning may serve multiple purposes.
    >>
    >> Cory, please feel free to point out if I am mischaracterizing your intent.
    >>
    >> sean
    >>
    >>
    >> *From: *Cory Casanave
    >> *Date: *Tuesday, October 6, 2015 at 10:37 AM
    >> *To: *Jason Keirstead
    >> *Cc: *"Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "
    >> cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org", John
    >> Wunder
    >> *Subject: *RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>
    >> Jason,
    >> Re: This premise is untrue. Or at least, at the release of STIX 2.0,
    >> this has to be untrue - otherwise we have fundamentally failed in creating
    >> a data interchange standard. And I believe that this incongruency is at the
    >> heart of this whole discussion.
    >>
    >> The count of terms is easily verified, so I assume you think this is
    >> untrue: *may be used for very different use cases that use different
    >> viewpoints of the data with different root structures*
    >>
    >> Consider STIX may be used by one application to produce or consume a list
    >> of suspect IP addresses, and is hard-coded to that purpose and structure.
    >> It has been independently suggested that all uses of STIX will be coded.
    >>
    >> Another is coded for “Mitigation Strategies - Coordinated Action Plans -
    >> Courses of Action - Understanding of Achievable Mitigation Effects”.
    >>
    >> Other than having a common STIX envelope, I would consider these
    >> different viewpoints of the data with different root structures.
    >>
    >> You could identify dozens of such essentially different exchanges. I’m
    >> not suggesting this as a failure, only a reality of the domain and scope.
    >> Of course, there are different approaches to handling such diversity –
    >> which is part of this conversation.
    >>
    >> -Cory
    >>
    >> *From:* Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com
    >> <Jason.Keirstead@ca.ibm.com>]
    >> *Sent:* Tuesday, October 06, 2015 8:26 AM
    >> *To:* Cory Casanave
    >> *Cc:* Barnum, Sean D.; Terry MacDonald; Jordan, Bret;
    >> cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder,
    >> John A.
    >> *Subject:* RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>
    >>
    >> "STIX is several thousand terms and may be used for very different use
    >> cases that use different viewpoints of the data with different root
    >> structures."
    >>
    >> This premise is untrue. Or at least, at the release of STIX 2.0, this has
    >> to be untrue - otherwise we have fundamentally failed in creating a data
    >> interchange standard. And I believe that this incongruency is at the heart
    >> of this whole discussion.
    >>
    >> The whole point of data interchange standards is to explicitly avoid this
    >> premise. It is so that when I create a message such as
    >> "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that
    >> message without any other context to any recipient on the planet** - and
    >> the recipient will be able to understand it, because they do not have to
    >> guess as to what "name", or "id" mean - because they know that I am
    >> following the "Fooferah 1.0" standard, which explicitly defines what is
    >> present in those fields.
    >>
    >>
    >> -
    >> Jason Keirstead
    >> Product Architect, Security Intelligence, IBM Security Systems
    >> www.ibm.com/security | www.securityintelligence.com
    >>
    >> Without data, all you are is just another person with an opinion - Unknown
    >>
    >>
    >>
    >> <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very
    >> much agree. A lot of the “its simple” view of JSON or even early XML is
    >> based on its us
    >>
    >> From: Cory Casanave <cory-c@modeldriven.com>
    >> To: "Barnum, Sean D." <sbarnum@mitre.org>, Terry MacDonald <
    >> terry.macdonald@gmail.com>, "Jordan, Bret" <bret.jordan@bluecoat.com>
    >> Cc: "cti-users@lists.oasis-open.org" <cti-users@lists.oasis-open.org>, "
    >> cti-stix@lists.oasis-open.org" <cti-stix@lists.oasis-open.org>, "Wunder,
    >> John A." <jwunder@mitre.org>
    >> Date: 2015/10/05 09:04 PM
    >> Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >> Sent by: <cti-users@lists.oasis-open.org>
    >> ------------------------------
    >>
    >>
    >>
    >> Sean,
    >> I very much agree. A lot of the “its simple” view of JSON or even early
    >> XML is based on its use for single and highly structured interactions
    >> between endpoints controlled by the same authority (My server talking to my
    >> android application).
    >>
    >> STIX is several thousand terms and may be used for very different use
    >> cases that use different viewpoints of the data with different root
    >> structures. On top of this is the need for extensibility and flexibility.
    >> This is simply the reality of the domain and the scope of STIX. The bad
    >> news is that regardless of the serialization format, schema language,
    >> model, language, etc. It is somewhat complex – that is the real and
    >> necessary complexity. So I am concerned that the “Pure JSON will be simple”
    >> view will end in some disappointment. Note that the same concerns of
    >> complexity are levied against NIEM, another large XML schema based data
    >> sharing standard.
    >>
    >> The good news is we can make it BETTER and as simple as is practical!
    >> When some of these requirements are folded into XML schema, it adds
    >> complexity – so perhaps some of these other choices REDUCE complexity even
    >> if they require some new learning. Where we can add semantic precision
    >> software can handle some of the load. If we have a way to define fine-tuned
    >> “profiles”, these may be much simpler for their more limited purpose. We
    >> can also make the models easier to understand for us humans with graphical
    >> models linked to semantic definitions.
    >>
    >> I am copying the following list from Shawn Riley to show the variety of
    >> information formats and viewpoints that we are trying to fit together under
    >> one, many faceted, schema:
    >>
    >> Below is some of the typical cybersecurity data and information
    >> users/analysts/scientists have to organize into some type of body of
    >> knowledge so they understand their cybersecurity ecosystem. If the
    >> technology can’t understanding the meaning of the data then it’s the humans
    >> who have to understand it and “connect the dots”.
    >>
    >> Configuration/Anomaly Reporting - Infrastructure Information - Risk
    >> Posture - Anomalies
    >>
    >> Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor
    >> Personas - Collected Threat Actor Indicators - Threat Actor Attribution -
    >> Trend Analysis - Victim Information
    >>
    >> Incident Awareness - Incident Information - Incident Data -
    >> Infrastructure Impact and Effects - Investigations/cases - Alerting
    >> Indicators - Victim Information
    >>
    >> Indications and Warnings - Events and Alerts - Tipping and Cueing -
    >> Warnings - Impact assessments - Potential Indicators
    >>
    >> Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim
    >> Information
    >>
    >> Mitigation Strategies - Coordinated Action Plans - Courses of Action -
    >> Understanding of Achievable Mitigation Effects
    >>
    >> Mitigation Actions and Responses - Computer Network Defense Situational
    >> Awareness - Action Tasking and Status - Effectiveness Reporting - After
    >> Action Reporting and Lessons Learned
    >>
    >>
    >> *From:*cti-stix@lists.oasis-open.org [
    >> mailto:cti-stix@lists.oasis-open.org <cti-stix@lists.oasis-open.org>] *On
    >> Behalf Of *Barnum, Sean D.
    >> * Sent:* Monday, October 05, 2015 9:18 AM
    >> * To:* Terry MacDonald; Jordan, Bret
    >> * Cc:* cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org;
    >> Wunder, John A.
    >> * Subject:* [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI
    >> Binding
    >>
    >> I think that using these simple idioms would be great for folks to see
    >> roughly what the different forms look like but I do not think they would be
    >> sufficient for comparing size and complexity as a whole.
    >> These are VERY simple example structures. More complex examples would
    >> likely differ from these simple ones in how each representation tackle size
    >> and complexity.
    >>
    >> sean
    >>
    >> *From: *<cti-users@lists.oasis-open.org> on behalf of Terry MacDonald
    >> * Date: *Friday, October 2, 2015 at 5:51 PM
    >> * To: *"Jordan, Bret"
    >> * Cc: *"cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org",
    >> John Wunder
    >> * Subject: *Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>
    >> +1. Is a nice idea as we can see a size and complexity comparison. Is
    >> there any chance each person can document the process that the generation
    >> took? I'm thinking it could be useful to see how complicated the toolchain
    >> for developing each type of output is.
    >>
    >> Cheers
    >> Terry MacDonald
    >> On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com> wrote:
    >> I think this is a great idea..
    >>
    >> Thanks,
    >>
    >> Bret
    >>
    >>
    >>
    >> *Bret Jordan CISSP*
    >> Director of Security Architecture and Standards | Office of the CTO
    >> Blue Coat Systems
    >> PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >> "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    >> can not be unscrambled is an egg."
    >> On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org> wrote:
    >>
    >> How about we take two of the idioms on the stixproject.github.io site?
    >>
    >> - http://stixproject.github.io/documentation/idioms/c2-indicator/
    >> - http://stixproject.github.io/documentation/idioms/simple-incident/
    >>
    >> Thanks for helping out. I think it would be nice to see these as:
    >>
    >> - Current STIX XML (Done already)
    >> - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    >> - JSON/JSON-Schema (Wunder)
    >> - JSON-LD (Casanave)
    >> - Any others people are interest (PMML, Thrift, ProtoBuf, etc)
    >>
    >> John
    >> On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com>
    >> wrote:
    >>
    >> Re: Examples.
    >> Pick your examples, I can help out. Would prefer to baseline off of the
    >> same schema subset & example data, current STIX is fine to define the
    >> examples. I suggest at least one that is very simple “pure hierarchical
    >> data” and at least one with some related entities.
    >> -Cory
    >>
    >>
    >>
    >>



  • 28.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 21:19
    If we're free to construct our own STIX specific schema, if we can put in
    it what we want, and we can derive the schema programmatically from the
    actual underlying model that sounds very useful.

    Does this mean that the main difference between the JSON-LD and JSONSchema
    is just the way that JSON-LD explicitly references the applicable schema
    (increasing size slightly)? And JSONSchema has an implicit relationship.
    Correct?

    Cheers
    Terry MacDonald
    On 7/10/2015 8:05 am, "Shawn Riley" <shawn.p.riley@gmail.com> wrote:

    > There is no requirement to use schema.org with JSON-LD or any of the RDF
    > serializations unless you are referencing some entity or definition there.
    >
    > On Tue, Oct 6, 2015 at 4:47 PM, Terry MacDonald <
    > terry.macdonald@threatloop.com> wrote:
    >
    >> John,
    >>
    >> Thank you for a very balanced explanation of the relative merits of both
    >> JSON(Schema) and JSON(-LD).
    >>
    >> JSON-LD people,
    >>
    >> Before I provide my opinion I would like to know whether it is a
    >> requirement for JSON-LD schemas to use a schema.org context. Or are we
    >> able to use a JSON-LD schema specific to STIX, housed at OASIS, that meets
    >> our requirements? If we are able to create or own 'definitions' then I am a
    >> lot more interested.
    >>
    >> It seems to me that if we are allowed our own definitions within JSON-LD
    >> we get the best of both worlds.
    >>
    >> I really would appreciate someone who is a JSON-LD expert to describe
    >> exactly what the JSON-LD Schema would contain, and how it would look with
    >> an example STIX doc. Two indicators and a campaign in an example doc should
    >> be enough to give us all an idea.
    >>
    >> I think we may be missing the exact value proposition that JSON-LD will
    >> bring us, and I really want to be sure I understand it properly.
    >>
    >> Cheers
    >> Terry MacDonald
    >> On 7/10/2015 5:13 am, "Wunder, John A." <jwunder@mitre.org> wrote:
    >>
    >>> I just talked to Sean on the phone (as you may have noticed we’re coming
    >>> from different sides here) and wanted to bring up a few points here:
    >>>
    >>> - We all agree there will be a high-level model
    >>> - We all agree that there will be at least one “binding” of that model
    >>> to a format on the wire
    >>>
    >>> There’s middle layer there: how do you map fields between that
    >>> high-level model and the format on the wire? Let’s imagine three approaches:
    >>>
    >>> a) The JSON-LD / RDF approach has explicit linkages directly between the
    >>> high-level model and the on-the-wire format.
    >>> b) JSON-Schema would be similar to what we’ve done with XML
    >>> schema…defining some rules for how that works and a binding specification
    >>> that describes it.
    >>> c) “Raw” JSON, without a schema, does not have that binding. That said,
    >>> I don’t think Bret (or myself, or the other people in favor of JSON) are
    >>> saying we should do schema-less JSON. We’re saying we should develop a
    >>> JSON-Schema binding similar to how we have an XML-Schema binding now.
    >>>
    >>> Looking at the requirements:
    >>> #1. Satisfied by "a" and “b"
    >>> #2. This requirement specifies an approach (“exchange data reference its
    >>> definitions”) plus a requirement (“every tag may be deterministically be
    >>> bound to its definition”). JSON-schema would not require that exchange data
    >>> reference definitions (IMO not a requirement) but does allow you to
    >>> deterministically bind data to its definition. JSON-LD does both, XML
    >>> schema (depending on whether you use schemaLocation) can do either one or
    >>> both. Raw JSON does not do this.
    >>> #3. I’m not sure of the basis for saying this doesn’t work in STIX 1.2.
    >>> STIX 1.2 tools are doing this now, so I don’t think you can assert that it
    >>> doesn’t meet this requirement. STIX defines @id and @idref and how they
    >>> should work to meet this requirement, so although it doesn’t use something
    >>> like XLink it does work. Similarly, you could do the same think in
    >>> JSONSchema. Heck, you could even use the same exact field names and URIs as
    >>> you do in JSON-LD. So, both meet this requirement.
    >>> #4. I think this is a balancing act…leveraging every single existing
    >>> standard might not always be the best approach. If existing standards are
    >>> overly complex (maybe they do more than we need) then we should invent our
    >>> own simpler way of doing things. JSON-LD is more “standard”, but if it adds
    >>> a lot of complexity that makes STIX harder to use then it might not be
    >>> worth it.
    >>> #5. I agree with this as a general statement and I would say it really
    >>> comes down more to model definition than specific bindings. That said, to
    >>> me, JSON-LD seems to make it more complex to do simple things (extra
    >>> fields, need to understand JSON-LD in addition to JSON, etc), but perhaps
    >>> as we do more complex things that complexity becomes useful.
    >>>
    >>> Given this, I would like to cut out choice (c). Let’s agree that we need
    >>> to either leverage JSON-LD or define JSONSchemas.
    >>>
    >>> I looked into JSON-LD a bit and see the following advantages (as
    >>> compared to JSON-Schema / JSON):
    >>>
    >>> - Standard approach to ID, Type, and links might be nice to leverage
    >>> - If we get to an approach where things are defined in RDF it’s easier
    >>> to generate JSON-LD-compatible schemas than JSONSchema schemas
    >>> - Perhaps better integration with other data models, though those data
    >>> models are of varying quality (many use XSD datatypes, which would suck to
    >>> do in JSON)
    >>>
    >>> I also see some disadvantages:
    >>>
    >>> - Larger conceptual burden to understand than pure JSON…JSON people can
    >>> understand JSONSchema because they understand JSON, but hunting down and
    >>> understanding the JSON-LD schemas from schema.org has been challenging
    >>> for me.
    >>> - I’m concerned about how open the types seem to be and how it relies on
    >>> producers telling consumers what to expect. As a consumer, I want to know
    >>> what I’m getting and I worry that some of the things you can do in JSON-LD
    >>> make that difficult. Essentially, I worry that consumers will have to do a
    >>> lot of work “revalidating” data because JSON-LD lets you be so open about
    >>> type definitions and extensions. For example, I’m a STIX consumer and get
    >>> some data: how do I validate that it actually is vanilla STIX and not some
    >>> weird extension that the producer created? Producers can even send type
    >>> definitions inline, which means they could potentially redefine things at
    >>> that level. This flexibility could be a bad thing for scenarios where we
    >>> want to lock down the exchanges.
    >>>
    >>> I think a few things would help:
    >>> - Examples of STIX content encoded in JSON-LD. I was actually going to
    >>> put this together but couldn’t figure out how to define the schemas so gave
    >>> up.
    >>> - Examples of another community that collaborated on defining these
    >>> schemas and now uses it for exchange. I saw a lot of examples of one-offs
    >>> (Google using it for Gmail, where Google is the only consumer) but not a
    >>> lot where you have validated P2P exchanges based on schemas the community
    >>> agreed to.
    >>>
    >>> I hope this helps focus the discussion.
    >>>
    >>> John
    >>>
    >>> On Oct 6, 2015, at 1:37 PM, Jordan, Bret <bret.jordan@BLUECOAT.COM>
    >>> wrote:
    >>>
    >>> I will completely and utterly disagree with these requirements. See
    >>> Jason's post for further understanding. And for the record I completely
    >>> agree with Jason from IBM.
    >>>
    >>>
    >>> Thanks,
    >>>
    >>> Bret
    >>>
    >>>
    >>>
    >>> *Bret Jordan CISSP*
    >>> Director of Security Architecture and Standards | Office of the CTO
    >>> Blue Coat Systems
    >>> PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >>> "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    >>> can not be unscrambled is an egg."
    >>>
    >>> On Oct 6, 2015, at 11:21, Cory Casanave <cory-c@modeldriven.com> wrote:
    >>>
    >>> Yes.
    >>> This is the reason for requirement: 2: That all exchange data reference
    >>> its definition(s) such that every tag used may be deterministically bound
    >>> to its definition.
    >>>
    >>> Which current STIX-XML satisfies.
    >>>
    >>>
    >>> *From:* Barnum, Sean D. [mailto:sbarnum@mitre.org <sbarnum@mitre.org>]
    >>> *Sent:* Tuesday, October 06, 2015 12:53 PM
    >>> *To:* Cory Casanave; Jason Keirstead
    >>> *Cc:* Terry MacDonald; Jordan, Bret; cti-users@lists.oasis-open.org;
    >>> cti-stix@lists.oasis-open.org; Wunder, John A.
    >>> *Subject:* Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>>
    >>> I would agree with Cory’s characterizations and assertions here.
    >>> Jason, I think you may have misinterpreted what Cory was trying to say.
    >>> He was not saying that given fields have multiple meanings. He was
    >>> saying that differing use cases focused on different purposes may leverage
    >>> different sets of fields and there will likely be overlap between the
    >>> fields leveraged by different use cases. And that different use cases may
    >>> care about a given field for different reasons and do different things with
    >>> its content. That does not mean that the field has multiple meanings just
    >>> that its one meaning may serve multiple purposes.
    >>>
    >>> Cory, please feel free to point out if I am mischaracterizing your
    >>> intent.
    >>>
    >>> sean
    >>>
    >>>
    >>> *From: *Cory Casanave
    >>> *Date: *Tuesday, October 6, 2015 at 10:37 AM
    >>> *To: *Jason Keirstead
    >>> *Cc: *"Barnum, Sean D.", Terry MacDonald, "Jordan, Bret", "
    >>> cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org", John
    >>> Wunder
    >>> *Subject: *RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>>
    >>> Jason,
    >>> Re: This premise is untrue. Or at least, at the release of STIX 2.0,
    >>> this has to be untrue - otherwise we have fundamentally failed in creating
    >>> a data interchange standard. And I believe that this incongruency is at the
    >>> heart of this whole discussion.
    >>>
    >>> The count of terms is easily verified, so I assume you think this is
    >>> untrue: *may be used for very different use cases that use different
    >>> viewpoints of the data with different root structures*
    >>>
    >>> Consider STIX may be used by one application to produce or consume a
    >>> list of suspect IP addresses, and is hard-coded to that purpose and
    >>> structure. It has been independently suggested that all uses of STIX will
    >>> be coded.
    >>>
    >>> Another is coded for “Mitigation Strategies - Coordinated Action Plans
    >>> - Courses of Action - Understanding of Achievable Mitigation Effects”.
    >>>
    >>> Other than having a common STIX envelope, I would consider these
    >>> different viewpoints of the data with different root structures.
    >>>
    >>> You could identify dozens of such essentially different exchanges. I’m
    >>> not suggesting this as a failure, only a reality of the domain and scope.
    >>> Of course, there are different approaches to handling such diversity –
    >>> which is part of this conversation.
    >>>
    >>> -Cory
    >>>
    >>> *From:* Jason Keirstead [mailto:Jason.Keirstead@ca.ibm.com
    >>> <Jason.Keirstead@ca.ibm.com>]
    >>> *Sent:* Tuesday, October 06, 2015 8:26 AM
    >>> *To:* Cory Casanave
    >>> *Cc:* Barnum, Sean D.; Terry MacDonald; Jordan, Bret;
    >>> cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder,
    >>> John A.
    >>> *Subject:* RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>>
    >>>
    >>> "STIX is several thousand terms and may be used for very different use
    >>> cases that use different viewpoints of the data with different root
    >>> structures."
    >>>
    >>> This premise is untrue. Or at least, at the release of STIX 2.0, this
    >>> has to be untrue - otherwise we have fundamentally failed in creating a
    >>> data interchange standard. And I believe that this incongruency is at the
    >>> heart of this whole discussion.
    >>>
    >>> The whole point of data interchange standards is to explicitly avoid
    >>> this premise. It is so that when I create a message such as
    >>> "<foofarah><name>foo</name><id>bar</id></foofarah>", **I can send that
    >>> message without any other context to any recipient on the planet** - and
    >>> the recipient will be able to understand it, because they do not have to
    >>> guess as to what "name", or "id" mean - because they know that I am
    >>> following the "Fooferah 1.0" standard, which explicitly defines what is
    >>> present in those fields.
    >>>
    >>>
    >>> -
    >>> Jason Keirstead
    >>> Product Architect, Security Intelligence, IBM Security Systems
    >>> www.ibm.com/security | www.securityintelligence.com
    >>>
    >>> Without data, all you are is just another person with an opinion -
    >>> Unknown
    >>>
    >>>
    >>> <image001.gif>Cory Casanave ---2015/10/05 09:04:26 PM---Sean, I very
    >>> much agree. A lot of the “its simple” view of JSON or even early XML is
    >>> based on its us
    >>>
    >>> From: Cory Casanave <cory-c@modeldriven.com>
    >>> To: "Barnum, Sean D." <sbarnum@mitre.org>, Terry MacDonald <
    >>> terry.macdonald@gmail.com>, "Jordan, Bret" <bret.jordan@bluecoat.com>
    >>> Cc: "cti-users@lists.oasis-open.org" <cti-users@lists.oasis-open.org>, "
    >>> cti-stix@lists.oasis-open.org" <cti-stix@lists.oasis-open.org>,
    >>> "Wunder, John A." <jwunder@mitre.org>
    >>> Date: 2015/10/05 09:04 PM
    >>> Subject: RE: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>> Sent by: <cti-users@lists.oasis-open.org>
    >>> ------------------------------
    >>>
    >>>
    >>>
    >>> Sean,
    >>> I very much agree. A lot of the “its simple” view of JSON or even early
    >>> XML is based on its use for single and highly structured interactions
    >>> between endpoints controlled by the same authority (My server talking to my
    >>> android application).
    >>>
    >>> STIX is several thousand terms and may be used for very different use
    >>> cases that use different viewpoints of the data with different root
    >>> structures. On top of this is the need for extensibility and flexibility.
    >>> This is simply the reality of the domain and the scope of STIX. The bad
    >>> news is that regardless of the serialization format, schema language,
    >>> model, language, etc. It is somewhat complex – that is the real and
    >>> necessary complexity. So I am concerned that the “Pure JSON will be simple”
    >>> view will end in some disappointment. Note that the same concerns of
    >>> complexity are levied against NIEM, another large XML schema based data
    >>> sharing standard.
    >>>
    >>> The good news is we can make it BETTER and as simple as is practical!
    >>> When some of these requirements are folded into XML schema, it adds
    >>> complexity – so perhaps some of these other choices REDUCE complexity even
    >>> if they require some new learning. Where we can add semantic precision
    >>> software can handle some of the load. If we have a way to define fine-tuned
    >>> “profiles”, these may be much simpler for their more limited purpose. We
    >>> can also make the models easier to understand for us humans with graphical
    >>> models linked to semantic definitions.
    >>>
    >>> I am copying the following list from Shawn Riley to show the variety of
    >>> information formats and viewpoints that we are trying to fit together under
    >>> one, many faceted, schema:
    >>>
    >>> Below is some of the typical cybersecurity data and information
    >>> users/analysts/scientists have to organize into some type of body of
    >>> knowledge so they understand their cybersecurity ecosystem. If the
    >>> technology can’t understanding the meaning of the data then it’s the humans
    >>> who have to understand it and “connect the dots”.
    >>>
    >>> Configuration/Anomaly Reporting - Infrastructure Information - Risk
    >>> Posture - Anomalies
    >>>
    >>> Knowledge of Threat Actors - Threat Actor Infrastructure - Threat Actor
    >>> Personas - Collected Threat Actor Indicators - Threat Actor Attribution -
    >>> Trend Analysis - Victim Information
    >>>
    >>> Incident Awareness - Incident Information - Incident Data -
    >>> Infrastructure Impact and Effects - Investigations/cases - Alerting
    >>> Indicators - Victim Information
    >>>
    >>> Indications and Warnings - Events and Alerts - Tipping and Cueing -
    >>> Warnings - Impact assessments - Potential Indicators
    >>>
    >>> Vulnerability Knowledge - Vulnerabilities - Exploits - Potential Victim
    >>> Information
    >>>
    >>> Mitigation Strategies - Coordinated Action Plans - Courses of Action -
    >>> Understanding of Achievable Mitigation Effects
    >>>
    >>> Mitigation Actions and Responses - Computer Network Defense Situational
    >>> Awareness - Action Tasking and Status - Effectiveness Reporting - After
    >>> Action Reporting and Lessons Learned
    >>>
    >>>
    >>> *From:*cti-stix@lists.oasis-open.org [
    >>> mailto:cti-stix@lists.oasis-open.org <cti-stix@lists.oasis-open.org>] *On
    >>> Behalf Of *Barnum, Sean D.
    >>> * Sent:* Monday, October 05, 2015 9:18 AM
    >>> * To:* Terry MacDonald; Jordan, Bret
    >>> * Cc:* cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org;
    >>> Wunder, John A.
    >>> * Subject:* [cti-stix] Re: [cti-users] Re: [cti-stix] [cti-users] MTI
    >>> Binding
    >>>
    >>> I think that using these simple idioms would be great for folks to see
    >>> roughly what the different forms look like but I do not think they would be
    >>> sufficient for comparing size and complexity as a whole.
    >>> These are VERY simple example structures. More complex examples would
    >>> likely differ from these simple ones in how each representation tackle size
    >>> and complexity.
    >>>
    >>> sean
    >>>
    >>> *From: *<cti-users@lists.oasis-open.org> on behalf of Terry MacDonald
    >>> * Date: *Friday, October 2, 2015 at 5:51 PM
    >>> * To: *"Jordan, Bret"
    >>> * Cc: *"cti-users@lists.oasis-open.org", "cti-stix@lists.oasis-open.org",
    >>> John Wunder
    >>> * Subject: *Re: [cti-users] Re: [cti-stix] [cti-users] MTI Binding
    >>>
    >>> +1. Is a nice idea as we can see a size and complexity comparison. Is
    >>> there any chance each person can document the process that the generation
    >>> took? I'm thinking it could be useful to see how complicated the toolchain
    >>> for developing each type of output is.
    >>>
    >>> Cheers
    >>> Terry MacDonald
    >>> On 3 Oct 2015 6:33 am, "Jordan, Bret" <bret.jordan@bluecoat.com> wrote:
    >>> I think this is a great idea..
    >>>
    >>> Thanks,
    >>>
    >>> Bret
    >>>
    >>>
    >>>
    >>> *Bret Jordan CISSP*
    >>> Director of Security Architecture and Standards | Office of the CTO
    >>> Blue Coat Systems
    >>> PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >>> "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    >>> can not be unscrambled is an egg."
    >>> On Oct 2, 2015, at 14:08, Wunder, John A. <jwunder@mitre.org> wrote:
    >>>
    >>> How about we take two of the idioms on the stixproject.github.io site?
    >>>
    >>> - http://stixproject.github.io/documentation/idioms/c2-indicator/
    >>> - http://stixproject.github.io/documentation/idioms/simple-incident/
    >>>
    >>> Thanks for helping out. I think it would be nice to see these as:
    >>>
    >>> - Current STIX XML (Done already)
    >>> - Simplified XML (TBD, maybe if the JSON one is quick I’ll do this too)
    >>> - JSON/JSON-Schema (Wunder)
    >>> - JSON-LD (Casanave)
    >>> - Any others people are interest (PMML, Thrift, ProtoBuf, etc)
    >>>
    >>> John
    >>> On Oct 2, 2015, at 11:50 AM, Cory Casanave <cory-c@modeldriven.com>
    >>> wrote:
    >>>
    >>> Re: Examples.
    >>> Pick your examples, I can help out. Would prefer to baseline off of the
    >>> same schema subset & example data, current STIX is fine to define the
    >>> examples. I suggest at least one that is very simple “pure hierarchical
    >>> data” and at least one with some related entities.
    >>> -Cory
    >>>
    >>>
    >>>
    >>>
    >



  • 29.  Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 11:47
    Hi,

    Terry asked the following question to get a better understanding of
    JSON-LD:

    > If we're free to construct our own STIX specific schema, if we can put
    > in it what we want, and we can derive the schema programmatically from
    > the actual underlying model that sounds very useful.
    > Does this mean that the main difference between the JSON-LD and
    > JSONSchema is just the way that JSON-LD explicitly references the
    > applicable schema (increasing size slightly)? And JSONSchema has an
    > implicit relationship. Correct?

    The way I understand it (I would be grateful if one of the experts
    could refute me here or back me up) is that there is an additional
    difference in the way schemas works:

    - JSONSchema (if it works anyhting like XSLD) allows you to
    strictly specify the form of your json: this field must be here,
    that field may be here, etc.

    - JSON-LD schemas specify for a given 'thing', what kind of
    properties it may have, where the property definition is in
    the form of a key and a value -- the value may be something
    atomic or something that essentially is a reference to another
    'thing', again with properties. JSON-LD does not care whether
    in sending a piece of JSON, you fill out one, two, or all
    possible properties for a given "thing" -- you just add up whatever
    information you receive about a thing.

    Theoretically, JSONSchema and JSON-LD could be used in conjunction,
    i.e., one could use JSONSchema to constrain the way JSON must look
    like, but I guess if we do that then there is little point
    in using JSON-LD in the first place?

    I am still wondering about the following: the advantage of JSON-DL, if
    I understand it correctly, would be that we move towards techniques of
    semantic processing/reasoning, because JSON-DL transforms into RDF. My
    (limited and maybe faulty understanding) is that when modeling for
    RDF, one strives to pack as much information about a thing as possible
    into key-value pairs with atomic values, using relationships to other
    things where the other thing truly has some semantic meaning. In that
    respect, there is a penalty on more complicated things such as
    ordered lists, nested structures, etc. JSON-DL allows me to describe
    order, nested structures, etc., but when transformed into RDL, these
    structures give rise to auxiliary nodes: for example, an ordered list
    of n elements gives rise to n auxiliary nodes that represent that list
    as a graph.

    If it is true, then a more or less direct translation of STIX/CybOX
    into JSON-LD certainly, though possible, probably would not serve the
    purpose of enabling easy use of ontological reasoning using RDF or
    similar, because the translation of the model would result in more
    auxiliary nodes than "normal" nodes: STIX and CYBOX just love nested
    structures.

    So my question: would an adoption of JSON-LD in a way that actually
    leverages the fact that JSON-LD translates into RDF, mean that we have
    to drastically change the way in which STIX/CybOX are modeled, in many
    instances removing nesting as it exists today in STIX/CybOX?

    Kind regards,

    Bernd




  • 30.  Re: Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 12:11
    Bernd,

    I think it's also important to keep the following in mind.

    If the STIX specification data model is JSONSchema then the only
    serialization format is JSON.

    If the STIX specification data model is RDF/OWL then you can use any of the
    RDF serializations formats (JSON-LD, RDF/XML, Turtle, N-Triples, etc) to
    send the data. Even if you say JSON-LD is the primary on the wire
    serialization because it's mapped to the RDF/OWL data model existing RDF
    translation tools can translate JSON-LD to any of the other valid RDF
    serializations without having to create additional data models.

    With the RDF/OWL data model and using RDF based serializations then people
    can produce and consume the exact same data in the RDF format that works
    best for them (JSON-LD, RDF/XML, Turtle, N-Triples, RDFa, etc). There are
    dozens of RDF serialization translators out there that can do this without
    changing the STIX context or content, just the serialization wrapper on the
    wire.

    I think most people aren't wrapping their heads around this difference
    between the two approaches.

    Shawn

    On Wed, Oct 7, 2015 at 7:46 AM, Grobauer, Bernd <Bernd.Grobauer@siemens.com>
    wrote:

    > Hi,
    >
    > Terry asked the following question to get a better understanding of
    > JSON-LD:
    >
    > > If we're free to construct our own STIX specific schema, if we can put
    > > in it what we want, and we can derive the schema programmatically from
    > > the actual underlying model that sounds very useful.
    > > Does this mean that the main difference between the JSON-LD and
    > > JSONSchema is just the way that JSON-LD explicitly references the
    > > applicable schema (increasing size slightly)? And JSONSchema has an
    > > implicit relationship. Correct?
    >
    > The way I understand it (I would be grateful if one of the experts
    > could refute me here or back me up) is that there is an additional
    > difference in the way schemas works:
    >
    > - JSONSchema (if it works anyhting like XSLD) allows you to
    > strictly specify the form of your json: this field must be here,
    > that field may be here, etc.
    >
    > - JSON-LD schemas specify for a given 'thing', what kind of
    > properties it may have, where the property definition is in
    > the form of a key and a value -- the value may be something
    > atomic or something that essentially is a reference to another
    > 'thing', again with properties. JSON-LD does not care whether
    > in sending a piece of JSON, you fill out one, two, or all
    > possible properties for a given "thing" -- you just add up whatever
    > information you receive about a thing.
    >
    > Theoretically, JSONSchema and JSON-LD could be used in conjunction,
    > i.e., one could use JSONSchema to constrain the way JSON must look
    > like, but I guess if we do that then there is little point
    > in using JSON-LD in the first place?
    >
    > I am still wondering about the following: the advantage of JSON-DL, if
    > I understand it correctly, would be that we move towards techniques of
    > semantic processing/reasoning, because JSON-DL transforms into RDF. My
    > (limited and maybe faulty understanding) is that when modeling for
    > RDF, one strives to pack as much information about a thing as possible
    > into key-value pairs with atomic values, using relationships to other
    > things where the other thing truly has some semantic meaning. In that
    > respect, there is a penalty on more complicated things such as
    > ordered lists, nested structures, etc. JSON-DL allows me to describe
    > order, nested structures, etc., but when transformed into RDL, these
    > structures give rise to auxiliary nodes: for example, an ordered list
    > of n elements gives rise to n auxiliary nodes that represent that list
    > as a graph.
    >
    > If it is true, then a more or less direct translation of STIX/CybOX
    > into JSON-LD certainly, though possible, probably would not serve the
    > purpose of enabling easy use of ontological reasoning using RDF or
    > similar, because the translation of the model would result in more
    > auxiliary nodes than "normal" nodes: STIX and CYBOX just love nested
    > structures.
    >
    > So my question: would an adoption of JSON-LD in a way that actually
    > leverages the fact that JSON-LD translates into RDF, mean that we have
    > to drastically change the way in which STIX/CybOX are modeled, in many
    > instances removing nesting as it exists today in STIX/CybOX?
    >
    > Kind regards,
    >
    > Bernd
    >
    >



  • 31.  Re: [cti-users] Re: Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 13:58
    I really don't think, and certainly hope very deeply, that Bret is not proposing STIX goes straight to JSONSchema without having a higher level UML or other abstract data model. What I believe is being proposed is that the abstract data model have an official implementation using JSONSchema, and further that that schema defines a very traditional looking tree hierarchy of objects & properties. I suspect one could define JSON-LD using JSONSchema, but it would be a very "loose" schema.

    Here's an email thread from the "linked-json" mailing list discussing the relationship between JSON-LD and JSON Schema:
    https://lists.w3.org/Archives/Public/public-linked-json/2013Aug/0050.html

    - Jasen.

    From: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>> on behalf of Shawn Riley <shawn.p.riley@gmail.com<mailto:shawn.p.riley@gmail.com>>
    Date: Wednesday, October 7, 2015 at 8:11 AM
    To: "Grobauer, Bernd" <Bernd.Grobauer@siemens.com<mailto:Bernd.Grobauer@siemens.com>>
    Cc: "terry.macdonald@threatloop.com<mailto:terry.macdonald@threatloop.com>" <terry.macdonald@threatloop.com<mailto:terry.macdonald@threatloop.com>>, "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org<mailto:jwunder@mitre.org>>
    Subject: [cti-users] Re: Towards a better understanding of JSON-LD (Was: MTI Binding)

    Bernd,

    I think it's also important to keep the following in mind.

    If the STIX specification data model is JSONSchema then the only serialization format is JSON.




  • 32.  Re: [cti-users] Re: Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 14:04
    If you remember the XML vs RDF analogy of A Christmas Carol from Cambridge
    Semantics, http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml,
    this example might help in better understanding the JSON vs RDF/JSON-LD
    choice.


    If STIX reports were Books.


    A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)


    A STIX RDF/OWL Book Store offers STIX Books in multiple RDF serializations.
    RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle),
    RDF/N-Triples (Apple iPad), etc.


    The content of the STIX books from the STIX RDF/OWL Book Store is the same
    regardless of the on the wire serialization (RDF/JSON-LD, RDF/XML, etc)
    with dozens of tools already available that can convert between RDF
    serialization formats in case you want to read your book in another RDF
    serialization.


    I have to believe that giving the community a choice of valid RDF based
    serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc)
    will increase adoption faster than locking everyone into one serialization
    format like Hardback (JSON) or Paperback (XML).




    On Wed, Oct 7, 2015 at 9:58 AM, Jacobsen, Jasen W. <jasenj1@mitre.org>
    wrote:

    > I really don't think, and certainly hope very deeply, that Bret is not
    > proposing STIX goes straight to JSONSchema without having a higher level
    > UML or other abstract data model. What I believe is being proposed is that
    > the abstract data model have an official implementation using JSONSchema,
    > and further that that schema defines a very traditional looking tree
    > hierarchy of objects & properties. I suspect one could define JSON-LD using
    > JSONSchema, but it would be a very "loose" schema.
    >
    > Here's an email thread from the "linked-json" mailing list discussing the
    > relationship between JSON-LD and JSON Schema:
    > https://lists.w3.org/Archives/Public/public-linked-json/2013Aug/0050.html
    >
    > - Jasen.
    >
    > From: <cti-users@lists.oasis-open.org> on behalf of Shawn Riley <
    > shawn.p.riley@gmail.com>
    > Date: Wednesday, October 7, 2015 at 8:11 AM
    > To: "Grobauer, Bernd" <Bernd.Grobauer@siemens.com>
    > Cc: "terry.macdonald@threatloop.com" <terry.macdonald@threatloop.com>, "
    > cti-users@lists.oasis-open.org" <cti-users@lists.oasis-open.org>,
    > "Wunder, John A." <jwunder@mitre.org>
    > Subject: [cti-users] Re: Towards a better understanding of JSON-LD (Was:
    > MTI Binding)
    >
    > Bernd,
    >
    > I think it's also important to keep the following in mind.
    >
    > If the STIX specification data model is JSONSchema then the only
    > serialization format is JSON.
    >
    >



  • 33.  Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 15:18
    You said:

    "I have to believe that giving the community a choice of valid RDF based serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc) will increase adoption faster than locking everyone into one serialization format like Hardback (JSON) or Paperback (XML). "

    This is not a good idea IMO. We need a default on the wire solution that every one uses. Eric mentioned that in his email earlier today. Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic failure and no one will be able to talk to each other.

    Remember developers will be working with the on-the-wire formats. I do not like the hand waving of, oh the software will figure it out. No, developers need to write the software that consumes it and does something with it. Further, given that most people in this community have a hard time with understanding RDF and why it is needed, that goes to show that most developers in the wild probably also have a hard time understanding it. The average open source, web application, and APP developers want JSON, plain and simple and probably do not know how to even work with RDF. The more complicated we make this, the more esoteric solutions we use, the less likely they will code to it.

    I am a huge proponent of UML models with JSON schema bindings. Very simple, very easy to understand, and very easy to use. The cost of entry for people to get started is minimal. If we want adoption, we need things to be simple and easy. I do not view RDF as a solution for STIX as the complexity cost will drive people away. UML is a great middle ground, average developers and companies and vendors can look at the UML models and quickly and easily understand what is going on and what they need to do in their products / software / solutions. Then if the data over the wire is in JSON schema, they can quickly and easily put this in to use in their PHP applications, their JAVA applications, their C++ applications, etc...



    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    > On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM> wrote:
    >
    > If you remember the XML vs RDF analogy of A Christmas Carol from Cambridge Semantics, http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml <http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml>, this example might help in better understanding the JSON vs RDF/JSON-LD choice.
    >
    >
    >
    > If STIX reports were Books.
    >
    >
    >
    > A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)
    >
    >
    >
    > A STIX RDF/OWL Book Store offers STIX Books in multiple RDF serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.
    >
    >
    >
    > The content of the STIX books from the STIX RDF/OWL Book Store is the same regardless of the on the wire serialization (RDF/JSON-LD, RDF/XML, etc) with dozens of tools already available that can convert between RDF serialization formats in case you want to read your book in another RDF serialization.
    >
    >
    >
    > I have to believe that giving the community a choice of valid RDF based serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc) will increase adoption faster than locking everyone into one serialization format like Hardback (JSON) or Paperback (XML).
    >
    >
    >
    >
    >




  • 34.  Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 15:40
    Help me understand this statement "Allowing people to send "RDF/JSON-LD
    (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples
    " will just mean this effort will be an epic failure and no one will be
    able to talk to each other"

    Since all of those formats are RDF serializations, there are existing
    translators today that can convert RDF/JSON-LD to RDF/XML or RDF/Turtle or
    any other RDF/serialization format. This should increase adoption without
    forcing everyone to only use JSON.



    On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret <bret.jordan@bluecoat.com>
    wrote:

    > You said:
    >
    > "I have to believe that giving the community a choice of valid RDF based
    > serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc)
    > will increase adoption faster than locking everyone into one serialization
    > format like Hardback (JSON) or Paperback (XML). "
    >
    > This is not a good idea IMO. We need a default on the wire solution that
    > every one uses. Eric mentioned that in his email earlier today. Allowing
    > people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle
    > (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic
    > failure and no one will be able to talk to each other.
    >
    > Remember developers will be working with the on-the-wire formats. I do
    > not like the hand waving of, oh the software will figure it out. No,
    > developers need to write the software that consumes it and does something
    > with it. Further, given that most people in this community have a hard
    > time with understanding RDF and why it is needed, that goes to show that
    > most developers in the wild probably also have a hard time understanding
    > it. The average open source, web application, and APP developers want
    > JSON, plain and simple and probably do not know how to even work with RDF.
    > The more complicated we make this, the more esoteric solutions we use, the
    > less likely they will code to it.
    >
    > I am a huge proponent of UML models with JSON schema bindings. Very
    > simple, very easy to understand, and very easy to use. The cost of entry
    > for people to get started is minimal. If we want adoption, we need things
    > to be simple and easy. I do not view RDF as a solution for STIX as the
    > complexity cost will drive people away. UML is a great middle ground,
    > average developers and companies and vendors can look at the UML models and
    > quickly and easily understand what is going on and what they need to do in
    > their products / software / solutions. Then if the data over the wire is
    > in JSON schema, they can quickly and easily put this in to use in their PHP
    > applications, their JAVA applications, their C++ applications, etc...
    >
    >
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > *Bret Jordan CISSP*
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > can not be unscrambled is an egg."
    >
    > On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM> wrote:
    >
    > If you remember the XML vs RDF analogy of A Christmas Carol from Cambridge
    > Semantics,
    > http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml, this
    > example might help in better understanding the JSON vs RDF/JSON-LD choice.
    >
    >
    > If STIX reports were Books.
    >
    >
    > A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)
    >
    >
    > A STIX RDF/OWL Book Store offers STIX Books in multiple RDF
    > serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle
    > (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.
    >
    >
    > The content of the STIX books from the STIX RDF/OWL Book Store is the same
    > regardless of the on the wire serialization (RDF/JSON-LD, RDF/XML, etc)
    > with dozens of tools already available that can convert between RDF
    > serialization formats in case you want to read your book in another RDF
    > serialization.
    >
    >
    > I have to believe that giving the community a choice of valid RDF based
    > serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc)
    > will increase adoption faster than locking everyone into one serialization
    > format like Hardback (JSON) or Paperback (XML).
    >
    >
    >
    >
    >



  • 35.  RE: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 15:48
    For “RDF people”, this is a non-issue. You call a library to read or write your data and it takes care of serialization. You will be able to accept data in any of the formats and not care, you deal with the RDF API and local language objects. This is why my specific knowledge of JSON-LD is minimal, it is just something a library takes care of.

    I do understand the perspective of “Javascript people” who need to deal with the data in a specific syntax and don’t want to know about RDF.
    In that the RDF people should not care and JSON people care a bunch it would seem a good idea to have a default serialization in JSON.

    (I said I would shut up and I’m not doing well)

    From: cti-users@lists.oasis-open.org [mailto:cti-users@lists.oasis-open.org] On Behalf Of Shawn Riley
    Sent: Wednesday, October 07, 2015 11:40 AM
    To: Jordan, Bret
    Cc: cti-users@lists.oasis-open.org
    Subject: Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Help me understand this statement "Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic failure and no one will be able to talk to each other"

    Since all of those formats are RDF serializations, there are existing translators today that can convert RDF/JSON-LD to RDF/XML or RDF/Turtle or any other RDF/serialization format. This should increase adoption without forcing everyone to only use JSON.



    On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret <bret.jordan@bluecoat.com<mailto:bret.jordan@bluecoat.com>> wrote:
    You said:

    "I have to believe that giving the community a choice of valid RDF based serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc) will increase adoption faster than locking everyone into one serialization format like Hardback (JSON) or Paperback (XML). "

    This is not a good idea IMO. We need a default on the wire solution that every one uses. Eric mentioned that in his email earlier today. Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic failure and no one will be able to talk to each other.

    Remember developers will be working with the on-the-wire formats. I do not like the hand waving of, oh the software will figure it out. No, developers need to write the software that consumes it and does something with it. Further, given that most people in this community have a hard time with understanding RDF and why it is needed, that goes to show that most developers in the wild probably also have a hard time understanding it. The average open source, web application, and APP developers want JSON, plain and simple and probably do not know how to even work with RDF. The more complicated we make this, the more esoteric solutions we use, the less likely they will code to it.

    I am a huge proponent of UML models with JSON schema bindings. Very simple, very easy to understand, and very easy to use. The cost of entry for people to get started is minimal. If we want adoption, we need things to be simple and easy. I do not view RDF as a solution for STIX as the complexity cost will drive people away. UML is a great middle ground, average developers and companies and vendors can look at the UML models and quickly and easily understand what is going on and what they need to do in their products / software / solutions. Then if the data over the wire is in JSON schema, they can quickly and easily put this in to use in their PHP applications, their JAVA applications, their C++ applications, etc...


    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM<mailto:shawn.p.riley@GMAIL.COM>> wrote:

    If you remember the XML vs RDF analogy of A Christmas Carol from Cambridge Semantics, http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml, this example might help in better understanding the JSON vs RDF/JSON-LD choice.

    If STIX reports were Books.

    A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)

    A STIX RDF/OWL Book Store offers STIX Books in multiple RDF serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.

    The content of the STIX books from the STIX RDF/OWL Book Store is the same regardless of the on the wire serialization (RDF/JSON-LD, RDF/XML, etc) with dozens of tools already available that can convert between RDF serialization formats in case you want to read your book in another RDF serialization.

    I have to believe that giving the community a choice of valid RDF based serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc) will increase adoption faster than locking everyone into one serialization format like Hardback (JSON) or Paperback (XML).







  • 36.  Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 15:58
    Just in case you are looking for developers/engineers that understand RDF,
    here is a 2012 list of some of the companies who use semantic technology
    (RDF) where you might be able to find some experience.
    http://www.webnodes.com/who-uses-semantic-tech-today

    On Wed, Oct 7, 2015 at 11:47 AM, Cory Casanave <cory-c@modeldriven.com>
    wrote:

    > For “RDF people”, this is a non-issue. You call a library to read or write
    > your data and it takes care of serialization. You will be able to accept
    > data in any of the formats and not care, you deal with the RDF API and
    > local language objects. This is why my specific knowledge of JSON-LD is
    > minimal, it is just something a library takes care of.
    >
    >
    >
    > I do understand the perspective of “Javascript people” who need to deal
    > with the data in a specific syntax and don’t want to know about RDF.
    >
    > In that the RDF people should not care and JSON people care a bunch it
    > would seem a good idea to have a default serialization in JSON.
    >
    >
    >
    > (I said I would shut up and I’m not doing well)
    >
    >
    >
    > *From:* cti-users@lists.oasis-open.org [mailto:
    > cti-users@lists.oasis-open.org] *On Behalf Of *Shawn Riley
    > *Sent:* Wednesday, October 07, 2015 11:40 AM
    > *To:* Jordan, Bret
    > *Cc:* cti-users@lists.oasis-open.org
    > *Subject:* Re: [cti-users] Towards a better understanding of JSON-LD
    > (Was: MTI Binding)
    >
    >
    >
    > Help me understand this statement "Allowing people to send "RDF/JSON-LD
    > (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples
    > " will just mean this effort will be an epic failure and no one will be
    > able to talk to each other"
    >
    >
    >
    > Since all of those formats are RDF serializations, there are existing
    > translators today that can convert RDF/JSON-LD to RDF/XML or RDF/Turtle or
    > any other RDF/serialization format. This should increase adoption without
    > forcing everyone to only use JSON.
    >
    >
    >
    >
    >
    >
    >
    > On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret <bret.jordan@bluecoat.com>
    > wrote:
    >
    > You said:
    >
    >
    >
    > "I have to believe that giving the community a choice of valid RDF based
    > serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc)
    > will increase adoption faster than locking everyone into one serialization
    > format like Hardback (JSON) or Paperback (XML). "
    >
    >
    >
    > This is not a good idea IMO. We need a default on the wire solution that
    > every one uses. Eric mentioned that in his email earlier today. Allowing
    > people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle
    > (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic
    > failure and no one will be able to talk to each other.
    >
    >
    >
    > Remember developers will be working with the on-the-wire formats. I do
    > not like the hand waving of, oh the software will figure it out. No,
    > developers need to write the software that consumes it and does something
    > with it. Further, given that most people in this community have a hard
    > time with understanding RDF and why it is needed, that goes to show that
    > most developers in the wild probably also have a hard time understanding
    > it. The average open source, web application, and APP developers want
    > JSON, plain and simple and probably do not know how to even work with RDF.
    > The more complicated we make this, the more esoteric solutions we use, the
    > less likely they will code to it.
    >
    >
    >
    > I am a huge proponent of UML models with JSON schema bindings. Very
    > simple, very easy to understand, and very easy to use. The cost of entry
    > for people to get started is minimal. If we want adoption, we need things
    > to be simple and easy. I do not view RDF as a solution for STIX as the
    > complexity cost will drive people away. UML is a great middle ground,
    > average developers and companies and vendors can look at the UML models and
    > quickly and easily understand what is going on and what they need to do in
    > their products / software / solutions. Then if the data over the wire is
    > in JSON schema, they can quickly and easily put this in to use in their PHP
    > applications, their JAVA applications, their C++ applications, etc...
    >
    >
    >
    >
    >
    > Thanks,
    >
    >
    >
    > Bret
    >
    >
    >
    >
    >
    >
    >
    > *Bret Jordan CISSP*
    >
    > Director of Security Architecture and Standards | Office of the CTO
    >
    > Blue Coat Systems
    >
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > can not be unscrambled is an egg."
    >
    >
    >
    > On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM> wrote:
    >
    >
    >
    > If you remember the XML vs RDF analogy of A Christmas Carol from Cambridge
    > Semantics,
    > http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml, this
    > example might help in better understanding the JSON vs RDF/JSON-LD choice.
    >
    >
    >
    > If STIX reports were Books.
    >
    >
    >
    > A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)
    >
    >
    >
    > A STIX RDF/OWL Book Store offers STIX Books in multiple RDF
    > serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle
    > (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.
    >
    >
    >
    > The content of the STIX books from the STIX RDF/OWL Book Store is the same
    > regardless of the on the wire serialization (RDF/JSON-LD, RDF/XML, etc)
    > with dozens of tools already available that can convert between RDF
    > serialization formats in case you want to read your book in another RDF
    > serialization.
    >
    >
    >
    > I have to believe that giving the community a choice of valid RDF based
    > serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc)
    > will increase adoption faster than locking everyone into one serialization
    > format like Hardback (JSON) or Paperback (XML).
    >
    >
    >
    >
    >
    >
    >
    >
    >



  • 37.  Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 15:59
    Yes, for professional modelers and people that work in RDF every day, this would seem like the best thing to do. You are using advanced tools, software packages and libraries that can consume anything as long as it is RDF.

    The problem is, most of the developers that we need to recruit to write tools and software to work with STIX are not professional modelers and RDF people. They work in PHP and JavaScript, or in Objective-C, Android-Java, C++, Python, Perl, Ruby etc. They need to read in a blob of data over the wire, say JSON. Stick that in to memory somewhere. Then unmarshal that in to a struct or series of maps/dictionaries and then do something with it.

    Further, most vendors that build security products or networking products use a PHP interface or Java interface with a ton of JSON and a REST API. Lets not make things hard for them. We need to recruit them. We need to get them on board.

    Speaking from my past experience in start-ups. If the technology is outside of the development stack, and it is a checkbox feature, then it will never get done. We need this to be so simple and easy that everyone says "why would I NOT do this, lets just do it make it happen". At RSA and Blackhat I talked with a lot of startups that said, "if you would only do JSON we could adopt this". I talked with Facebook and they said if we could do JSON, they could support it natively in their solution.

    If we want to win, lets make it easy for organizations to understand and use.

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    > On Oct 7, 2015, at 09:47, Cory Casanave <cory-c@modeldriven.com> wrote:
    >
    > For “RDF people”, this is a non-issue. You call a library to read or write your data and it takes care of serialization. You will be able to accept data in any of the formats and not care, you deal with the RDF API and local language objects. This is why my specific knowledge of JSON-LD is minimal, it is just something a library takes care of.
    >
    > I do understand the perspective of “Javascript people” who need to deal with the data in a specific syntax and don’t want to know about RDF.
    > In that the RDF people should not care and JSON people care a bunch it would seem a good idea to have a default serialization in JSON.
    >
    > (I said I would shut up and I’m not doing well)
    >
    > From: cti-users@lists.oasis-open.org [mailto:cti-users@lists.oasis-open.org] On Behalf Of Shawn Riley
    > Sent: Wednesday, October 07, 2015 11:40 AM
    > To: Jordan, Bret
    > Cc: cti-users@lists.oasis-open.org
    > Subject: Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)
    >
    > Help me understand this statement "Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic failure and no one will be able to talk to each other"
    >
    > Since all of those formats are RDF serializations, there are existing translators today that can convert RDF/JSON-LD to RDF/XML or RDF/Turtle or any other RDF/serialization format. This should increase adoption without forcing everyone to only use JSON.
    >
    >
    >
    > On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret <bret.jordan@bluecoat.com <mailto:bret.jordan@bluecoat.com>> wrote:
    > You said:
    >
    > "I have to believe that giving the community a choice of valid RDF based serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc) will increase adoption faster than locking everyone into one serialization format like Hardback (JSON) or Paperback (XML). "
    >
    > This is not a good idea IMO. We need a default on the wire solution that every one uses. Eric mentioned that in his email earlier today. Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic failure and no one will be able to talk to each other.
    >
    > Remember developers will be working with the on-the-wire formats. I do not like the hand waving of, oh the software will figure it out. No, developers need to write the software that consumes it and does something with it. Further, given that most people in this community have a hard time with understanding RDF and why it is needed, that goes to show that most developers in the wild probably also have a hard time understanding it. The average open source, web application, and APP developers want JSON, plain and simple and probably do not know how to even work with RDF. The more complicated we make this, the more esoteric solutions we use, the less likely they will code to it.
    >
    > I am a huge proponent of UML models with JSON schema bindings. Very simple, very easy to understand, and very easy to use. The cost of entry for people to get started is minimal. If we want adoption, we need things to be simple and easy. I do not view RDF as a solution for STIX as the complexity cost will drive people away. UML is a great middle ground, average developers and companies and vendors can look at the UML models and quickly and easily understand what is going on and what they need to do in their products / software / solutions. Then if the data over the wire is in JSON schema, they can quickly and easily put this in to use in their PHP applications, their JAVA applications, their C++ applications, etc...
    >
    >
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > Bret Jordan CISSP
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."
    >
    > On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM <mailto:shawn.p.riley@GMAIL.COM>> wrote:
    >
    > If you remember the XML vs RDF analogy of A Christmas Carol from Cambridge Semantics, http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml <http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml>, this example might help in better understanding the JSON vs RDF/JSON-LD choice.
    >
    > If STIX reports were Books.
    >
    > A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)
    >
    > A STIX RDF/OWL Book Store offers STIX Books in multiple RDF serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.
    >
    > The content of the STIX books from the STIX RDF/OWL Book Store is the same regardless of the on the wire serialization (RDF/JSON-LD, RDF/XML, etc) with dozens of tools already available that can convert between RDF serialization formats in case you want to read your book in another RDF serialization.
    >
    > I have to believe that giving the community a choice of valid RDF based serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc) will increase adoption faster than locking everyone into one serialization format like Hardback (JSON) or Paperback (XML).




  • 38.  Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 16:39
    By the way, data.gov has 7046 data sets available in RDF. Most are
    available in multiple formats (CSV, RDF, JSON, XML).
    http://catalog.data.gov/dataset?res_format=RDF&_res_format_limit=0#sec-tags

    If you want to play with RDF data for yourself, select a data set in RDF,
    if you are at a desktop and don't want to set up any code or libraries use
    http://rdf-translator.appspot.com/

    You can copy and paste the RDF into the 'input field' box and select which
    RDF serialization format you want to see the data in. This way you can see
    how RDF data looks at RDF/JSON-LD, RDF/XML, RDF XML (pretty), RDFa,
    N-Triples, N3, etc.

    You could then look at the same data in native JSON (available on data.gov)
    or RDF in it's various serialization formats (via data.gov and the
    translator).

    Thought this might help until we get some STIX specific examples shared
    out.

    On Wed, Oct 7, 2015 at 11:58 AM, Jordan, Bret <bret.jordan@bluecoat.com>
    wrote:

    > Yes, for professional modelers and people that work in RDF every day, this
    > would seem like the best thing to do. You are using advanced tools,
    > software packages and libraries that can consume anything as long as it is
    > RDF.
    >
    > The problem is, most of the developers that we need to recruit to write
    > tools and software to work with STIX are not professional modelers and RDF
    > people. They work in PHP and JavaScript, or in Objective-C, Android-Java,
    > C++, Python, Perl, Ruby etc. They need to read in a blob of data over the
    > wire, say JSON. Stick that in to memory somewhere. Then unmarshal that in
    > to a struct or series of maps/dictionaries and then do something with it.
    >
    > Further, most vendors that build security products or networking products
    > use a PHP interface or Java interface with a ton of JSON and a REST API.
    > Lets not make things hard for them. We need to recruit them. We need to
    > get them on board.
    >
    > Speaking from my past experience in start-ups. If the technology is
    > outside of the development stack, and it is a checkbox feature, then it
    > will never get done. We need this to be so simple and easy that everyone
    > says "why would I NOT do this, lets just do it make it happen". At RSA and
    > Blackhat I talked with a lot of startups that said, "if you would only do
    > JSON we could adopt this". I talked with Facebook and they said if we
    > could do JSON, they could support it natively in their solution.
    >
    > If we want to win, lets make it easy for organizations to understand and
    > use.
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > *Bret Jordan CISSP*
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > can not be unscrambled is an egg."
    >
    > On Oct 7, 2015, at 09:47, Cory Casanave <cory-c@modeldriven.com> wrote:
    >
    > For “RDF people”, this is a non-issue. You call a library to read or write
    > your data and it takes care of serialization. You will be able to accept
    > data in any of the formats and not care, you deal with the RDF API and
    > local language objects. This is why my specific knowledge of JSON-LD is
    > minimal, it is just something a library takes care of.
    >
    > I do understand the perspective of “Javascript people” who need to deal
    > with the data in a specific syntax and don’t want to know about RDF.
    > In that the RDF people should not care and JSON people care a bunch it
    > would seem a good idea to have a default serialization in JSON.
    >
    > (I said I would shut up and I’m not doing well)
    >
    > *From:* cti-users@lists.oasis-open.org [
    > mailto:cti-users@lists.oasis-open.org <cti-users@lists.oasis-open.org>] *On
    > Behalf Of *Shawn Riley
    > *Sent:* Wednesday, October 07, 2015 11:40 AM
    > *To:* Jordan, Bret
    > *Cc:* cti-users@lists.oasis-open.org
    > *Subject:* Re: [cti-users] Towards a better understanding of JSON-LD
    > (Was: MTI Binding)
    >
    > Help me understand this statement "Allowing people to send "RDF/JSON-LD
    > (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples
    > " will just mean this effort will be an epic failure and no one will be
    > able to talk to each other"
    >
    > Since all of those formats are RDF serializations, there are existing
    > translators today that can convert RDF/JSON-LD to RDF/XML or RDF/Turtle or
    > any other RDF/serialization format. This should increase adoption without
    > forcing everyone to only use JSON.
    >
    >
    >
    > On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret <bret.jordan@bluecoat.com>
    > wrote:
    > You said:
    >
    > "I have to believe that giving the community a choice of valid RDF based
    > serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc)
    > will increase adoption faster than locking everyone into one serialization
    > format like Hardback (JSON) or Paperback (XML). "
    >
    > This is not a good idea IMO. We need a default on the wire solution that
    > every one uses. Eric mentioned that in his email earlier today. Allowing
    > people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle
    > (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic
    > failure and no one will be able to talk to each other.
    >
    > Remember developers will be working with the on-the-wire formats. I do
    > not like the hand waving of, oh the software will figure it out. No,
    > developers need to write the software that consumes it and does something
    > with it. Further, given that most people in this community have a hard
    > time with understanding RDF and why it is needed, that goes to show that
    > most developers in the wild probably also have a hard time understanding
    > it. The average open source, web application, and APP developers want
    > JSON, plain and simple and probably do not know how to even work with RDF.
    > The more complicated we make this, the more esoteric solutions we use, the
    > less likely they will code to it.
    >
    > I am a huge proponent of UML models with JSON schema bindings. Very
    > simple, very easy to understand, and very easy to use. The cost of entry
    > for people to get started is minimal. If we want adoption, we need things
    > to be simple and easy. I do not view RDF as a solution for STIX as the
    > complexity cost will drive people away. UML is a great middle ground,
    > average developers and companies and vendors can look at the UML models and
    > quickly and easily understand what is going on and what they need to do in
    > their products / software / solutions. Then if the data over the wire is
    > in JSON schema, they can quickly and easily put this in to use in their PHP
    > applications, their JAVA applications, their C++ applications, etc...
    >
    >
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > *Bret Jordan CISSP*
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > can not be unscrambled is an egg."
    >
    >
    > On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM> wrote:
    >
    > If you remember the XML vs RDF analogy of A Christmas Carol from Cambridge
    > Semantics,
    > http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml, this
    > example might help in better understanding the JSON vs RDF/JSON-LD choice.
    >
    > If STIX reports were Books.
    >
    > A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)
    >
    > A STIX RDF/OWL Book Store offers STIX Books in multiple RDF
    > serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle
    > (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.
    >
    > The content of the STIX books from the STIX RDF/OWL Book Store is the same
    > regardless of the on the wire serialization (RDF/JSON-LD, RDF/XML, etc)
    > with dozens of tools already available that can convert between RDF
    > serialization formats in case you want to read your book in another RDF
    > serialization.
    >
    > I have to believe that giving the community a choice of valid RDF based
    > serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc)
    > will increase adoption faster than locking everyone into one serialization
    > format like Hardback (JSON) or Paperback (XML).
    >
    >
    >



  • 39.  Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 16:57
    Very well put, Bret. This reflects our position as a security startup
    100%. Robust JSON bindings would greatly accelerate/facilitate adoption
    of STIX into our stack.


    On 10/7/15 8:58 AM, Jordan, Bret wrote:
    > The problem is, most of the developers that we need to recruit to
    > write tools and software to work with STIX are not professional
    > modelers and RDF people. They work in PHP and JavaScript, or in
    > Objective-C, Android-Java, C++, Python, Perl, Ruby etc. They need to
    > read in a blob of data over the wire, say JSON. Stick that in to
    > memory somewhere. Then unmarshal that in to a struct or series of
    > maps/dictionaries and then do something with it.
    >
    > Further, most vendors that build security products or networking
    > products use a PHP interface or Java interface with a ton of JSON and
    > a REST API. Lets not make things hard for them. We need to recruit
    > them. We need to get them on board.
    >
    > Speaking from my past experience in start-ups. If the technology is
    > outside of the development stack, and it is a checkbox feature, then
    > it will never get done. We need this to be so simple and easy that
    > everyone says "why would I NOT do this, lets just do it make it
    > happen". At RSA and Blackhat I talked with a lot of startups that
    > said, "if you would only do JSON we could adopt this". I talked with
    > Facebook and they said if we could do JSON, they could support it
    > natively in their solution.
    >
    > If we want to win, lets make it easy for organizations to understand
    > and use.
    >
    > Thanks,
    >
    > Bret
    >
    >
    >
    > *Bret Jordan CISSP*
    > Director of Security Architecture and Standards | Office of the CTO
    > Blue Coat Systems
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing
    > that can not be unscrambled is an egg."
    >
    >> On Oct 7, 2015, at 09:47, Cory Casanave <cory-c@modeldriven.com
    >> <mailto:cory-c@modeldriven.com>> wrote:
    >>
    >> For “RDF people”, this is a non-issue. You call a library to read or
    >> write your data and it takes care of serialization. You will be able
    >> to accept data in any of the formats and not care, you deal with the
    >> RDF API and local language objects. This is why my specific knowledge
    >> of JSON-LD is minimal, it is just something a library takes care of.
    >>
    >> I do understand the perspective of “Javascript people” who need to
    >> deal with the data in a specific syntax and don’t want to know about RDF.
    >> In that the RDF people should not care and JSON people care a bunch
    >> it would seem a good idea to have a default serialization in JSON.
    >>
    >> (I said I would shut up and I’m not doing well)
    >>
    >> *From:* cti-users@lists.oasis-open.org
    >> <mailto:cti-users@lists.oasis-open.org>
    >> [mailto:cti-users@lists.oasis-open.org] *On Behalf Of *Shawn Riley
    >> *Sent:* Wednesday, October 07, 2015 11:40 AM
    >> *To:* Jordan, Bret
    >> *Cc:* cti-users@lists.oasis-open.org
    >> <mailto:cti-users@lists.oasis-open.org>
    >> *Subject:* Re: [cti-users] Towards a better understanding of JSON-LD
    >> (Was: MTI Binding)
    >>
    >> Help me understand this statement "Allowing people to send
    >> "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon
    >> Kindle), RDF/N-Triples " will just mean this effort will be an epic
    >> failure and no one will be able to talk to each other"
    >>
    >> Since all of those formats are RDF serializations, there are existing
    >> translators today that can convert RDF/JSON-LD to RDF/XML or
    >> RDF/Turtle or any other RDF/serialization format. This should
    >> increase adoption without forcing everyone to only use JSON.
    >>
    >>
    >>
    >> On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret
    >> <bret.jordan@bluecoat.com <mailto:bret.jordan@bluecoat.com>> wrote:
    >> You said:
    >>
    >> "I have to believe that giving the community a choice of valid RDF
    >> based serialization formats (Hardback, Paperback, Amazon Kindle,
    >> Apple iPad, etc) will increase adoption faster than locking everyone
    >> into one serialization format like Hardback (JSON) or Paperback (XML). "
    >>
    >> This is not a good idea IMO. We need a default on the wire solution
    >> that every one uses. Eric mentioned that in his email earlier today.
    >> Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML
    >> (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just
    >> mean this effort will be an epic failure and no one will be able to
    >> talk to each other.
    >>
    >> Remember developers will be working with the on-the-wire formats. I
    >> do not like the hand waving of, oh the software will figure it out.
    >> No, developers need to write the software that consumes it and does
    >> something with it. Further, given that most people in this community
    >> have a hard time with understanding RDF and why it is needed, that
    >> goes to show that most developers in the wild probably also have a
    >> hard time understanding it. The average open source, web
    >> application, and APP developers want JSON, plain and simple and
    >> probably do not know how to even work with RDF. The more complicated
    >> we make this, the more esoteric solutions we use, the less likely
    >> they will code to it.
    >>
    >> I am a huge proponent of UML models with JSON schema bindings. Very
    >> simple, very easy to understand, and very easy to use. The cost of
    >> entry for people to get started is minimal. If we want adoption, we
    >> need things to be simple and easy. I do not view RDF as a solution
    >> for STIX as the complexity cost will drive people away. UML is a
    >> great middle ground, average developers and companies and vendors can
    >> look at the UML models and quickly and easily understand what is
    >> going on and what they need to do in their products / software /
    >> solutions. Then if the data over the wire is in JSON schema, they
    >> can quickly and easily put this in to use in their PHP applications,
    >> their JAVA applications, their C++ applications, etc...
    >>
    >>
    >>
    >>
    >> Thanks,
    >>
    >> Bret
    >>
    >>
    >>
    >> *Bret Jordan CISSP*
    >> Director of Security Architecture and Standards | Office of the CTO
    >> Blue Coat Systems
    >> PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >> "Without cryptography vihv vivc ce xhrnrw, however, the only thing
    >> that can not be unscrambled is an egg."
    >>
    >>
    >> On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM
    >> <mailto:shawn.p.riley@GMAIL.COM>> wrote:
    >>
    >> If you remember the XML vs RDF analogy of A Christmas Carol from
    >> Cambridge
    >> Semantics, http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml,
    >> this example might help in better understanding the JSON vs
    >> RDF/JSON-LD choice.
    >>
    >> If STIX reports were Books.
    >>
    >> A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)
    >>
    >> A STIX RDF/OWL Book Store offers STIX Books in multiple RDF
    >> serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback),
    >> RDF/Turtle (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.
    >>
    >> The content of the STIX books from the STIX RDF/OWL Book Store is
    >> the same regardless of the on the wire serialization
    >> (RDF/JSON-LD, RDF/XML, etc) with dozens of tools already
    >> available that can convert between RDF serialization formats in
    >> case you want to read your book in another RDF serialization.
    >>
    >> I have to believe that giving the community a choice of valid RDF
    >> based serialization formats (Hardback, Paperback, Amazon Kindle,
    >> Apple iPad, etc) will increase adoption faster than locking
    >> everyone into one serialization format like Hardback (JSON) or
    >> Paperback (XML).
    >>
    >

    --
    Chris Roblee
    Director of Engineering
    TruSTAR Technology
    Mobile: +1 781 248 2828
    OpenPGP key ID: 2C9D0D20





  • 40.  Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 17:21
    I'll echo this and add onto it as well, the other much larger consideration
    here is simply the realities of software development. Every new format that
    exists in the wild, is therefore another format that you need to add
    support for to your tools if you want to have a workable ecosystem where
    tools can talk to each-other. It's also another format that needs to be
    developed, tested, and certified, against all of those various other tools,
    both internally and externally.

    It doesn't matter if there are pre-existing translation libraries available
    for this translation. Libraries like that only reduce a tiny amount of the
    overall workload. The marshalling and de-marshalling of data is only one
    piece of the work effort... arguably, its the smaller piece.

    In fact, with every new wire format, the integration work required will
    increase in a geometric fashion.

    This is why it is so important to have "one true" wire format codified as a
    standard.

    -
    Jason Keirstead
    Product Architect, Security Intelligence, IBM Security Systems
    www.ibm.com/security | www.securityintelligence.com
    Without data, all you are is just another person with an opinion - Unknown




    From: "Jordan, Bret" <bret.jordan@bluecoat.com>
    To: Cory Casanave <cory-c@modeldriven.com>
    Cc: Shawn Riley <shawn.p.riley@gmail.com>,
    "cti-users@lists.oasis-open.org"
    <cti-users@lists.oasis-open.org>
    Date: 2015/10/07 12:58 PM
    Subject: Re: [cti-users] Towards a better understanding of JSON-LD (Was:
    MTI Binding)
    Sent by: <cti-users@lists.oasis-open.org>



    Yes, for professional modelers and people that work in RDF every day, this
    would seem like the best thing to do. You are using advanced tools,
    software packages and libraries that can consume anything as long as it is
    RDF.

    The problem is, most of the developers that we need to recruit to write
    tools and software to work with STIX are not professional modelers and RDF
    people. They work in PHP and JavaScript, or in Objective-C, Android-Java,
    C++, Python, Perl, Ruby etc. They need to read in a blob of data over the
    wire, say JSON. Stick that in to memory somewhere. Then unmarshal that in
    to a struct or series of maps/dictionaries and then do something with it.

    Further, most vendors that build security products or networking products
    use a PHP interface or Java interface with a ton of JSON and a REST API.
    Lets not make things hard for them. We need to recruit them. We need to
    get them on board.

    Speaking from my past experience in start-ups. If the technology is
    outside of the development stack, and it is a checkbox feature, then it
    will never get done. We need this to be so simple and easy that everyone
    says "why would I NOT do this, lets just do it make it happen". At RSA and
    Blackhat I talked with a lot of startups that said, "if you would only do
    JSON we could adopt this". I talked with Facebook and they said if we
    could do JSON, they could support it natively in their solution.

    If we want to win, lets make it easy for organizations to understand and
    use.

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can
    not be unscrambled is an egg."

    On Oct 7, 2015, at 09:47, Cory Casanave <cory-c@modeldriven.com>
    wrote:

    For “RDF people”, this is a non-issue. You call a library to read or
    write your data and it takes care of serialization. You will be able
    to accept data in any of the formats and not care, you deal with the
    RDF API and local language objects. This is why my specific knowledge
    of JSON-LD is minimal, it is just something a library takes care of.

    I do understand the perspective of “Javascript people” who need to
    deal with the data in a specific syntax and don’t want to know about
    RDF.
    In that the RDF people should not care and JSON people care a bunch
    it would seem a good idea to have a default serialization in JSON.

    (I said I would shut up and I’m not doing well)

    From: cti-users@lists.oasis-open.org [
    mailto:cti-users@lists.oasis-open.org] On Behalf Of Shawn Riley
    Sent: Wednesday, October 07, 2015 11:40 AM
    To: Jordan, Bret
    Cc: cti-users@lists.oasis-open.org
    Subject: Re: [cti-users] Towards a better understanding of JSON-LD
    (Was: MTI Binding)

    Help me understand this statement "Allowing people to send
    "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon
    Kindle), RDF/N-Triples " will just mean this effort will be an epic
    failure and no one will be able to talk to each other"

    Since all of those formats are RDF serializations, there are existing
    translators today that can convert RDF/JSON-LD to RDF/XML or
    RDF/Turtle or any other RDF/serialization format. This should
    increase adoption without forcing everyone to only use JSON.



    On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret <
    bret.jordan@bluecoat.com> wrote:
    You said:

    "I have to believe that giving the community a choice of valid RDF
    based serialization formats (Hardback, Paperback, Amazon Kindle,
    Apple iPad, etc) will increase adoption faster than locking everyone
    into one serialization format like Hardback (JSON) or Paperback
    (XML). "

    This is not a good idea IMO. We need a default on the wire solution
    that every one uses. Eric mentioned that in his email earlier today.
    Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback),
    RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this
    effort will be an epic failure and no one will be able to talk to
    each other.

    Remember developers will be working with the on-the-wire formats. I
    do not like the hand waving of, oh the software will figure it out.
    No, developers need to write the software that consumes it and does
    something with it. Further, given that most people in this community
    have a hard time with understanding RDF and why it is needed, that
    goes to show that most developers in the wild probably also have a
    hard time understanding it. The average open source, web
    application, and APP developers want JSON, plain and simple and
    probably do not know how to even work with RDF. The more complicated
    we make this, the more esoteric solutions we use, the less likely
    they will code to it.

    I am a huge proponent of UML models with JSON schema bindings. Very
    simple, very easy to understand, and very easy to use. The cost of
    entry for people to get started is minimal. If we want adoption, we
    need things to be simple and easy. I do not view RDF as a solution
    for STIX as the complexity cost will drive people away. UML is a
    great middle ground, average developers and companies and vendors can
    look at the UML models and quickly and easily understand what is
    going on and what they need to do in their products / software /
    solutions. Then if the data over the wire is in JSON schema, they
    can quickly and easily put this in to use in their PHP applications,
    their JAVA applications, their C++ applications, etc...


    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing
    that can not be unscrambled is an egg."

    On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM>
    wrote:

    If you remember the XML vs RDF analogy of A Christmas Carol
    from Cambridge Semantics,
    http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml
    , this example might help in better understanding the JSON vs
    RDF/JSON-LD choice.

    If STIX reports were Books.

    A STIX JSONSchema Book Store offers STIX books in JSON
    (Hardback)

    A STIX RDF/OWL Book Store offers STIX Books in multiple RDF
    serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback),
    RDF/Turtle (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.

    The content of the STIX books from the STIX RDF/OWL Book Store
    is the same regardless of the on the wire serialization
    (RDF/JSON-LD, RDF/XML, etc) with dozens of tools already
    available that can convert between RDF serialization formats in
    case you want to read your book in another RDF serialization.

    I have to believe that giving the community a choice of valid
    RDF based serialization formats (Hardback, Paperback, Amazon
    Kindle, Apple iPad, etc) will increase adoption faster than
    locking everyone into one serialization format like Hardback
    (JSON) or Paperback (XML).
    [attachment "signature.asc" deleted by Jason Keirstead/CanEast/IBM]




  • 41.  Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-08-2015 02:50
    In case people are wondering if there is a JSON schema for JSON-LD, there is a GitHub project that has created such - https://github.com/json-ld/json-ld.org.git

    Paul

    From: <cti-users@lists.oasis-open.org> on behalf of "Jordan, Bret"
    Date: Wednesday, October 7, 2015 at 11:58 AM
    To: Cory Casanave
    Cc: Shawn Riley, "cti-users@lists.oasis-open.org"
    Subject: Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Yes, for professional modelers and people that work in RDF every day, this would seem like the best thing to do. You are using advanced tools, software packages and libraries that can consume anything as long as it is RDF.

    The problem is, most of the developers that we need to recruit to write tools and software to work with STIX are not professional modelers and RDF people. They work in PHP and JavaScript, or in Objective-C, Android-Java, C++, Python, Perl, Ruby etc. They need to read in a blob of data over the wire, say JSON. Stick that in to memory somewhere. Then unmarshal that in to a struct or series of maps/dictionaries and then do something with it.

    Further, most vendors that build security products or networking products use a PHP interface or Java interface with a ton of JSON and a REST API. Lets not make things hard for them. We need to recruit them. We need to get them on board.

    Speaking from my past experience in start-ups. If the technology is outside of the development stack, and it is a checkbox feature, then it will never get done. We need this to be so simple and easy that everyone says "why would I NOT do this, lets just do it make it happen". At RSA and Blackhat I talked with a lot of startups that said, "if you would only do JSON we could adopt this". I talked with Facebook and they said if we could do JSON, they could support it natively in their solution.

    If we want to win, lets make it easy for organizations to understand and use.

    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 7, 2015, at 09:47, Cory Casanave <cory-c@modeldriven.com> wrote:

    For “RDF people”, this is a non-issue. You call a library to read or write your data and it takes care of serialization. You will be able to accept data in any of the formats and not care, you deal with the RDF API and local language objects. This is why my specific knowledge of JSON-LD is minimal, it is just something a library takes care of.

    I do understand the perspective of “Javascript people” who need to deal with the data in a specific syntax and don’t want to know about RDF.
    In that the RDF people should not care and JSON people care a bunch it would seem a good idea to have a default serialization in JSON.

    (I said I would shut up and I’m not doing well)

    From: cti-users@lists.oasis-open.org [mailto:cti-users@lists.oasis-open.org] On Behalf Of Shawn Riley
    Sent: Wednesday, October 07, 2015 11:40 AM
    To: Jordan, Bret
    Cc: cti-users@lists.oasis-open.org
    Subject: Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Help me understand this statement "Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic failure and no one will be able to talk to each other"

    Since all of those formats are RDF serializations, there are existing translators today that can convert RDF/JSON-LD to RDF/XML or RDF/Turtle or any other RDF/serialization format. This should increase adoption without forcing everyone to only use JSON.



    On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret <bret.jordan@bluecoat.com> wrote:
    You said:

    "I have to believe that giving the community a choice of valid RDF based serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc) will increase adoption faster than locking everyone into one serialization format like Hardback (JSON) or Paperback (XML). "

    This is not a good idea IMO. We need a default on the wire solution that every one uses. Eric mentioned that in his email earlier today. Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this effort will be an epic failure and no one will be able to talk to each other.

    Remember developers will be working with the on-the-wire formats. I do not like the hand waving of, oh the software will figure it out. No, developers need to write the software that consumes it and does something with it. Further, given that most people in this community have a hard time with understanding RDF and why it is needed, that goes to show that most developers in the wild probably also have a hard time understanding it. The average open source, web application, and APP developers want JSON, plain and simple and probably do not know how to even work with RDF. The more complicated we make this, the more esoteric solutions we use, the less likely they will code to it.

    I am a huge proponent of UML models with JSON schema bindings. Very simple, very easy to understand, and very easy to use. The cost of entry for people to get started is minimal. If we want adoption, we need things to be simple and easy. I do not view RDF as a solution for STIX as the complexity cost will drive people away. UML is a great middle ground, average developers and companies and vendors can look at the UML models and quickly and easily understand what is going on and what they need to do in their products / software / solutions. Then if the data over the wire is in JSON schema, they can quickly and easily put this in to use in their PHP applications, their JAVA applications, their C++ applications, etc...



    Thanks,

    Bret



    Bret Jordan CISSP
    Director of Security Architecture and Standards | Office of the CTO
    Blue Coat Systems
    PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    "Without cryptography vihv vivc ce xhrnrw, however, the only thing that can not be unscrambled is an egg."

    On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM> wrote:

    If you remember the XML vs RDF analogy of A Christmas Carol from Cambridge Semantics, http://www.cambridgesemantics.com/semantic-university/rdf-vs-xml, this example might help in better understanding the JSON vs RDF/JSON-LD choice.

    If STIX reports were Books.

    A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)

    A STIX RDF/OWL Book Store offers STIX Books in multiple RDF serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.

    The content of the STIX books from the STIX RDF/OWL Book Store is the same regardless of the on the wire serialization (RDF/JSON-LD, RDF/XML, etc) with dozens of tools already available that can convert between RDF serialization formats in case you want to read your book in another RDF serialization.

    I have to believe that giving the community a choice of valid RDF based serialization formats (Hardback, Paperback, Amazon Kindle, Apple iPad, etc) will increase adoption faster than locking everyone into one serialization format like Hardback (JSON) or Paperback (XML).





  • 42.  RE: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 16:49
    Hi,

    >
    > I do understand the perspective of “Javascript people” who need to deal
    > with the data in a specific syntax and don’t want to know about RDF.
    >
    > In that the RDF people should not care and JSON people care a bunch it
    > would seem a good idea to have a default serialization in JSON.
    >

    Sorry if this is a trivial question ... I am not sure whether
    I understand the "default serialization" correctly: would that
    be a kind of JSONSchema(-like) definition that defines
    one of the many ways in which CTI-data could be expressed
    in JSON-LD as the standard way? Or would that be something else?

    Related to this question: If I am a "Javascript
    person" and I receive CTI serialized in one
    of the RDF-formats (triples or whatever): is there a translation back
    to the default serialization in JSON? If that is not the case,
    then the "default serialization" and the alternative translations
    are not on the same level, since a "Javascript person" would
    not be able to deal with any but the default serialization, so
    sending that person RDF_XYZ would not work.

    Something else I would like to understand: how does RDF et al.
    deal with (1) provenance of data (i.e., keeping track of
    who sent what, how it was produced) and (2) versioning?
    Would the meta data required for these aspects be
    also encoded in RDF and then interpreted by the receiver
    of serialized data, or would that be a task for the
    transport protocol that is kept outside the RDF stuff?

    Sorry again if these are trivial questions...

    Kind regards,

    Bernd


    >
    >
    > (I said I would shut up and I’m not doing well)
    >
    >
    >
    > From: cti-users@lists.oasis-open.org [mailto:cti-users@lists.oasis-
    > open.org] On Behalf Of Shawn Riley
    > Sent: Wednesday, October 07, 2015 11:40 AM
    > To: Jordan, Bret
    > Cc: cti-users@lists.oasis-open.org
    > Subject: Re: [cti-users] Towards a better understanding of JSON-LD
    > (Was: MTI Binding)
    >
    >
    >
    > Help me understand this statement "Allowing people to send "RDF/JSON-LD
    > (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-
    > Triples " will just mean this effort will be an epic failure and no one
    > will be able to talk to each other"
    >
    >
    >
    > Since all of those formats are RDF serializations, there are existing
    > translators today that can convert RDF/JSON-LD to RDF/XML or RDF/Turtle
    > or any other RDF/serialization format. This should increase adoption
    > without forcing everyone to only use JSON.
    >
    >
    >
    >
    >
    >
    >
    > On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret
    > <bret.jordan@bluecoat.com> wrote:
    >
    > You said:
    >
    >
    >
    > "I have to believe that giving the community a choice of valid RDF
    > based serialization formats (Hardback, Paperback, Amazon Kindle, Apple
    > iPad, etc) will increase adoption faster than locking everyone into one
    > serialization format like Hardback (JSON) or Paperback (XML). "
    >
    >
    >
    > This is not a good idea IMO. We need a default on the wire solution
    > that every one uses. Eric mentioned that in his email earlier today.
    > Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback),
    > RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this effort
    > will be an epic failure and no one will be able to talk to each other.
    >
    >
    >
    > Remember developers will be working with the on-the-wire formats. I do
    > not like the hand waving of, oh the software will figure it out. No,
    > developers need to write the software that consumes it and does
    > something with it. Further, given that most people in this community
    > have a hard time with understanding RDF and why it is needed, that goes
    > to show that most developers in the wild probably also have a hard time
    > understanding it. The average open source, web application, and APP
    > developers want JSON, plain and simple and probably do not know how to
    > even work with RDF. The more complicated we make this, the more
    > esoteric solutions we use, the less likely they will code to it.
    >
    >
    >
    > I am a huge proponent of UML models with JSON schema bindings. Very
    > simple, very easy to understand, and very easy to use. The cost of
    > entry for people to get started is minimal. If we want adoption, we
    > need things to be simple and easy. I do not view RDF as a solution for
    > STIX as the complexity cost will drive people away. UML is a great
    > middle ground, average developers and companies and vendors can look at
    > the UML models and quickly and easily understand what is going on and
    > what they need to do in their products / software / solutions. Then if
    > the data over the wire is in JSON schema, they can quickly and easily
    > put this in to use in their PHP applications, their JAVA applications,
    > their C++ applications, etc...
    >
    >
    >
    >
    >
    > Thanks,
    >
    >
    >
    > Bret
    >
    >
    >
    >
    >
    >
    >
    > Bret Jordan CISSP
    >
    > Director of Security Architecture and Standards | Office of the CTO
    >
    > Blue Coat Systems
    >
    > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    >
    > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > can not be unscrambled is an egg."
    >
    >
    >
    > On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM>
    > wrote:
    >
    >
    >
    > If you remember the XML vs RDF analogy of A Christmas Carol from
    > Cambridge Semantics, http://www.cambridgesemantics.com/semantic-
    > university/rdf-vs-xml <http://www.cambridgesemantics.com/semantic-
    > university/rdf-vs-xml> , this example might help in better
    > understanding the JSON vs RDF/JSON-LD choice.
    >
    >
    >
    > If STIX reports were Books.
    >
    >
    >
    > A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)
    >
    >
    >
    > A STIX RDF/OWL Book Store offers STIX Books in multiple RDF
    > serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle
    > (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.
    >
    >
    >
    > The content of the STIX books from the STIX RDF/OWL Book Store is
    > the same regardless of the on the wire serialization (RDF/JSON-LD,
    > RDF/XML, etc) with dozens of tools already available that can convert
    > between RDF serialization formats in case you want to read your book in
    > another RDF serialization.
    >
    >
    >
    > I have to believe that giving the community a choice of valid RDF
    > based serialization formats (Hardback, Paperback, Amazon Kindle, Apple
    > iPad, etc) will increase adoption faster than locking everyone into one
    > serialization format like Hardback (JSON) or Paperback (XML).
    >
    >
    >
    >
    >
    >
    >
    >




  • 43.  Re: [cti-users] Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 16:53
    Bernd,

    IRT Provenance see the PROV family of documents
    http://www.w3.org/TR/prov-overview/, the RDF/OWL would use PROV-O.

    Best,
    Shawn

    On Wed, Oct 7, 2015 at 12:48 PM, Grobauer, Bernd <Bernd.Grobauer@siemens.com
    > wrote:

    > Hi,
    >
    > >
    > > I do understand the perspective of “Javascript people” who need to deal
    > > with the data in a specific syntax and don’t want to know about RDF.
    > >
    > > In that the RDF people should not care and JSON people care a bunch it
    > > would seem a good idea to have a default serialization in JSON.
    > >
    >
    > Sorry if this is a trivial question ... I am not sure whether
    > I understand the "default serialization" correctly: would that
    > be a kind of JSONSchema(-like) definition that defines
    > one of the many ways in which CTI-data could be expressed
    > in JSON-LD as the standard way? Or would that be something else?
    >
    > Related to this question: If I am a "Javascript
    > person" and I receive CTI serialized in one
    > of the RDF-formats (triples or whatever): is there a translation back
    > to the default serialization in JSON? If that is not the case,
    > then the "default serialization" and the alternative translations
    > are not on the same level, since a "Javascript person" would
    > not be able to deal with any but the default serialization, so
    > sending that person RDF_XYZ would not work.
    >
    > Something else I would like to understand: how does RDF et al.
    > deal with (1) provenance of data (i.e., keeping track of
    > who sent what, how it was produced) and (2) versioning?
    > Would the meta data required for these aspects be
    > also encoded in RDF and then interpreted by the receiver
    > of serialized data, or would that be a task for the
    > transport protocol that is kept outside the RDF stuff?
    >
    > Sorry again if these are trivial questions...
    >
    > Kind regards,
    >
    > Bernd
    >
    >
    > >
    > >
    > > (I said I would shut up and I’m not doing well)
    > >
    > >
    > >
    > > From: cti-users@lists.oasis-open.org [mailto:cti-users@lists.oasis-
    > > open.org] On Behalf Of Shawn Riley
    > > Sent: Wednesday, October 07, 2015 11:40 AM
    > > To: Jordan, Bret
    > > Cc: cti-users@lists.oasis-open.org
    > > Subject: Re: [cti-users] Towards a better understanding of JSON-LD
    > > (Was: MTI Binding)
    > >
    > >
    > >
    > > Help me understand this statement "Allowing people to send "RDF/JSON-LD
    > > (Hardback), RDF/XML (Paperback), RDF/Turtle (Amazon Kindle), RDF/N-
    > > Triples " will just mean this effort will be an epic failure and no one
    > > will be able to talk to each other"
    > >
    > >
    > >
    > > Since all of those formats are RDF serializations, there are existing
    > > translators today that can convert RDF/JSON-LD to RDF/XML or RDF/Turtle
    > > or any other RDF/serialization format. This should increase adoption
    > > without forcing everyone to only use JSON.
    > >
    > >
    > >
    > >
    > >
    > >
    > >
    > > On Wed, Oct 7, 2015 at 11:17 AM, Jordan, Bret
    > > <bret.jordan@bluecoat.com> wrote:
    > >
    > > You said:
    > >
    > >
    > >
    > > "I have to believe that giving the community a choice of valid RDF
    > > based serialization formats (Hardback, Paperback, Amazon Kindle, Apple
    > > iPad, etc) will increase adoption faster than locking everyone into one
    > > serialization format like Hardback (JSON) or Paperback (XML). "
    > >
    > >
    > >
    > > This is not a good idea IMO. We need a default on the wire solution
    > > that every one uses. Eric mentioned that in his email earlier today.
    > > Allowing people to send "RDF/JSON-LD (Hardback), RDF/XML (Paperback),
    > > RDF/Turtle (Amazon Kindle), RDF/N-Triples " will just mean this effort
    > > will be an epic failure and no one will be able to talk to each other.
    > >
    > >
    > >
    > > Remember developers will be working with the on-the-wire formats. I do
    > > not like the hand waving of, oh the software will figure it out. No,
    > > developers need to write the software that consumes it and does
    > > something with it. Further, given that most people in this community
    > > have a hard time with understanding RDF and why it is needed, that goes
    > > to show that most developers in the wild probably also have a hard time
    > > understanding it. The average open source, web application, and APP
    > > developers want JSON, plain and simple and probably do not know how to
    > > even work with RDF. The more complicated we make this, the more
    > > esoteric solutions we use, the less likely they will code to it.
    > >
    > >
    > >
    > > I am a huge proponent of UML models with JSON schema bindings. Very
    > > simple, very easy to understand, and very easy to use. The cost of
    > > entry for people to get started is minimal. If we want adoption, we
    > > need things to be simple and easy. I do not view RDF as a solution for
    > > STIX as the complexity cost will drive people away. UML is a great
    > > middle ground, average developers and companies and vendors can look at
    > > the UML models and quickly and easily understand what is going on and
    > > what they need to do in their products / software / solutions. Then if
    > > the data over the wire is in JSON schema, they can quickly and easily
    > > put this in to use in their PHP applications, their JAVA applications,
    > > their C++ applications, etc...
    > >
    > >
    > >
    > >
    > >
    > > Thanks,
    > >
    > >
    > >
    > > Bret
    > >
    > >
    > >
    > >
    > >
    > >
    > >
    > > Bret Jordan CISSP
    > >
    > > Director of Security Architecture and Standards | Office of the CTO
    > >
    > > Blue Coat Systems
    > >
    > > PGP Fingerprint: 63B4 FC53 680A 6B7D 1447 F2C0 74F8 ACAE 7415 0050
    > >
    > > "Without cryptography vihv vivc ce xhrnrw, however, the only thing that
    > > can not be unscrambled is an egg."
    > >
    > >
    > >
    > > On Oct 7, 2015, at 08:04, Shawn Riley <shawn.p.riley@GMAIL.COM>
    > > wrote:
    > >
    > >
    > >
    > > If you remember the XML vs RDF analogy of A Christmas Carol from
    > > Cambridge Semantics, http://www.cambridgesemantics.com/semantic-
    > > university/rdf-vs-xml <http://www.cambridgesemantics.com/semantic-
    > > university/rdf-vs-xml> , this example might help in better
    > > understanding the JSON vs RDF/JSON-LD choice.
    > >
    > >
    > >
    > > If STIX reports were Books.
    > >
    > >
    > >
    > > A STIX JSONSchema Book Store offers STIX books in JSON (Hardback)
    > >
    > >
    > >
    > > A STIX RDF/OWL Book Store offers STIX Books in multiple RDF
    > > serializations. RDF/JSON-LD (Hardback), RDF/XML (Paperback), RDF/Turtle
    > > (Amazon Kindle), RDF/N-Triples (Apple iPad), etc.
    > >
    > >
    > >
    > > The content of the STIX books from the STIX RDF/OWL Book Store is
    > > the same regardless of the on the wire serialization (RDF/JSON-LD,
    > > RDF/XML, etc) with dozens of tools already available that can convert
    > > between RDF serialization formats in case you want to read your book in
    > > another RDF serialization.
    > >
    > >
    > >
    > > I have to believe that giving the community a choice of valid RDF
    > > based serialization formats (Hardback, Paperback, Amazon Kindle, Apple
    > > iPad, etc) will increase adoption faster than locking everyone into one
    > > serialization format like Hardback (JSON) or Paperback (XML).
    > >
    > >
    > >
    > >
    > >
    > >
    > >
    > >
    >
    >



  • 44.  RE: Towards a better understanding of JSON-LD (Was: MTI Binding)

    Posted 10-07-2015 14:19
    The question here is with regard to nested structures and the RDF model.

    The native RDF model has no defined nesting/ Each atomic "fact" (a triple) such as "john weighs 5 lbs" exists in a namespace and there is no other defined structure. When RDF is serialized it may have a nested structure, as does JSON-LD. The wrinkle here is that what is nested Vs. what is "top level" is usually based on the rules of the serializer. What I would suggest is that in addition to the base RDF schema a specific serialization be defined for CTI such that it can be reliably parsed with a known structure. This in no way invalidates the RDF schema and in a sense serves both worlds.

    When we create logical information models in UML we typically define aggregation (the black diamond). While this has no meaning to RDF there is nothing wrong with putting that fact in the schema as an augmentation "hint" for serialization, so we can generate an augmented RDF schema (which, by the way, can be serialized in JSON-LD). That same model can then generate XML schema with the same data hierarchy. A pure RDF application reading this data may ignore the hint but would still be able to interpret the data.

    I would see this as a finer point of using JSON-LD should we move in that direction.

    As for how much you put in one type Vs. making finer grain types - that is up to the modeler and has mostly the same concerns that it does in XML or schemaless JSON - the style of constructing the logical data model is orthogonal to the MTI discussion.

    -Cory Casanave




  • 45.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-07-2015 13:27
    Syntactically I think that is a fair statement. However, semantically, I believe the two models are very different. With JSONSchema (and XML Schema) you define an object and all of its members. This turns into deep hierarchies of properties on objects. With RDF/JSON-LD you define small objects and then sets of relationships/links that can be applied to the objects. It is a fundamentally different conceptual model.

    Both can end up being serialized into things that look very similar, but the mental/data model driving the representation is very different.

    - Jasen.

    P.S. Any ontologists in the crowd please feel free to correct me.

    From: <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>> on behalf of Terry MacDonald <terry.macdonald@threatloop.com<mailto:terry.macdonald@threatloop.com>>
    Date: Tuesday, October 6, 2015 at 5:19 PM
    To: Shawn Riley <shawn.p.riley@gmail.com<mailto:shawn.p.riley@gmail.com>>
    Cc: "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>" <cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>>, "Wunder, John A." <jwunder@mitre.org<mailto:jwunder@mitre.org>>
    Subject: Re: [cti-users] [cti-stix] [cti-users] MTI Binding


    If we're free to construct our own STIX specific schema, if we can put in it what we want, and we can derive the schema programmatically from the actual underlying model that sounds very useful.

    Does this mean that the main difference between the JSON-LD and JSONSchema is just the way that JSON-LD explicitly references the applicable schema (increasing size slightly)? And JSONSchema has an implicit relationship. Correct?

    Cheers
    Terry MacDonald




  • 46.  RE: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:18
    I’d like to offer a challenge: How do we move on from this conversation?
    (Note: Sean’s/John’s emails came out while I was writing this – I think we’re on the same page)

    I think we’ve heard everyone’s viewpoint at least once, and we’re starting to hear certain viewpoints multiple times. I don’t think we’re going to come to a consensus in this thread – can we find some common ground and then apply this energy to other problems?

    In this thread, I’ve heard people advocating for both JSON and JSON-LD. I have not heard anyone advocating for another MTI binding. I also have not heard a challenge to the idea that we should have one MTI format. Based on what I’ve seen, I’d say that more people are for JSON than for JSON-LD, though we do not yet have a consensus. I hope I have said nothing controversial in this paragraph.

    Here is my proposal for moving forward: JSON and JSON-LD are the current contenders for the MTI Binding, and prototypes/examples are preferred (but not required) to be in one of these formats. Once we get some real discussion under our belt in terms of mockups and use-cases, we will be able to revisit this discussion with more information.

    What is the next most important topic we should be discussing?

    Thank you.
    -Mark



  • 47.  RE: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:18




    I’d like to offer a challenge: How do we move on from this conversation?

    (Note: Sean’s/John’s emails came out while I was writing this – I think we’re on the same page)
     
    I think we’ve heard everyone’s viewpoint at least once, and we’re starting to hear certain viewpoints multiple times. I don’t think we’re going to come to a consensus
    in this thread – can we find some common ground and then apply this energy to other problems?
     
    In this thread, I’ve heard people advocating for both JSON and JSON-LD. I have not heard anyone advocating for another MTI binding. I also have not heard a challenge
    to the idea that we should have one MTI format. Based on what I’ve seen, I’d say that more people are for JSON than for JSON-LD, though we do not yet have a consensus. I hope I have said nothing controversial in this paragraph.
     
    Here is my proposal for moving forward: JSON and JSON-LD are the current contenders for the MTI Binding, and prototypes/examples are preferred (but not required)
    to be in one of these formats. Once we get some real discussion under our belt in terms of mockups and use-cases, we will be able to revisit this discussion with more information.
     
    What is the next most important topic we should be discussing?
     
    Thank you.
    -Mark






  • 48.  RE: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:35
    Agreed.
    I hope I have communicated a perspective and option sufficiently, as have others. We can let this settle for a while as well as work on some examples. When I can come up for air I will work on a full tool chain example – UML/RDF Schema/JSON-LD.
    So I agree this conversation should come off the front burner.
    -Cory

    From: Davidson II, Mark S [mailto:mdavidson@mitre.org]
    Sent: Tuesday, October 06, 2015 2:18 PM
    To: Jordan, Bret; Cory Casanave
    Cc: Barnum, Sean D.; Jason Keirstead; Terry MacDonald; cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder, John A.
    Subject: RE: [cti-users] [cti-stix] [cti-users] MTI Binding

    I’d like to offer a challenge: How do we move on from this conversation?
    (Note: Sean’s/John’s emails came out while I was writing this – I think we’re on the same page)

    I think we’ve heard everyone’s viewpoint at least once, and we’re starting to hear certain viewpoints multiple times. I don’t think we’re going to come to a consensus in this thread – can we find some common ground and then apply this energy to other problems?

    In this thread, I’ve heard people advocating for both JSON and JSON-LD. I have not heard anyone advocating for another MTI binding. I also have not heard a challenge to the idea that we should have one MTI format. Based on what I’ve seen, I’d say that more people are for JSON than for JSON-LD, though we do not yet have a consensus. I hope I have said nothing controversial in this paragraph.

    Here is my proposal for moving forward: JSON and JSON-LD are the current contenders for the MTI Binding, and prototypes/examples are preferred (but not required) to be in one of these formats. Once we get some real discussion under our belt in terms of mockups and use-cases, we will be able to revisit this discussion with more information.

    What is the next most important topic we should be discussing?

    Thank you.
    -Mark



  • 49.  RE: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:36




    Agreed.
    I hope I have communicated a perspective and option sufficiently, as have others. We can let this settle for a while as well as work on some examples. When
    I can come up for air I will work on a full tool chain example – UML/RDF Schema/JSON-LD.
    So I agree this conversation should come off the front burner.
    -Cory
     


    From: Davidson II, Mark S [mailto:mdavidson@mitre.org]

    Sent: Tuesday, October 06, 2015 2:18 PM
    To: Jordan, Bret; Cory Casanave
    Cc: Barnum, Sean D.; Jason Keirstead; Terry MacDonald; cti-users@lists.oasis-open.org; cti-stix@lists.oasis-open.org; Wunder, John A.
    Subject: RE: [cti-users] [cti-stix] [cti-users] MTI Binding


     
    I’d like to offer a challenge: How do we move on from this conversation?

    (Note: Sean’s/John’s emails came out while I was writing this – I think we’re on the same page)
     
    I think we’ve heard everyone’s viewpoint at least once, and we’re starting to hear certain viewpoints multiple times. I don’t think we’re going to come to a
    consensus in this thread – can we find some common ground and then apply this energy to other problems?
     
    In this thread, I’ve heard people advocating for both JSON and JSON-LD. I have not heard anyone advocating for another MTI binding. I also have not heard a
    challenge to the idea that we should have one MTI format. Based on what I’ve seen, I’d say that more people are for JSON than for JSON-LD, though we do not yet have a consensus. I hope I have said nothing controversial in this paragraph.
     
    Here is my proposal for moving forward: JSON and JSON-LD are the current contenders for the MTI Binding, and prototypes/examples are preferred (but not required)
    to be in one of these formats. Once we get some real discussion under our belt in terms of mockups and use-cases, we will be able to revisit this discussion with more information.
     
    What is the next most important topic we should be discussing?
     
    Thank you.
    -Mark






  • 50.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:41
    Agreed.

    I think examples such as ones that Cory, Shawn and Paul have talked about producing would be very valuable for helping focus this discussion.

    sean

    From: Mark Davidson
    Date: Tuesday, October 6, 2015 at 2:17 PM
    To: "Jordan, Bret", Cory Casanave
    Cc: "Barnum, Sean D.", Jason Keirstead, Terry MacDonald, "cti-users@lists.oasis-open.org<mailto:cti-users@lists.oasis-open.org>", "cti-stix@lists.oasis-open.org<mailto:cti-stix@lists.oasis-open.org>", John Wunder
    Subject: RE: [cti-users] [cti-stix] [cti-users] MTI Binding

    I’d like to offer a challenge: How do we move on from this conversation?
    (Note: Sean’s/John’s emails came out while I was writing this – I think we’re on the same page)

    I think we’ve heard everyone’s viewpoint at least once, and we’re starting to hear certain viewpoints multiple times. I don’t think we’re going to come to a consensus in this thread – can we find some common ground and then apply this energy to other problems?

    In this thread, I’ve heard people advocating for both JSON and JSON-LD. I have not heard anyone advocating for another MTI binding. I also have not heard a challenge to the idea that we should have one MTI format. Based on what I’ve seen, I’d say that more people are for JSON than for JSON-LD, though we do not yet have a consensus. I hope I have said nothing controversial in this paragraph.

    Here is my proposal for moving forward: JSON and JSON-LD are the current contenders for the MTI Binding, and prototypes/examples are preferred (but not required) to be in one of these formats. Once we get some real discussion under our belt in terms of mockups and use-cases, we will be able to revisit this discussion with more information.

    What is the next most important topic we should be discussing?

    Thank you.
    -Mark



  • 51.  Re: [cti-users] [cti-stix] [cti-users] MTI Binding

    Posted 10-06-2015 18:41





    Agreed. 


    I think examples such as ones that Cory, Shawn and Paul have talked about producing would be very valuable for helping focus this discussion.


    sean









    From: Mark Davidson
    Date: Tuesday, October 6, 2015 at 2:17 PM
    To: "Jordan, Bret", Cory Casanave
    Cc: "Barnum, Sean D.", Jason Keirstead, Terry MacDonald, " cti-users@lists.oasis-open.org ", " cti-stix@lists.oasis-open.org ",
    John Wunder
    Subject: RE: [cti-users] [cti-stix] [cti-users] MTI Binding








    I’d like to offer a challenge: How do we move on from this conversation?

    (Note: Sean’s/John’s emails came out while I was writing this – I think we’re on the same page)
     
    I think we’ve heard everyone’s viewpoint at least once, and we’re starting to hear certain viewpoints multiple times. I don’t think we’re going to
    come to a consensus in this thread – can we find some common ground and then apply this energy to other problems?
     
    In this thread, I’ve heard people advocating for both JSON and JSON-LD. I have not heard anyone advocating for another MTI binding. I also have not
    heard a challenge to the idea that we should have one MTI format. Based on what I’ve seen, I’d say that more people are for JSON than for JSON-LD, though we do not yet have a consensus. I hope I have said nothing controversial in this paragraph.
     
    Here is my proposal for moving forward: JSON and JSON-LD are the current contenders for the MTI Binding, and prototypes/examples are preferred (but
    not required) to be in one of these formats. Once we get some real discussion under our belt in terms of mockups and use-cases, we will be able to revisit this discussion with more information.
     
    What is the next most important topic we should be discussing?
     
    Thank you.
    -Mark