|
Web Application Security
RE: Threat Modelling May 21 2004 08:58AM Brewis, Mark (mark brewis eds com) (2 replies) RE: Threat Modelling May 22 2004 05:30PM brennan stewart (brennan ideahamster org) (2 replies) RE: Threat Modelling May 22 2004 08:55PM Mark Curphey (mark curphey com) (3 replies) RE: Threat Modelling May 23 2004 07:38PM brennan stewart (brennan ideahamster org) (5 replies) Re: Threat Modelling May 23 2004 09:55PM mfranz (mfranz speakeasy net) Brennan,<br/> <br/> Correct me if I'm wrong, but aren't these SSE (System Security<br/> Engineering) Lifecycle models more often that not used for<br/> assessing/evulating organizations and systems built from COTS components<br/> vs. developing new products/protocols/applications? And when there is<br/> "new development" I would imagine that the world of proprietary<br/> government/DoD system/application development is a far different beast<br/> from the private sector. Isn't much of the focus is on process and<br/> policy, often at an organizational level? Not that these aren't<br/> important or relevant, or that these toolsets can be stretched to apply<br/> to more technical analysis but that is not their "sweet spot."<br/> <br/> But unless the methodology (and possibly tools) are publically<br/> available, they are terribly useful for the problem at hand: everyone<br/> has agreed that there is a need for Free/Open Source threat<br/> modeling/risk assessment tools or methodology that are useful for<br/> application designers/developers/testers. DoD C&A tools aren't going to<br/> fix that.<br/> <br/> Even if they could, there is the significant "translation effort" needed<br/> for for things like Common Criteria or CMM-SSE to be useful for<br/> commercial product/development/test teams. So I'm not sure the point of<br/> arguing whether or not CRAMM, DoD C&A (or anything else that someone has<br/> used in a past life) tools *have* or *could* solve the problem, because<br/> they don't.<br/> <br/> The important thing is to start identifying requirements (you did) for<br/> tools and methodology that we all seem to agree is missing.<br/> <br/> I think everyone agrees that the tools should be robust enough to handle<br/> down to the protocol/application/message/ (including implementation)<br/> level. Any threat modeling technique that doesn't help uncover<br/> implementation flaws isn't terribly useful, IMHO. I think several folks<br/> have also questioned the value of simple cost metrics. What can/should<br/> be automated via tools and what should be done manually? How do we<br/> represent threats and vulnerabilities and application and system state?<br/> How do we measure impact of compromises?<br/> <br/> Take Attack Trees, a well known lightweight threat modeling technique,<br/> which has some success in being applied to both technical and<br/> non-technical domains. See the BGP Attack Tree<br/> (http://www.io.com/~mdfranz/papers/draft-convery-bgpattack-01.txt) we<br/> did within the IETF for the technical end of the spectrum.<br/> <br/> Writing the damn things (whether in textual or graphical form) is<br/> tedious. That can/should be automated. Yeah, I'm aware of SecuriTree,<br/> perhaps we could hack FreeMind to develop something simliar? Perhaps<br/> after the tree is definied to a given level of detail, it is possibly to<br/> automatically generate a set of tests/test cases? Actually<br/> running/instantiating a real world system (application) through the<br/> tree, that is more difficult. Since Attack Trees are mentioned in Ch4 of<br/> _Secure Coding_ perhaps that Microsoft tool will have this capability.<br/> Will it be extensible, not sure? Can I apply it to network devices and<br/> protocols (thinking with my Cisco hat on) or is only suitable to<br/> applications and general purpose operating systems?<br/> <br/> I think these are the sorts of questions we should be arguing about --<br/> not whether or not a closed methodlogy or proprietary tools solve the<br/> threat modeling problem, because they don't.<br/> <br/> I'll probably chime in on the "generic tools" issue in a separate<br/> message ;)<br/> <br/> Cheers<br/> <br/> - mdf<br/> <br/> > On Sat, 2004-05-22 at 16:55, Mark Curphey wrote:<br/> > > To quote ...."The tools used for Risk Management in certification &<br/> > > accreditation (NIACAP/DITSCAP) are very effective for threat modeling."<br/> > > <br/> > > Maybe I am missing the point here so please help me out.<br/> > > <br/> > > How would these generic tools help me methodically expose the fact that an<br/> > > application developer chose to send a password in clear in an unprotected<br/> > > SOAP message across an untrusted network?<br/> > <br/> > <br/> > (As C&A is a formal process for managing risk within the US government,I<br/> > am classifying tools used specifically for C&As as risk management<br/> > tools)<br/> > <br/> > I am not sure the level of familiarity that you have with the US<br/> > Government's C&A in general so perhaps that is why you made the<br/> > statements you did. <br/> > <br/> > (only a brief overview of pertinent areas, by no means complete) <br/> > Phase 1 (definition) of a C&A includes definition of system functions,<br/> > requirements, and interfaces.<br/> > Phase 2 (verification) is a system architecture analysis, software<br/> > design analysis, Network connection rule compliance, integrity analysis<br/> > of integrated products, Security requirements validation procedures,<br/> > vulnerability evaluation<br/> > Phase 3 (validation) is a Security test & evaluation, penetration<br/> > testing. Evaluating system conformance with regulations, requirements,<br/> > and architecture.<br/> > Phase 4 (post accreditation) A repeat of the other phases in order to<br/> > maintain the level of security.<br/> > <br/> > So, we are using a standard C&A tool. I have a generic list of security<br/> > requirements, a list of allowable and prohibited activities, security<br/> > configuration documentation, etc. Against these things, I am evaluating<br/> > a system.<br/> > <br/> > Now to get specific on a sample question of yours.<br/> > <br/> > application developer chose to send a password in clear in an<br/> > unprotected SOAP message across an untrusted network<br/> > <br/> > 5.4.1 & 5.5 of the webserver STIG address that. So your test case would<br/> > be a failure because it would not meet the requirement to properly<br/> > protect SOAP messages.(This is also addressed in many other STIGs too,<br/> > incidentally).<br/> > <br/> > Depending on what is being checked, this might be a manual process (did<br/> > you perform this activity?) or an automatic process (tool reads input<br/> > from other tools specifically addressing that problem). So, without the<br/> > manual addition of a best practice (e.g. an OWASP guide for web<br/> > application checking) or penetration tester input, we have already<br/> > identified the unprotected SOAP message.<br/> > <br/> > These risk management tools are being used by system architects/coders @<br/> > a high level to build systems. Obviously, they aren't intended for this<br/> > usage. This brings us back to my previous email, where I mentioned the<br/> > problems existing with much of these types of applications today, the<br/> > vast potentials for improvment, etc. <br/> > <br/> > regards,<br/> > <br/> > Brennan<br/> > <br/> > > <br/> > > I think there maybe confusion between what I think of threat modeling and<br/> > > risk assessment. Threat modeling to me is about helping design a better<br/> > > technological solution. See Building Secure Software, Writing Secure Code or<br/> > > Threats and Countermeasures for my definition examples. Risk Assessment is<br/> > > generally about a better management solution (where the definition of<br/> > > management is the same as that from ISO17799). CRAMM is of negligible use<br/> > > whatsoever in designing a secure application. Actually any security tool<br/> > > that stores security information in an access database and is riddled with<br/> > > security holes itself is of no use to me at all but that's another story. It<br/> > > may have a use in modeling the business operations of a web environment but<br/> > > it will not help me design a secure system from a technological perspective<br/> > > and that's what I use threat modeling for. Maybe that's one explanation, I<br/> > > (or you) are confusing operational security with engineering a softwareThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. <br/> > > system. <br/> > > <br/> > > And I am sorry but modeling dollar amounts is .......well even NIST 800-30<br/> > > explicitly says don't bother, it's a pipe dream. Take an online brokerage.<br/> > > At market the HART's (Hourly Average Revenue Trades) will be totally<br/> > > different from at 9pm. If I model the system from a monetary perspective<br/> > > should I change my security model at market open from the evening? Do I<br/> > > insist on digital certs when by average customer balance hits a 1 million<br/> > > dollars per account....that sort of modeling would probably justify Bill<br/> > > Gates using RACF to trade at discount broker X but guess what....<br/> > > <br/> > > When I first left college I used to have to do RA's using CRAMM (I am<br/> > > originally from the UK btw)... I would happily bet that I could write an<br/> > > application that in a controlled environment (i.e. it won't fail from not<br/> > > having a policy, backup etc etc) would pass a CRAThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. MM review with flying<br/> > > colors and could be hacked totally in under a minute. The internet and<br/> > > software technology is just too complex to try and model security<br/> > > conceptually using simple wizards. I personally think that security threats<br/> > > and countermeasures have moved at light speed compared to the technology<br/> > > used to support RA. Just my personal opinion.<br/> > > <br/> > > I think someone else had a good point in that RA tools are generally high<br/> > > level. Building software is both a high level process AND a low level<br/> > > procedure. The devil can be in the details and RA tools generally can't find<br/> > > devils ;-)<br/> > > <br/> > > -----Original Message-----<br/> > > From: brennan stewart [mailto:brennan (at) ideahamster (dot) org [email concealed]] <br/> > > Sent: Saturday, May 22, 2004 1:31 PM<br/> > > To: webappsec (at) securityfocus (dot) com [email concealed]<br/> > > Subject: RE: Threat Modelling<br/> > > <br/> > > The tools used for Risk Management in certification & accreditation<br/> > > (NIACAP/DITSCAP) are very effective for threat modeling. Some of them are<br/> > > high level, and others can be technical. The problem with them though, is<br/> > > their extreme price tags, proprietary content, lack of component<br/> > > re-usability, and perhaps some information wouldn't be to the technical<br/> > > level security professionals would require. They also don't have the level<br/> > > of integration that is really vital.<br/> > > <br/> > > While I know the initial thread was discussing Threat Modeling, it appears<br/> > > there is a huge gap in the comprehensive risk assessment/threat management<br/> > > arena (even with commercial software)<br/> > > <br/> > > It would appear that an open source solution would fit the bill for this. My<br/> > > ideas would take it far past mere threat modeling though for a more<br/> > > complete, quantitative picture of risk, mitigations, dollar amounts,<br/> > > residual risk, etc.<br/> > > <br/> > > Some sample requirements:<br/> > > Asset detailing, currency value assignment Complete threat listing, in DB<br/> > > Attacks\exposures\etc matched to the OSVDB (maybe the legacy CVE/ICAT<br/> > > also)<br/> > > Logic to understand system configurations (Linux/Unix/Windows/Cisco/etc)<br/> > > preloaded with sample hardening, and scoring mechanisms (NIST 800<br/> > > series)<br/> > > Logic to understand policies + DB<br/> > > Logic to understand legal requirements + DB (swap requirements by<br/> > > country/business/etc)<br/> > > Network aggregation<br/> > > Then, some nice reporting functions to top it off<br/> > > (continued)<br/> > > <br/> > > I know many of these data sources exist already individually.<br/> > > <br/> > > regards,<br/> > > <br/> > > Brennan<br/> > > <br/> > > <br/> > > On Fri, 2004-05-21 at 04:58, Brewis, Mark wrote:<br/> > > > >>-----Original Message-----<br/> > > > >>From: Mark Curphey [mailto:mark (at) curphey (dot) com [email concealed]]<br/> > > > >><br/> > > > >>CRAMM is a general / generic Risk Assessment tool for information <br/> > > > >>securtity.<br/> > > > <br/> > > > For those who don't know, CRAMM is a high-level tool designed to model<br/> > > risk at the physical, policy and procedural level, rather than the<br/> > > technical. Early versions were difficult to use, and even harder to<br/> > > interpret. The ISO 17799 aligned version is far more powerful, although it<br/> > > needs someone skilled to drive it.<br/> > > > <br/> > > > A more technical, network-level risk assessment/threat modelling tool back<br/> > > in the late 1990's was the L3 Network Security Expert/Retriever, a (for the<br/> > > time) sophisticated network mapping and risk analysis system . It was bought<br/> > > by Symantec about 2000 and fairly promptly disappeared. If I remember<br/> > > correctly, you were able to define any type of custom threats and<br/> > > countermeasures, and model them with a reasonable level of granularity. I<br/> > > only ever used it to model systems, rather than applications, but it was a<br/> > > really interesting hybrid tool.<br/> > > > <br/> > > > Both tools use/used some variation of the standard: <br/> > > > <br/> > > > * Define Assets<br/> > > > * Define Vulnerabilities<br/> > > > * Define Threats<br/> > > > * Define Mitigation Strategies<br/> > > > <br/> > > > within<br/> > > > <br/> > > > * Technical<br/> > > > * Management<br/> > > > * Operational<br/> > > > <br/> > > > Risk-Remediation areas.<br/> > > > <br/> > > > Neither of these addresses your requirements (particularly L3, since it<br/> > > appears to have gone), although I think the L3 tool(s) came closest. There<br/> > > isn't anything I know of that even comes close to doing some of this, never<br/> > > mind everything. Most of the case and sequence diagrams I've seen have been<br/> > > manually defined and Visio drawn (paradoxically, probably the main utility<br/> > > that helped kill off L3 Expert/Retriever). Risk modelling has been<br/> > > extrapolated from those, in a generally ad hoc fashion.<br/> > > > <br/> > > > In many respects, I think you've answered your own question - there is a<br/> > > gap in this area. If Symantec still have the L3 code base lying around (and<br/> > > it didn't metamorphose into the Vulnerability Assessment product) it might<br/> > > be worth dusting down.<br/> > > > <br/> > > > Mark<br/> > > > <br/> > > > Mark Brewis<br/> > > > <br/> > > > Security Consultant<br/> > > > EDS<br/> > > > UK Information Assurance Group<br/> > > > Wavendon Tower<br/> > > > Milton Keynes<br/> > > > Buckinghamshire<br/> > > > MK17 8LX.<br/> > > > <br/> > > > Tel: +44 (0)1908 28 4013<br/> > > > Mbl: +44 (0)7989 291 648<br/> > > > Fax: +44 (0)1908 28 4393<br/> > > > E@: mark.brewis (at) eds (dot) com [email concealed]<br/> > > > <br/> > > > This email is confidential and intended solely for the use of the<br/> > > individual(s) to whom it is addressed. Any views or opinions presented are<br/> > > solely those of the author. If you are not the intended recipient, be<br/> > > advised that you have received this email in error and that any use,<br/> > > dissemination, forwarding, printing, or copying of this mail is strictly<br/> > > prohibited.<br/> > > > <br/> > > > Precautions have been taken to minimise the risk of transmitting software<br/> > > viruses, but you must carry out your own virus checks on any attachment to<br/> > > this message. No liability can be accepted for any loss or damage caused by<br/> > > software viruses.<br/> > > > <br/> > > > <br/> > > > <br/> > > <br/> > > [ reply ] Re: Threat Modelling May 23 2004 09:08AM Frank O'Dwyer (fod littlecatZ com) (2 replies) RE: Threat Modelling May 22 2004 08:55PM Mark Curphey (mark curphey com) (3 replies) RE: Threat Modelling May 23 2004 07:38PM brennan stewart (brennan ideahamster org) (5 replies) Re: Threat Modelling May 23 2004 09:55PM mfranz (mfranz speakeasy net) Brennan,<br/><br/> <br/><br/> Correct me if I'm wrong, but aren't these SSE (System Security<br/><br/> Engineering) Lifecycle models more often that not used for<br/><br/> assessing/evulating organizations and systems built from COTS components<br/><br/> vs. developing new products/protocols/applications? And when there is<br/><br/> "new development" I would imagine that the world of proprietary<br/><br/> government/DoD system/application development is a far different beast<br/><br/> from the private sector. Isn't much of the focus is on process and<br/><br/> policy, often at an organizational level? Not that these aren't<br/><br/> important or relevant, or that these toolsets can be stretched to apply<br/><br/> to more technical analysis but that is not their "sweet spot."<br/><br/> <br/><br/> But unless the methodology (and possibly tools) are publically<br/><br/> available, they are terribly useful for the problem at hand: everyone<br/><br/> has agreed that there is a need for Free/Open Source threat<br/><br/> modeling/risk assessment tools or methodology that are useful for<br/><br/> application designers/developers/testers. DoD C&A tools aren't going to<br/><br/> fix that.<br/><br/> <br/><br/> Even if they could, there is the significant "translation effort" needed<br/><br/> for for things like Common Criteria or CMM-SSE to be useful for<br/><br/> commercial product/development/test teams. So I'm not sure the point of<br/><br/> arguing whether or not CRAMM, DoD C&A (or anything else that someone has<br/><br/> used in a past life) tools *have* or *could* solve the problem, because<br/><br/> they don't.<br/><br/> <br/><br/> The important thing is to start identifying requirements (you did) for<br/><br/> tools and methodology that we all seem to agree is missing.<br/><br/> <br/><br/> I think everyone agrees that the tools should be robust enough to handle<br/><br/> down to the protocol/application/message/ (including implementation)<br/><br/> level. Any threat modeling technique that doesn't help uncover<br/><br/> implementation flaws isn't terribly useful, IMHO. I think several folks<br/><br/> have also questioned the value of simple cost metrics. What can/should<br/><br/> be automated via tools and what should be done manually? How do we<br/><br/> represent threats and vulnerabilities and application and system state?<br/><br/> How do we measure impact of compromises?<br/><br/> <br/><br/> Take Attack Trees, a well known lightweight threat modeling technique,<br/><br/> which has some success in being applied to both technical and<br/><br/> non-technical domains. See the BGP Attack Tree<br/><br/> (http://www.io.com/~mdfranz/papers/draft-convery-bgpattack-01.txt) we<br/><br/> did within the IETF for the technical end of the spectrum.<br/><br/> <br/><br/> Writing the damn things (whether in textual or graphical form) is<br/><br/> tedious. That can/should be automated. Yeah, I'm aware of SecuriTree,<br/><br/> perhaps we could hack FreeMind to develop something simliar? Perhaps<br/><br/> after the tree is definied to a given level of detail, it is possibly to<br/><br/> automatically generate a set of tests/test cases? Actually<br/><br/> running/instantiating a real world system (application) through the<br/><br/> tree, that is more difficult. Since Attack Trees are mentioned in Ch4 of<br/><br/> _Secure Coding_ perhaps that Microsoft tool will have this capability.<br/><br/> Will it be extensible, not sure? Can I apply it to network devices and<br/><br/> protocols (thinking with my Cisco hat on) or is only suitable to<br/><br/> applications and general purpose operating systems?<br/><br/> <br/><br/> I think these are the sorts of questions we should be arguing about --<br/><br/> not whether or not a closed methodlogy or proprietary tools solve the<br/><br/> threat modeling problem, because they don't.<br/><br/> <br/><br/> I'll probably chime in on the "generic tools" issue in a separate<br/><br/> message ;)<br/><br/> <br/><br/> Cheers<br/><br/> <br/><br/> - mdf<br/><br/> <br/><br/> > On Sat, 2004-05-22 at 16:55, Mark Curphey wrote:<br/><br/> > > To quote ...."The tools used for Risk Management in certification &<br/><br/> > > accreditation (NIACAP/DITSCAP) are very effective for threat modeling."<br/><br/> > > <br/><br/> > > Maybe I am missing the point here so please help me out.<br/><br/> > > <br/><br/> > > How would these generic tools help me methodically expose the fact that an<br/><br/> > > application developer chose to send a password in clear in an unprotected<br/><br/> > > SOAP message across an untrusted network?<br/><br/> > <br/><br/> > <br/><br/> > (As C&A is a formal process for managing risk within the US government,I<br/><br/> > am classifying tools used specifically for C&As as risk management<br/><br/> > tools)<br/><br/> > <br/><br/> > I am not sure the level of familiarity that you have with the US<br/><br/> > Government's C&A in general so perhaps that is why you made the<br/><br/> > statements you did. <br/><br/> > <br/><br/> > (only a brief overview of pertinent areas, by no means complete) <br/><br/> > Phase 1 (definition) of a C&A includes definition of system functions,<br/><br/> > requirements, and interfaces.<br/><br/> > Phase 2 (verification) is a system architecture analysis, software<br/><br/> > design analysis, Network connection rule compliance, integrity analysis<br/><br/> > of integrated products, Security requirements validation procedures,<br/><br/> > vulnerability evaluation<br/><br/> > Phase 3 (validation) is a Security test & evaluation, penetration<br/><br/> > testing. Evaluating system conformance with regulations, requirements,<br/><br/> > and architecture.<br/><br/> > Phase 4 (post accreditation) A repeat of the other phases in order to<br/><br/> > maintain the level of security.<br/><br/> > <br/><br/> > So, we are using a standard C&A tool. I have a generic list of security<br/><br/> > requirements, a list of allowable and prohibited activities, security<br/><br/> > configuration documentation, etc. Against these things, I am evaluating<br/><br/> > a system.<br/><br/> > <br/><br/> > Now to get specific on a sample question of yours.<br/><br/> > <br/><br/> > application developer chose to send a password in clear in an<br/><br/> > unprotected SOAP message across an untrusted network<br/><br/> > <br/><br/> > 5.4.1 & 5.5 of the webserver STIG address that. So your test case would<br/><br/> > be a failure because it would not meet the requirement to properly<br/><br/> > protect SOAP messages.(This is also addressed in many other STIGs too,<br/><br/> > incidentally).<br/><br/> > <br/><br/> > Depending on what is being checked, this might be a manual process (did<br/><br/> > you perform this activity?) or an automatic process (tool reads input<br/><br/> > from other tools specifically addressing that problem). So, without the<br/><br/> > manual addition of a best practice (e.g. an OWASP guide for web<br/><br/> > application checking) or penetration tester input, we have already<br/><br/> > identified the unprotected SOAP message.<br/><br/> > <br/><br/> > These risk management tools are being used by system architects/coders @<br/><br/> > a high level to build systems. Obviously, they aren't intended for this<br/><br/> > usage. This brings us back to my previous email, where I mentioned the<br/><br/> > problems existing with much of these types of applications today, the<br/><br/> > vast potentials for improvment, etc. <br/><br/> > <br/><br/> > regards,<br/><br/> > <br/><br/> > Brennan<br/><br/> > <br/><br/> > > <br/><br/> > > I think there maybe confusion between what I think of threat modeling and<br/><br/> > > risk assessment. Threat modeling to me is about helping design a better<br/><br/> > > technological solution. See Building Secure Software, Writing Secure Code or<br/><br/> > > Threats and Countermeasures for my definition examples. Risk Assessment is<br/><br/> > > generally about a better management solution (where the definition of<br/><br/> > > management is the same as that from ISO17799). CRAMM is of negligible use<br/><br/> > > whatsoever in designing a secure application. Actually any security tool<br/><br/> > > that stores security information in an access database and is riddled with<br/><br/> > > security holes itself is of no use to me at all but that's another story. It<br/><br/> > > may have a use in modeling the business operations of a web environment but<br/><br/> > > it will not help me design a secure system from a technological perspective<br/><br/> > > and that's what I use threat modeling for. Maybe that's one explanation, I<br/><br/> > > (or you) are confusing operational security with engineering a softwareThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. <br/><br/> > > system. <br/><br/> > > <br/><br/> > > And I am sorry but modeling dollar amounts is .......well even NIST 800-30<br/><br/> > > explicitly says don't bother, it's a pipe dream. Take an online brokerage.<br/><br/> > > At market the HART's (Hourly Average Revenue Trades) will be totally<br/><br/> > > different from at 9pm. If I model the system from a monetary perspective<br/><br/> > > should I change my security model at market open from the evening? Do I<br/><br/> > > insist on digital certs when by average customer balance hits a 1 million<br/><br/> > > dollars per account....that sort of modeling would probably justify Bill<br/><br/> > > Gates using RACF to trade at discount broker X but guess what....<br/><br/> > > <br/><br/> > > When I first left college I used to have to do RA's using CRAMM (I am<br/><br/> > > originally from the UK btw)... I would happily bet that I could write an<br/><br/> > > application that in a controlled environment (i.e. it won't fail from not<br/><br/> > > having a policy, backup etc etc) would pass a CRAThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. MM review with flying<br/><br/> > > colors and could be hacked totally in under a minute. The internet and<br/><br/> > > software technology is just too complex to try and model security<br/><br/> > > conceptually using simple wizards. I personally think that security threats<br/><br/> > > and countermeasures have moved at light speed compared to the technology<br/><br/> > > used to support RA. Just my personal opinion.<br/><br/> > > <br/><br/> > > I think someone else had a good point in that RA tools are generally high<br/><br/> > > level. Building software is both a high level process AND a low level<br/><br/> > > procedure. The devil can be in the details and RA tools generally can't find<br/><br/> > > devils ;-)<br/><br/> > > <br/><br/> > > -----Original Message-----<br/><br/> > > From: brennan stewart [mailto:brennan (at) ideahamster (dot) org [email concealed]] <br/><br/> > > Sent: Saturday, May 22, 2004 1:31 PM<br/><br/> > > To: webappsec (at) securityfocus (dot) com [email concealed]<br/><br/> > > Subject: RE: Threat Modelling<br/><br/> > > <br/><br/> > > The tools used for Risk Management in certification & accreditation<br/><br/> > > (NIACAP/DITSCAP) are very effective for threat modeling. Some of them are<br/><br/> > > high level, and others can be technical. The problem with them though, is<br/><br/> > > their extreme price tags, proprietary content, lack of component<br/><br/> > > re-usability, and perhaps some information wouldn't be to the technical<br/><br/> > > level security professionals would require. They also don't have the level<br/><br/> > > of integration that is really vital.<br/><br/> > > <br/><br/> > > While I know the initial thread was discussing Threat Modeling, it appears<br/><br/> > > there is a huge gap in the comprehensive risk assessment/threat management<br/><br/> > > arena (even with commercial software)<br/><br/> > > <br/><br/> > > It would appear that an open source solution would fit the bill for this. My<br/><br/> > > ideas would take it far past mere threat modeling though for a more<br/><br/> > > complete, quantitative picture of risk, mitigations, dollar amounts,<br/><br/> > > residual risk, etc.<br/><br/> > > <br/><br/> > > Some sample requirements:<br/><br/> > > Asset detailing, currency value assignment Complete threat listing, in DB<br/><br/> > > Attacks\exposures\etc matched to the OSVDB (maybe the legacy CVE/ICAT<br/><br/> > > also)<br/><br/> > > Logic to understand system configurations (Linux/Unix/Windows/Cisco/etc)<br/><br/> > > preloaded with sample hardening, and scoring mechanisms (NIST 800<br/><br/> > > series)<br/><br/> > > Logic to understand policies + DB<br/><br/> > > Logic to understand legal requirements + DB (swap requirements by<br/><br/> > > country/business/etc)<br/><br/> > > Network aggregation<br/><br/> > > Then, some nice reporting functions to top it off<br/><br/> > > (continued)<br/><br/> > > <br/><br/> > > I know many of these data sources exist already individually.<br/><br/> > > <br/><br/> > > regards,<br/><br/> > > <br/><br/> > > Brennan<br/><br/> > > <br/><br/> > > <br/><br/> > > On Fri, 2004-05-21 at 04:58, Brewis, Mark wrote:<br/><br/> > > > >>-----Original Message-----<br/><br/> > > > >>From: Mark Curphey [mailto:mark (at) curphey (dot) com [email concealed]]<br/><br/> > > > >><br/><br/> > > > >>CRAMM is a general / generic Risk Assessment tool for information <br/><br/> > > > >>securtity.<br/><br/> > > > <br/><br/> > > > For those who don't know, CRAMM is a high-level tool designed to model<br/><br/> > > risk at the physical, policy and procedural level, rather than the<br/><br/> > > technical. Early versions were difficult to use, and even harder to<br/><br/> > > interpret. The ISO 17799 aligned version is far more powerful, although it<br/><br/> > > needs someone skilled to drive it.<br/><br/> > > > <br/><br/> > > > A more technical, network-level risk assessment/threat modelling tool back<br/><br/> > > in the late 1990's was the L3 Network Security Expert/Retriever, a (for the<br/><br/> > > time) sophisticated network mapping and risk analysis system . It was bought<br/><br/> > > by Symantec about 2000 and fairly promptly disappeared. If I remember<br/><br/> > > correctly, you were able to define any type of custom threats and<br/><br/> > > countermeasures, and model them with a reasonable level of granularity. I<br/><br/> > > only ever used it to model systems, rather than applications, but it was a<br/><br/> > > really interesting hybrid tool.<br/><br/> > > > <br/><br/> > > > Both tools use/used some variation of the standard: <br/><br/> > > > <br/><br/> > > > * Define Assets<br/><br/> > > > * Define Vulnerabilities<br/><br/> > > > * Define Threats<br/><br/> > > > * Define Mitigation Strategies<br/><br/> > > > <br/><br/> > > > within<br/><br/> > > > <br/><br/> > > > * Technical<br/><br/> > > > * Management<br/><br/> > > > * Operational<br/><br/> > > > <br/><br/> > > > Risk-Remediation areas.<br/><br/> > > > <br/><br/> > > > Neither of these addresses your requirements (particularly L3, since it<br/><br/> > > appears to have gone), although I think the L3 tool(s) came closest. There<br/><br/> > > isn't anything I know of that even comes close to doing some of this, never<br/><br/> > > mind everything. Most of the case and sequence diagrams I've seen have been<br/><br/> > > manually defined and Visio drawn (paradoxically, probably the main utility<br/><br/> > > that helped kill off L3 Expert/Retriever). Risk modelling has been<br/><br/> > > extrapolated from those, in a generally ad hoc fashion.<br/><br/> > > > <br/><br/> > > > In many respects, I think you've answered your own question - there is a<br/><br/> > > gap in this area. If Symantec still have the L3 code base lying around (and<br/><br/> > > it didn't metamorphose into the Vulnerability Assessment product) it might<br/><br/> > > be worth dusting down.<br/><br/> > > > <br/><br/> > > > Mark<br/><br/> > > > <br/><br/> > > > Mark Brewis<br/><br/> > > > <br/><br/> > > > Security Consultant<br/><br/> > > > EDS<br/><br/> > > > UK Information Assurance Group<br/><br/> > > > Wavendon Tower<br/><br/> > > > Milton Keynes<br/><br/> > > > Buckinghamshire<br/><br/> > > > MK17 8LX.<br/><br/> > > > <br/><br/> > > > Tel: +44 (0)1908 28 4013<br/><br/> > > > Mbl: +44 (0)7989 291 648<br/><br/> > > > Fax: +44 (0)1908 28 4393<br/><br/> > > > E@: mark.brewis (at) eds (dot) com [email concealed]<br/><br/> > > > <br/><br/> > > > This email is confidential and intended solely for the use of the<br/><br/> > > individual(s) to whom it is addressed. Any views or opinions presented are<br/><br/> > > solely those of the author. If you are not the intended recipient, be<br/><br/> > > advised that you have received this email in error and that any use,<br/><br/> > > dissemination, forwarding, printing, or copying of this mail is strictly<br/><br/> > > prohibited.<br/><br/> > > > <br/><br/> > > > Precautions have been taken to minimise the risk of transmitting software<br/><br/> > > viruses, but you must carry out your own virus checks on any attachment to<br/><br/> > > this message. No liability can be accepted for any loss or damage caused by<br/><br/> > > software viruses.<br/><br/> > > > <br/><br/> > > > <br/><br/> > > > <br/><br/> > > <br/><br/> > > [ reply ] Re: Threat Modelling May 23 2004 09:55PM mfranz (mfranz speakeasy net) Brennan,<br/><br/><br/> <br/><br/><br/> Correct me if I'm wrong, but aren't these SSE (System Security<br/><br/><br/> Engineering) Lifecycle models more often that not used for<br/><br/><br/> assessing/evulating organizations and systems built from COTS components<br/><br/><br/> vs. developing new products/protocols/applications? And when there is<br/><br/><br/> "new development" I would imagine that the world of proprietary<br/><br/><br/> government/DoD system/application development is a far different beast<br/><br/><br/> from the private sector. Isn't much of the focus is on process and<br/><br/><br/> policy, often at an organizational level? Not that these aren't<br/><br/><br/> important or relevant, or that these toolsets can be stretched to apply<br/><br/><br/> to more technical analysis but that is not their "sweet spot."<br/><br/><br/> <br/><br/><br/> But unless the methodology (and possibly tools) are publically<br/><br/><br/> available, they are terribly useful for the problem at hand: everyone<br/><br/><br/> has agreed that there is a need for Free/Open Source threat<br/><br/><br/> modeling/risk assessment tools or methodology that are useful for<br/><br/><br/> application designers/developers/testers. DoD C&A tools aren't going to<br/><br/><br/> fix that.<br/><br/><br/> <br/><br/><br/> Even if they could, there is the significant "translation effort" needed<br/><br/><br/> for for things like Common Criteria or CMM-SSE to be useful for<br/><br/><br/> commercial product/development/test teams. So I'm not sure the point of<br/><br/><br/> arguing whether or not CRAMM, DoD C&A (or anything else that someone has<br/><br/><br/> used in a past life) tools *have* or *could* solve the problem, because<br/><br/><br/> they don't.<br/><br/><br/> <br/><br/><br/> The important thing is to start identifying requirements (you did) for<br/><br/><br/> tools and methodology that we all seem to agree is missing.<br/><br/><br/> <br/><br/><br/> I think everyone agrees that the tools should be robust enough to handle<br/><br/><br/> down to the protocol/application/message/ (including implementation)<br/><br/><br/> level. Any threat modeling technique that doesn't help uncover<br/><br/><br/> implementation flaws isn't terribly useful, IMHO. I think several folks<br/><br/><br/> have also questioned the value of simple cost metrics. What can/should<br/><br/><br/> be automated via tools and what should be done manually? How do we<br/><br/><br/> represent threats and vulnerabilities and application and system state?<br/><br/><br/> How do we measure impact of compromises?<br/><br/><br/> <br/><br/><br/> Take Attack Trees, a well known lightweight threat modeling technique,<br/><br/><br/> which has some success in being applied to both technical and<br/><br/><br/> non-technical domains. See the BGP Attack Tree<br/><br/><br/> (http://www.io.com/~mdfranz/papers/draft-convery-bgpattack-01.txt) we<br/><br/><br/> did within the IETF for the technical end of the spectrum.<br/><br/><br/> <br/><br/><br/> Writing the damn things (whether in textual or graphical form) is<br/><br/><br/> tedious. That can/should be automated. Yeah, I'm aware of SecuriTree,<br/><br/><br/> perhaps we could hack FreeMind to develop something simliar? Perhaps<br/><br/><br/> after the tree is definied to a given level of detail, it is possibly to<br/><br/><br/> automatically generate a set of tests/test cases? Actually<br/><br/><br/> running/instantiating a real world system (application) through the<br/><br/><br/> tree, that is more difficult. Since Attack Trees are mentioned in Ch4 of<br/><br/><br/> _Secure Coding_ perhaps that Microsoft tool will have this capability.<br/><br/><br/> Will it be extensible, not sure? Can I apply it to network devices and<br/><br/><br/> protocols (thinking with my Cisco hat on) or is only suitable to<br/><br/><br/> applications and general purpose operating systems?<br/><br/><br/> <br/><br/><br/> I think these are the sorts of questions we should be arguing about --<br/><br/><br/> not whether or not a closed methodlogy or proprietary tools solve the<br/><br/><br/> threat modeling problem, because they don't.<br/><br/><br/> <br/><br/><br/> I'll probably chime in on the "generic tools" issue in a separate<br/><br/><br/> message ;)<br/><br/><br/> <br/><br/><br/> Cheers<br/><br/><br/> <br/><br/><br/> - mdf<br/><br/><br/> <br/><br/><br/> > On Sat, 2004-05-22 at 16:55, Mark Curphey wrote:<br/><br/><br/> > > To quote ...."The tools used for Risk Management in certification &<br/><br/><br/> > > accreditation (NIACAP/DITSCAP) are very effective for threat modeling."<br/><br/><br/> > > <br/><br/><br/> > > Maybe I am missing the point here so please help me out.<br/><br/><br/> > > <br/><br/><br/> > > How would these generic tools help me methodically expose the fact that an<br/><br/><br/> > > application developer chose to send a password in clear in an unprotected<br/><br/><br/> > > SOAP message across an untrusted network?<br/><br/><br/> > <br/><br/><br/> > <br/><br/><br/> > (As C&A is a formal process for managing risk within the US government,I<br/><br/><br/> > am classifying tools used specifically for C&As as risk management<br/><br/><br/> > tools)<br/><br/><br/> > <br/><br/><br/> > I am not sure the level of familiarity that you have with the US<br/><br/><br/> > Government's C&A in general so perhaps that is why you made the<br/><br/><br/> > statements you did. <br/><br/><br/> > <br/><br/><br/> > (only a brief overview of pertinent areas, by no means complete) <br/><br/><br/> > Phase 1 (definition) of a C&A includes definition of system functions,<br/><br/><br/> > requirements, and interfaces.<br/><br/><br/> > Phase 2 (verification) is a system architecture analysis, software<br/><br/><br/> > design analysis, Network connection rule compliance, integrity analysis<br/><br/><br/> > of integrated products, Security requirements validation procedures,<br/><br/><br/> > vulnerability evaluation<br/><br/><br/> > Phase 3 (validation) is a Security test & evaluation, penetration<br/><br/><br/> > testing. Evaluating system conformance with regulations, requirements,<br/><br/><br/> > and architecture.<br/><br/><br/> > Phase 4 (post accreditation) A repeat of the other phases in order to<br/><br/><br/> > maintain the level of security.<br/><br/><br/> > <br/><br/><br/> > So, we are using a standard C&A tool. I have a generic list of security<br/><br/><br/> > requirements, a list of allowable and prohibited activities, security<br/><br/><br/> > configuration documentation, etc. Against these things, I am evaluating<br/><br/><br/> > a system.<br/><br/><br/> > <br/><br/><br/> > Now to get specific on a sample question of yours.<br/><br/><br/> > <br/><br/><br/> > application developer chose to send a password in clear in an<br/><br/><br/> > unprotected SOAP message across an untrusted network<br/><br/><br/> > <br/><br/><br/> > 5.4.1 & 5.5 of the webserver STIG address that. So your test case would<br/><br/><br/> > be a failure because it would not meet the requirement to properly<br/><br/><br/> > protect SOAP messages.(This is also addressed in many other STIGs too,<br/><br/><br/> > incidentally).<br/><br/><br/> > <br/><br/><br/> > Depending on what is being checked, this might be a manual process (did<br/><br/><br/> > you perform this activity?) or an automatic process (tool reads input<br/><br/><br/> > from other tools specifically addressing that problem). So, without the<br/><br/><br/> > manual addition of a best practice (e.g. an OWASP guide for web<br/><br/><br/> > application checking) or penetration tester input, we have already<br/><br/><br/> > identified the unprotected SOAP message.<br/><br/><br/> > <br/><br/><br/> > These risk management tools are being used by system architects/coders @<br/><br/><br/> > a high level to build systems. Obviously, they aren't intended for this<br/><br/><br/> > usage. This brings us back to my previous email, where I mentioned the<br/><br/><br/> > problems existing with much of these types of applications today, the<br/><br/><br/> > vast potentials for improvment, etc. <br/><br/><br/> > <br/><br/><br/> > regards,<br/><br/><br/> > <br/><br/><br/> > Brennan<br/><br/><br/> > <br/><br/><br/> > > <br/><br/><br/> > > I think there maybe confusion between what I think of threat modeling and<br/><br/><br/> > > risk assessment. Threat modeling to me is about helping design a better<br/><br/><br/> > > technological solution. See Building Secure Software, Writing Secure Code or<br/><br/><br/> > > Threats and Countermeasures for my definition examples. Risk Assessment is<br/><br/><br/> > > generally about a better management solution (where the definition of<br/><br/><br/> > > management is the same as that from ISO17799). CRAMM is of negligible use<br/><br/><br/> > > whatsoever in designing a secure application. Actually any security tool<br/><br/><br/> > > that stores security information in an access database and is riddled with<br/><br/><br/> > > security holes itself is of no use to me at all but that's another story. It<br/><br/><br/> > > may have a use in modeling the business operations of a web environment but<br/><br/><br/> > > it will not help me design a secure system from a technological perspective<br/><br/><br/> > > and that's what I use threat modeling for. Maybe that's one explanation, I<br/><br/><br/> > > (or you) are confusing operational security with engineering a softwareThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. <br/><br/><br/> > > system. <br/><br/><br/> > > <br/><br/><br/> > > And I am sorry but modeling dollar amounts is .......well even NIST 800-30<br/><br/><br/> > > explicitly says don't bother, it's a pipe dream. Take an online brokerage.<br/><br/><br/> > > At market the HART's (Hourly Average Revenue Trades) will be totally<br/><br/><br/> > > different from at 9pm. If I model the system from a monetary perspective<br/><br/><br/> > > should I change my security model at market open from the evening? Do I<br/><br/><br/> > > insist on digital certs when by average customer balance hits a 1 million<br/><br/><br/> > > dollars per account....that sort of modeling would probably justify Bill<br/><br/><br/> > > Gates using RACF to trade at discount broker X but guess what....<br/><br/><br/> > > <br/><br/><br/> > > When I first left college I used to have to do RA's using CRAMM (I am<br/><br/><br/> > > originally from the UK btw)... I would happily bet that I could write an<br/><br/><br/> > > application that in a controlled environment (i.e. it won't fail from not<br/><br/><br/> > > having a policy, backup etc etc) would pass a CRAThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. MM review with flying<br/><br/><br/> > > colors and could be hacked totally in under a minute. The internet and<br/><br/><br/> > > software technology is just too complex to try and model security<br/><br/><br/> > > conceptually using simple wizards. I personally think that security threats<br/><br/><br/> > > and countermeasures have moved at light speed compared to the technology<br/><br/><br/> > > used to support RA. Just my personal opinion.<br/><br/><br/> > > <br/><br/><br/> > > I think someone else had a good point in that RA tools are generally high<br/><br/><br/> > > level. Building software is both a high level process AND a low level<br/><br/><br/> > > procedure. The devil can be in the details and RA tools generally can't find<br/><br/><br/> > > devils ;-)<br/><br/><br/> > > <br/><br/><br/> > > -----Original Message-----<br/><br/><br/> > > From: brennan stewart [mailto:brennan (at) ideahamster (dot) org [email concealed]] <br/><br/><br/> > > Sent: Saturday, May 22, 2004 1:31 PM<br/><br/><br/> > > To: webappsec (at) securityfocus (dot) com [email concealed]<br/><br/><br/> > > Subject: RE: Threat Modelling<br/><br/><br/> > > <br/><br/><br/> > > The tools used for Risk Management in certification & accreditation<br/><br/><br/> > > (NIACAP/DITSCAP) are very effective for threat modeling. Some of them are<br/><br/><br/> > > high level, and others can be technical. The problem with them though, is<br/><br/><br/> > > their extreme price tags, proprietary content, lack of component<br/><br/><br/> > > re-usability, and perhaps some information wouldn't be to the technical<br/><br/><br/> > > level security professionals would require. They also don't have the level<br/><br/><br/> > > of integration that is really vital.<br/><br/><br/> > > <br/><br/><br/> > > While I know the initial thread was discussing Threat Modeling, it appears<br/><br/><br/> > > there is a huge gap in the comprehensive risk assessment/threat management<br/><br/><br/> > > arena (even with commercial software)<br/><br/><br/> > > <br/><br/><br/> > > It would appear that an open source solution would fit the bill for this. My<br/><br/><br/> > > ideas would take it far past mere threat modeling though for a more<br/><br/><br/> > > complete, quantitative picture of risk, mitigations, dollar amounts,<br/><br/><br/> > > residual risk, etc.<br/><br/><br/> > > <br/><br/><br/> > > Some sample requirements:<br/><br/><br/> > > Asset detailing, currency value assignment Complete threat listing, in DB<br/><br/><br/> > > Attacks\exposures\etc matched to the OSVDB (maybe the legacy CVE/ICAT<br/><br/><br/> > > also)<br/><br/><br/> > > Logic to understand system configurations (Linux/Unix/Windows/Cisco/etc)<br/><br/><br/> > > preloaded with sample hardening, and scoring mechanisms (NIST 800<br/><br/><br/> > > series)<br/><br/><br/> > > Logic to understand policies + DB<br/><br/><br/> > > Logic to understand legal requirements + DB (swap requirements by<br/><br/><br/> > > country/business/etc)<br/><br/><br/> > > Network aggregation<br/><br/><br/> > > Then, some nice reporting functions to top it off<br/><br/><br/> > > (continued)<br/><br/><br/> > > <br/><br/><br/> > > I know many of these data sources exist already individually.<br/><br/><br/> > > <br/><br/><br/> > > regards,<br/><br/><br/> > > <br/><br/><br/> > > Brennan<br/><br/><br/> > > <br/><br/><br/> > > <br/><br/><br/> > > On Fri, 2004-05-21 at 04:58, Brewis, Mark wrote:<br/><br/><br/> > > > >>-----Original Message-----<br/><br/><br/> > > > >>From: Mark Curphey [mailto:mark (at) curphey (dot) com [email concealed]]<br/><br/><br/> > > > >><br/><br/><br/> > > > >>CRAMM is a general / generic Risk Assessment tool for information <br/><br/><br/> > > > >>securtity.<br/><br/><br/> > > > <br/><br/><br/> > > > For those who don't know, CRAMM is a high-level tool designed to model<br/><br/><br/> > > risk at the physical, policy and procedural level, rather than the<br/><br/><br/> > > technical. Early versions were difficult to use, and even harder to<br/><br/><br/> > > interpret. The ISO 17799 aligned version is far more powerful, although it<br/><br/><br/> > > needs someone skilled to drive it.<br/><br/><br/> > > > <br/><br/><br/> > > > A more technical, network-level risk assessment/threat modelling tool back<br/><br/><br/> > > in the late 1990's was the L3 Network Security Expert/Retriever, a (for the<br/><br/><br/> > > time) sophisticated network mapping and risk analysis system . It was bought<br/><br/><br/> > > by Symantec about 2000 and fairly promptly disappeared. If I remember<br/><br/><br/> > > correctly, you were able to define any type of custom threats and<br/><br/><br/> > > countermeasures, and model them with a reasonable level of granularity. I<br/><br/><br/> > > only ever used it to model systems, rather than applications, but it was a<br/><br/><br/> > > really interesting hybrid tool.<br/><br/><br/> > > > <br/><br/><br/> > > > Both tools use/used some variation of the standard: <br/><br/><br/> > > > <br/><br/><br/> > > > * Define Assets<br/><br/><br/> > > > * Define Vulnerabilities<br/><br/><br/> > > > * Define Threats<br/><br/><br/> > > > * Define Mitigation Strategies<br/><br/><br/> > > > <br/><br/><br/> > > > within<br/><br/><br/> > > > <br/><br/><br/> > > > * Technical<br/><br/><br/> > > > * Management<br/><br/><br/> > > > * Operational<br/><br/><br/> > > > <br/><br/><br/> > > > Risk-Remediation areas.<br/><br/><br/> > > > <br/><br/><br/> > > > Neither of these addresses your requirements (particularly L3, since it<br/><br/><br/> > > appears to have gone), although I think the L3 tool(s) came closest. There<br/><br/><br/> > > isn't anything I know of that even comes close to doing some of this, never<br/><br/><br/> > > mind everything. Most of the case and sequence diagrams I've seen have been<br/><br/><br/> > > manually defined and Visio drawn (paradoxically, probably the main utility<br/><br/><br/> > > that helped kill off L3 Expert/Retriever). Risk modelling has been<br/><br/><br/> > > extrapolated from those, in a generally ad hoc fashion.<br/><br/><br/> > > > <br/><br/><br/> > > > In many respects, I think you've answered your own question - there is a<br/><br/><br/> > > gap in this area. If Symantec still have the L3 code base lying around (and<br/><br/><br/> > > it didn't metamorphose into the Vulnerability Assessment product) it might<br/><br/><br/> > > be worth dusting down.<br/><br/><br/> > > > <br/><br/><br/> > > > Mark<br/><br/><br/> > > > <br/><br/><br/> > > > Mark Brewis<br/><br/><br/> > > > <br/><br/><br/> > > > Security Consultant<br/><br/><br/> > > > EDS<br/><br/><br/> > > > UK Information Assurance Group<br/><br/><br/> > > > Wavendon Tower<br/><br/><br/> > > > Milton Keynes<br/><br/><br/> > > > Buckinghamshire<br/><br/><br/> > > > MK17 8LX.<br/><br/><br/> > > > <br/><br/><br/> > > > Tel: +44 (0)1908 28 4013<br/><br/><br/> > > > Mbl: +44 (0)7989 291 648<br/><br/><br/> > > > Fax: +44 (0)1908 28 4393<br/><br/><br/> > > > E@: mark.brewis (at) eds (dot) com [email concealed]<br/><br/><br/> > > > <br/><br/><br/> > > > This email is confidential and intended solely for the use of the<br/><br/><br/> > > individual(s) to whom it is addressed. Any views or opinions presented are<br/><br/><br/> > > solely those of the author. If you are not the intended recipient, be<br/><br/><br/> > > advised that you have received this email in error and that any use,<br/><br/><br/> > > dissemination, forwarding, printing, or copying of this mail is strictly<br/><br/><br/> > > prohibited.<br/><br/><br/> > > > <br/><br/><br/> > > > Precautions have been taken to minimise the risk of transmitting software<br/><br/><br/> > > viruses, but you must carry out your own virus checks on any attachment to<br/><br/><br/> > > this message. No liability can be accepted for any loss or damage caused by<br/><br/><br/> > > software viruses.<br/><br/><br/> > > > <br/><br/><br/> > > > <br/><br/><br/> > > > <br/><br/><br/> > > <br/><br/><br/> > > [ reply ] Re: Threat Modelling May 23 2004 09:08AM Frank O'Dwyer (fod littlecatZ com) (2 replies) RE: Threat Modelling May 22 2004 05:30PM brennan stewart (brennan ideahamster org) (2 replies) RE: Threat Modelling May 22 2004 08:55PM Mark Curphey (mark curphey com) (3 replies) RE: Threat Modelling May 23 2004 07:38PM brennan stewart (brennan ideahamster org) (5 replies) Re: Threat Modelling May 23 2004 09:55PM mfranz (mfranz speakeasy net) Brennan,<br/><br/><br/><br/> <br/><br/><br/><br/> Correct me if I'm wrong, but aren't these SSE (System Security<br/><br/><br/><br/> Engineering) Lifecycle models more often that not used for<br/><br/><br/><br/> assessing/evulating organizations and systems built from COTS components<br/><br/><br/><br/> vs. developing new products/protocols/applications? And when there is<br/><br/><br/><br/> "new development" I would imagine that the world of proprietary<br/><br/><br/><br/> government/DoD system/application development is a far different beast<br/><br/><br/><br/> from the private sector. Isn't much of the focus is on process and<br/><br/><br/><br/> policy, often at an organizational level? Not that these aren't<br/><br/><br/><br/> important or relevant, or that these toolsets can be stretched to apply<br/><br/><br/><br/> to more technical analysis but that is not their "sweet spot."<br/><br/><br/><br/> <br/><br/><br/><br/> But unless the methodology (and possibly tools) are publically<br/><br/><br/><br/> available, they are terribly useful for the problem at hand: everyone<br/><br/><br/><br/> has agreed that there is a need for Free/Open Source threat<br/><br/><br/><br/> modeling/risk assessment tools or methodology that are useful for<br/><br/><br/><br/> application designers/developers/testers. DoD C&A tools aren't going to<br/><br/><br/><br/> fix that.<br/><br/><br/><br/> <br/><br/><br/><br/> Even if they could, there is the significant "translation effort" needed<br/><br/><br/><br/> for for things like Common Criteria or CMM-SSE to be useful for<br/><br/><br/><br/> commercial product/development/test teams. So I'm not sure the point of<br/><br/><br/><br/> arguing whether or not CRAMM, DoD C&A (or anything else that someone has<br/><br/><br/><br/> used in a past life) tools *have* or *could* solve the problem, because<br/><br/><br/><br/> they don't.<br/><br/><br/><br/> <br/><br/><br/><br/> The important thing is to start identifying requirements (you did) for<br/><br/><br/><br/> tools and methodology that we all seem to agree is missing.<br/><br/><br/><br/> <br/><br/><br/><br/> I think everyone agrees that the tools should be robust enough to handle<br/><br/><br/><br/> down to the protocol/application/message/ (including implementation)<br/><br/><br/><br/> level. Any threat modeling technique that doesn't help uncover<br/><br/><br/><br/> implementation flaws isn't terribly useful, IMHO. I think several folks<br/><br/><br/><br/> have also questioned the value of simple cost metrics. What can/should<br/><br/><br/><br/> be automated via tools and what should be done manually? How do we<br/><br/><br/><br/> represent threats and vulnerabilities and application and system state?<br/><br/><br/><br/> How do we measure impact of compromises?<br/><br/><br/><br/> <br/><br/><br/><br/> Take Attack Trees, a well known lightweight threat modeling technique,<br/><br/><br/><br/> which has some success in being applied to both technical and<br/><br/><br/><br/> non-technical domains. See the BGP Attack Tree<br/><br/><br/><br/> (http://www.io.com/~mdfranz/papers/draft-convery-bgpattack-01.txt) we<br/><br/><br/><br/> did within the IETF for the technical end of the spectrum.<br/><br/><br/><br/> <br/><br/><br/><br/> Writing the damn things (whether in textual or graphical form) is<br/><br/><br/><br/> tedious. That can/should be automated. Yeah, I'm aware of SecuriTree,<br/><br/><br/><br/> perhaps we could hack FreeMind to develop something simliar? Perhaps<br/><br/><br/><br/> after the tree is definied to a given level of detail, it is possibly to<br/><br/><br/><br/> automatically generate a set of tests/test cases? Actually<br/><br/><br/><br/> running/instantiating a real world system (application) through the<br/><br/><br/><br/> tree, that is more difficult. Since Attack Trees are mentioned in Ch4 of<br/><br/><br/><br/> _Secure Coding_ perhaps that Microsoft tool will have this capability.<br/><br/><br/><br/> Will it be extensible, not sure? Can I apply it to network devices and<br/><br/><br/><br/> protocols (thinking with my Cisco hat on) or is only suitable to<br/><br/><br/><br/> applications and general purpose operating systems?<br/><br/><br/><br/> <br/><br/><br/><br/> I think these are the sorts of questions we should be arguing about --<br/><br/><br/><br/> not whether or not a closed methodlogy or proprietary tools solve the<br/><br/><br/><br/> threat modeling problem, because they don't.<br/><br/><br/><br/> <br/><br/><br/><br/> I'll probably chime in on the "generic tools" issue in a separate<br/><br/><br/><br/> message ;)<br/><br/><br/><br/> <br/><br/><br/><br/> Cheers<br/><br/><br/><br/> <br/><br/><br/><br/> - mdf<br/><br/><br/><br/> <br/><br/><br/><br/> > On Sat, 2004-05-22 at 16:55, Mark Curphey wrote:<br/><br/><br/><br/> > > To quote ...."The tools used for Risk Management in certification &<br/><br/><br/><br/> > > accreditation (NIACAP/DITSCAP) are very effective for threat modeling."<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > Maybe I am missing the point here so please help me out.<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > How would these generic tools help me methodically expose the fact that an<br/><br/><br/><br/> > > application developer chose to send a password in clear in an unprotected<br/><br/><br/><br/> > > SOAP message across an untrusted network?<br/><br/><br/><br/> > <br/><br/><br/><br/> > <br/><br/><br/><br/> > (As C&A is a formal process for managing risk within the US government,I<br/><br/><br/><br/> > am classifying tools used specifically for C&As as risk management<br/><br/><br/><br/> > tools)<br/><br/><br/><br/> > <br/><br/><br/><br/> > I am not sure the level of familiarity that you have with the US<br/><br/><br/><br/> > Government's C&A in general so perhaps that is why you made the<br/><br/><br/><br/> > statements you did. <br/><br/><br/><br/> > <br/><br/><br/><br/> > (only a brief overview of pertinent areas, by no means complete) <br/><br/><br/><br/> > Phase 1 (definition) of a C&A includes definition of system functions,<br/><br/><br/><br/> > requirements, and interfaces.<br/><br/><br/><br/> > Phase 2 (verification) is a system architecture analysis, software<br/><br/><br/><br/> > design analysis, Network connection rule compliance, integrity analysis<br/><br/><br/><br/> > of integrated products, Security requirements validation procedures,<br/><br/><br/><br/> > vulnerability evaluation<br/><br/><br/><br/> > Phase 3 (validation) is a Security test & evaluation, penetration<br/><br/><br/><br/> > testing. Evaluating system conformance with regulations, requirements,<br/><br/><br/><br/> > and architecture.<br/><br/><br/><br/> > Phase 4 (post accreditation) A repeat of the other phases in order to<br/><br/><br/><br/> > maintain the level of security.<br/><br/><br/><br/> > <br/><br/><br/><br/> > So, we are using a standard C&A tool. I have a generic list of security<br/><br/><br/><br/> > requirements, a list of allowable and prohibited activities, security<br/><br/><br/><br/> > configuration documentation, etc. Against these things, I am evaluating<br/><br/><br/><br/> > a system.<br/><br/><br/><br/> > <br/><br/><br/><br/> > Now to get specific on a sample question of yours.<br/><br/><br/><br/> > <br/><br/><br/><br/> > application developer chose to send a password in clear in an<br/><br/><br/><br/> > unprotected SOAP message across an untrusted network<br/><br/><br/><br/> > <br/><br/><br/><br/> > 5.4.1 & 5.5 of the webserver STIG address that. So your test case would<br/><br/><br/><br/> > be a failure because it would not meet the requirement to properly<br/><br/><br/><br/> > protect SOAP messages.(This is also addressed in many other STIGs too,<br/><br/><br/><br/> > incidentally).<br/><br/><br/><br/> > <br/><br/><br/><br/> > Depending on what is being checked, this might be a manual process (did<br/><br/><br/><br/> > you perform this activity?) or an automatic process (tool reads input<br/><br/><br/><br/> > from other tools specifically addressing that problem). So, without the<br/><br/><br/><br/> > manual addition of a best practice (e.g. an OWASP guide for web<br/><br/><br/><br/> > application checking) or penetration tester input, we have already<br/><br/><br/><br/> > identified the unprotected SOAP message.<br/><br/><br/><br/> > <br/><br/><br/><br/> > These risk management tools are being used by system architects/coders @<br/><br/><br/><br/> > a high level to build systems. Obviously, they aren't intended for this<br/><br/><br/><br/> > usage. This brings us back to my previous email, where I mentioned the<br/><br/><br/><br/> > problems existing with much of these types of applications today, the<br/><br/><br/><br/> > vast potentials for improvment, etc. <br/><br/><br/><br/> > <br/><br/><br/><br/> > regards,<br/><br/><br/><br/> > <br/><br/><br/><br/> > Brennan<br/><br/><br/><br/> > <br/><br/><br/><br/> > > <br/><br/><br/><br/> > > I think there maybe confusion between what I think of threat modeling and<br/><br/><br/><br/> > > risk assessment. Threat modeling to me is about helping design a better<br/><br/><br/><br/> > > technological solution. See Building Secure Software, Writing Secure Code or<br/><br/><br/><br/> > > Threats and Countermeasures for my definition examples. Risk Assessment is<br/><br/><br/><br/> > > generally about a better management solution (where the definition of<br/><br/><br/><br/> > > management is the same as that from ISO17799). CRAMM is of negligible use<br/><br/><br/><br/> > > whatsoever in designing a secure application. Actually any security tool<br/><br/><br/><br/> > > that stores security information in an access database and is riddled with<br/><br/><br/><br/> > > security holes itself is of no use to me at all but that's another story. It<br/><br/><br/><br/> > > may have a use in modeling the business operations of a web environment but<br/><br/><br/><br/> > > it will not help me design a secure system from a technological perspective<br/><br/><br/><br/> > > and that's what I use threat modeling for. Maybe that's one explanation, I<br/><br/><br/><br/> > > (or you) are confusing operational security with engineering a softwareThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. <br/><br/><br/><br/> > > system. <br/><br/><br/><br/> > > <br/><br/><br/><br/> > > And I am sorry but modeling dollar amounts is .......well even NIST 800-30<br/><br/><br/><br/> > > explicitly says don't bother, it's a pipe dream. Take an online brokerage.<br/><br/><br/><br/> > > At market the HART's (Hourly Average Revenue Trades) will be totally<br/><br/><br/><br/> > > different from at 9pm. If I model the system from a monetary perspective<br/><br/><br/><br/> > > should I change my security model at market open from the evening? Do I<br/><br/><br/><br/> > > insist on digital certs when by average customer balance hits a 1 million<br/><br/><br/><br/> > > dollars per account....that sort of modeling would probably justify Bill<br/><br/><br/><br/> > > Gates using RACF to trade at discount broker X but guess what....<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > When I first left college I used to have to do RA's using CRAMM (I am<br/><br/><br/><br/> > > originally from the UK btw)... I would happily bet that I could write an<br/><br/><br/><br/> > > application that in a controlled environment (i.e. it won't fail from not<br/><br/><br/><br/> > > having a policy, backup etc etc) would pass a CRAThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. MM review with flying<br/><br/><br/><br/> > > colors and could be hacked totally in under a minute. The internet and<br/><br/><br/><br/> > > software technology is just too complex to try and model security<br/><br/><br/><br/> > > conceptually using simple wizards. I personally think that security threats<br/><br/><br/><br/> > > and countermeasures have moved at light speed compared to the technology<br/><br/><br/><br/> > > used to support RA. Just my personal opinion.<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > I think someone else had a good point in that RA tools are generally high<br/><br/><br/><br/> > > level. Building software is both a high level process AND a low level<br/><br/><br/><br/> > > procedure. The devil can be in the details and RA tools generally can't find<br/><br/><br/><br/> > > devils ;-)<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > -----Original Message-----<br/><br/><br/><br/> > > From: brennan stewart [mailto:brennan (at) ideahamster (dot) org [email concealed]] <br/><br/><br/><br/> > > Sent: Saturday, May 22, 2004 1:31 PM<br/><br/><br/><br/> > > To: webappsec (at) securityfocus (dot) com [email concealed]<br/><br/><br/><br/> > > Subject: RE: Threat Modelling<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > The tools used for Risk Management in certification & accreditation<br/><br/><br/><br/> > > (NIACAP/DITSCAP) are very effective for threat modeling. Some of them are<br/><br/><br/><br/> > > high level, and others can be technical. The problem with them though, is<br/><br/><br/><br/> > > their extreme price tags, proprietary content, lack of component<br/><br/><br/><br/> > > re-usability, and perhaps some information wouldn't be to the technical<br/><br/><br/><br/> > > level security professionals would require. They also don't have the level<br/><br/><br/><br/> > > of integration that is really vital.<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > While I know the initial thread was discussing Threat Modeling, it appears<br/><br/><br/><br/> > > there is a huge gap in the comprehensive risk assessment/threat management<br/><br/><br/><br/> > > arena (even with commercial software)<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > It would appear that an open source solution would fit the bill for this. My<br/><br/><br/><br/> > > ideas would take it far past mere threat modeling though for a more<br/><br/><br/><br/> > > complete, quantitative picture of risk, mitigations, dollar amounts,<br/><br/><br/><br/> > > residual risk, etc.<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > Some sample requirements:<br/><br/><br/><br/> > > Asset detailing, currency value assignment Complete threat listing, in DB<br/><br/><br/><br/> > > Attacks\exposures\etc matched to the OSVDB (maybe the legacy CVE/ICAT<br/><br/><br/><br/> > > also)<br/><br/><br/><br/> > > Logic to understand system configurations (Linux/Unix/Windows/Cisco/etc)<br/><br/><br/><br/> > > preloaded with sample hardening, and scoring mechanisms (NIST 800<br/><br/><br/><br/> > > series)<br/><br/><br/><br/> > > Logic to understand policies + DB<br/><br/><br/><br/> > > Logic to understand legal requirements + DB (swap requirements by<br/><br/><br/><br/> > > country/business/etc)<br/><br/><br/><br/> > > Network aggregation<br/><br/><br/><br/> > > Then, some nice reporting functions to top it off<br/><br/><br/><br/> > > (continued)<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > I know many of these data sources exist already individually.<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > regards,<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > Brennan<br/><br/><br/><br/> > > <br/><br/><br/><br/> > > <br/><br/><br/><br/> > > On Fri, 2004-05-21 at 04:58, Brewis, Mark wrote:<br/><br/><br/><br/> > > > >>-----Original Message-----<br/><br/><br/><br/> > > > >>From: Mark Curphey [mailto:mark (at) curphey (dot) com [email concealed]]<br/><br/><br/><br/> > > > >><br/><br/><br/><br/> > > > >>CRAMM is a general / generic Risk Assessment tool for information <br/><br/><br/><br/> > > > >>securtity.<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > For those who don't know, CRAMM is a high-level tool designed to model<br/><br/><br/><br/> > > risk at the physical, policy and procedural level, rather than the<br/><br/><br/><br/> > > technical. Early versions were difficult to use, and even harder to<br/><br/><br/><br/> > > interpret. The ISO 17799 aligned version is far more powerful, although it<br/><br/><br/><br/> > > needs someone skilled to drive it.<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > A more technical, network-level risk assessment/threat modelling tool back<br/><br/><br/><br/> > > in the late 1990's was the L3 Network Security Expert/Retriever, a (for the<br/><br/><br/><br/> > > time) sophisticated network mapping and risk analysis system . It was bought<br/><br/><br/><br/> > > by Symantec about 2000 and fairly promptly disappeared. If I remember<br/><br/><br/><br/> > > correctly, you were able to define any type of custom threats and<br/><br/><br/><br/> > > countermeasures, and model them with a reasonable level of granularity. I<br/><br/><br/><br/> > > only ever used it to model systems, rather than applications, but it was a<br/><br/><br/><br/> > > really interesting hybrid tool.<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > Both tools use/used some variation of the standard: <br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > * Define Assets<br/><br/><br/><br/> > > > * Define Vulnerabilities<br/><br/><br/><br/> > > > * Define Threats<br/><br/><br/><br/> > > > * Define Mitigation Strategies<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > within<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > * Technical<br/><br/><br/><br/> > > > * Management<br/><br/><br/><br/> > > > * Operational<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > Risk-Remediation areas.<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > Neither of these addresses your requirements (particularly L3, since it<br/><br/><br/><br/> > > appears to have gone), although I think the L3 tool(s) came closest. There<br/><br/><br/><br/> > > isn't anything I know of that even comes close to doing some of this, never<br/><br/><br/><br/> > > mind everything. Most of the case and sequence diagrams I've seen have been<br/><br/><br/><br/> > > manually defined and Visio drawn (paradoxically, probably the main utility<br/><br/><br/><br/> > > that helped kill off L3 Expert/Retriever). Risk modelling has been<br/><br/><br/><br/> > > extrapolated from those, in a generally ad hoc fashion.<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > In many respects, I think you've answered your own question - there is a<br/><br/><br/><br/> > > gap in this area. If Symantec still have the L3 code base lying around (and<br/><br/><br/><br/> > > it didn't metamorphose into the Vulnerability Assessment product) it might<br/><br/><br/><br/> > > be worth dusting down.<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > Mark<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > Mark Brewis<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > Security Consultant<br/><br/><br/><br/> > > > EDS<br/><br/><br/><br/> > > > UK Information Assurance Group<br/><br/><br/><br/> > > > Wavendon Tower<br/><br/><br/><br/> > > > Milton Keynes<br/><br/><br/><br/> > > > Buckinghamshire<br/><br/><br/><br/> > > > MK17 8LX.<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > Tel: +44 (0)1908 28 4013<br/><br/><br/><br/> > > > Mbl: +44 (0)7989 291 648<br/><br/><br/><br/> > > > Fax: +44 (0)1908 28 4393<br/><br/><br/><br/> > > > E@: mark.brewis (at) eds (dot) com [email concealed]<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > This email is confidential and intended solely for the use of the<br/><br/><br/><br/> > > individual(s) to whom it is addressed. Any views or opinions presented are<br/><br/><br/><br/> > > solely those of the author. If you are not the intended recipient, be<br/><br/><br/><br/> > > advised that you have received this email in error and that any use,<br/><br/><br/><br/> > > dissemination, forwarding, printing, or copying of this mail is strictly<br/><br/><br/><br/> > > prohibited.<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > Precautions have been taken to minimise the risk of transmitting software<br/><br/><br/><br/> > > viruses, but you must carry out your own virus checks on any attachment to<br/><br/><br/><br/> > > this message. No liability can be accepted for any loss or damage caused by<br/><br/><br/><br/> > > software viruses.<br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > > <br/><br/><br/><br/> > > <br/><br/><br/><br/> > > [ reply ] Re: Threat Modelling May 23 2004 09:55PM mfranz (mfranz speakeasy net) Brennan,<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> Correct me if I'm wrong, but aren't these SSE (System Security<br/><br/><br/><br/><br/> Engineering) Lifecycle models more often that not used for<br/><br/><br/><br/><br/> assessing/evulating organizations and systems built from COTS components<br/><br/><br/><br/><br/> vs. developing new products/protocols/applications? And when there is<br/><br/><br/><br/><br/> "new development" I would imagine that the world of proprietary<br/><br/><br/><br/><br/> government/DoD system/application development is a far different beast<br/><br/><br/><br/><br/> from the private sector. Isn't much of the focus is on process and<br/><br/><br/><br/><br/> policy, often at an organizational level? Not that these aren't<br/><br/><br/><br/><br/> important or relevant, or that these toolsets can be stretched to apply<br/><br/><br/><br/><br/> to more technical analysis but that is not their "sweet spot."<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> But unless the methodology (and possibly tools) are publically<br/><br/><br/><br/><br/> available, they are terribly useful for the problem at hand: everyone<br/><br/><br/><br/><br/> has agreed that there is a need for Free/Open Source threat<br/><br/><br/><br/><br/> modeling/risk assessment tools or methodology that are useful for<br/><br/><br/><br/><br/> application designers/developers/testers. DoD C&A tools aren't going to<br/><br/><br/><br/><br/> fix that.<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> Even if they could, there is the significant "translation effort" needed<br/><br/><br/><br/><br/> for for things like Common Criteria or CMM-SSE to be useful for<br/><br/><br/><br/><br/> commercial product/development/test teams. So I'm not sure the point of<br/><br/><br/><br/><br/> arguing whether or not CRAMM, DoD C&A (or anything else that someone has<br/><br/><br/><br/><br/> used in a past life) tools *have* or *could* solve the problem, because<br/><br/><br/><br/><br/> they don't.<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> The important thing is to start identifying requirements (you did) for<br/><br/><br/><br/><br/> tools and methodology that we all seem to agree is missing.<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> I think everyone agrees that the tools should be robust enough to handle<br/><br/><br/><br/><br/> down to the protocol/application/message/ (including implementation)<br/><br/><br/><br/><br/> level. Any threat modeling technique that doesn't help uncover<br/><br/><br/><br/><br/> implementation flaws isn't terribly useful, IMHO. I think several folks<br/><br/><br/><br/><br/> have also questioned the value of simple cost metrics. What can/should<br/><br/><br/><br/><br/> be automated via tools and what should be done manually? How do we<br/><br/><br/><br/><br/> represent threats and vulnerabilities and application and system state?<br/><br/><br/><br/><br/> How do we measure impact of compromises?<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> Take Attack Trees, a well known lightweight threat modeling technique,<br/><br/><br/><br/><br/> which has some success in being applied to both technical and<br/><br/><br/><br/><br/> non-technical domains. See the BGP Attack Tree<br/><br/><br/><br/><br/> (http://www.io.com/~mdfranz/papers/draft-convery-bgpattack-01.txt) we<br/><br/><br/><br/><br/> did within the IETF for the technical end of the spectrum.<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> Writing the damn things (whether in textual or graphical form) is<br/><br/><br/><br/><br/> tedious. That can/should be automated. Yeah, I'm aware of SecuriTree,<br/><br/><br/><br/><br/> perhaps we could hack FreeMind to develop something simliar? Perhaps<br/><br/><br/><br/><br/> after the tree is definied to a given level of detail, it is possibly to<br/><br/><br/><br/><br/> automatically generate a set of tests/test cases? Actually<br/><br/><br/><br/><br/> running/instantiating a real world system (application) through the<br/><br/><br/><br/><br/> tree, that is more difficult. Since Attack Trees are mentioned in Ch4 of<br/><br/><br/><br/><br/> _Secure Coding_ perhaps that Microsoft tool will have this capability.<br/><br/><br/><br/><br/> Will it be extensible, not sure? Can I apply it to network devices and<br/><br/><br/><br/><br/> protocols (thinking with my Cisco hat on) or is only suitable to<br/><br/><br/><br/><br/> applications and general purpose operating systems?<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> I think these are the sorts of questions we should be arguing about --<br/><br/><br/><br/><br/> not whether or not a closed methodlogy or proprietary tools solve the<br/><br/><br/><br/><br/> threat modeling problem, because they don't.<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> I'll probably chime in on the "generic tools" issue in a separate<br/><br/><br/><br/><br/> message ;)<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> Cheers<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> - mdf<br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/> > On Sat, 2004-05-22 at 16:55, Mark Curphey wrote:<br/><br/><br/><br/><br/> > > To quote ...."The tools used for Risk Management in certification &<br/><br/><br/><br/><br/> > > accreditation (NIACAP/DITSCAP) are very effective for threat modeling."<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > Maybe I am missing the point here so please help me out.<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > How would these generic tools help me methodically expose the fact that an<br/><br/><br/><br/><br/> > > application developer chose to send a password in clear in an unprotected<br/><br/><br/><br/><br/> > > SOAP message across an untrusted network?<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > (As C&A is a formal process for managing risk within the US government,I<br/><br/><br/><br/><br/> > am classifying tools used specifically for C&As as risk management<br/><br/><br/><br/><br/> > tools)<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > I am not sure the level of familiarity that you have with the US<br/><br/><br/><br/><br/> > Government's C&A in general so perhaps that is why you made the<br/><br/><br/><br/><br/> > statements you did. <br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > (only a brief overview of pertinent areas, by no means complete) <br/><br/><br/><br/><br/> > Phase 1 (definition) of a C&A includes definition of system functions,<br/><br/><br/><br/><br/> > requirements, and interfaces.<br/><br/><br/><br/><br/> > Phase 2 (verification) is a system architecture analysis, software<br/><br/><br/><br/><br/> > design analysis, Network connection rule compliance, integrity analysis<br/><br/><br/><br/><br/> > of integrated products, Security requirements validation procedures,<br/><br/><br/><br/><br/> > vulnerability evaluation<br/><br/><br/><br/><br/> > Phase 3 (validation) is a Security test & evaluation, penetration<br/><br/><br/><br/><br/> > testing. Evaluating system conformance with regulations, requirements,<br/><br/><br/><br/><br/> > and architecture.<br/><br/><br/><br/><br/> > Phase 4 (post accreditation) A repeat of the other phases in order to<br/><br/><br/><br/><br/> > maintain the level of security.<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > So, we are using a standard C&A tool. I have a generic list of security<br/><br/><br/><br/><br/> > requirements, a list of allowable and prohibited activities, security<br/><br/><br/><br/><br/> > configuration documentation, etc. Against these things, I am evaluating<br/><br/><br/><br/><br/> > a system.<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > Now to get specific on a sample question of yours.<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > application developer chose to send a password in clear in an<br/><br/><br/><br/><br/> > unprotected SOAP message across an untrusted network<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > 5.4.1 & 5.5 of the webserver STIG address that. So your test case would<br/><br/><br/><br/><br/> > be a failure because it would not meet the requirement to properly<br/><br/><br/><br/><br/> > protect SOAP messages.(This is also addressed in many other STIGs too,<br/><br/><br/><br/><br/> > incidentally).<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > Depending on what is being checked, this might be a manual process (did<br/><br/><br/><br/><br/> > you perform this activity?) or an automatic process (tool reads input<br/><br/><br/><br/><br/> > from other tools specifically addressing that problem). So, without the<br/><br/><br/><br/><br/> > manual addition of a best practice (e.g. an OWASP guide for web<br/><br/><br/><br/><br/> > application checking) or penetration tester input, we have already<br/><br/><br/><br/><br/> > identified the unprotected SOAP message.<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > These risk management tools are being used by system architects/coders @<br/><br/><br/><br/><br/> > a high level to build systems. Obviously, they aren't intended for this<br/><br/><br/><br/><br/> > usage. This brings us back to my previous email, where I mentioned the<br/><br/><br/><br/><br/> > problems existing with much of these types of applications today, the<br/><br/><br/><br/><br/> > vast potentials for improvment, etc. <br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > regards,<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > Brennan<br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > I think there maybe confusion between what I think of threat modeling and<br/><br/><br/><br/><br/> > > risk assessment. Threat modeling to me is about helping design a better<br/><br/><br/><br/><br/> > > technological solution. See Building Secure Software, Writing Secure Code or<br/><br/><br/><br/><br/> > > Threats and Countermeasures for my definition examples. Risk Assessment is<br/><br/><br/><br/><br/> > > generally about a better management solution (where the definition of<br/><br/><br/><br/><br/> > > management is the same as that from ISO17799). CRAMM is of negligible use<br/><br/><br/><br/><br/> > > whatsoever in designing a secure application. Actually any security tool<br/><br/><br/><br/><br/> > > that stores security information in an access database and is riddled with<br/><br/><br/><br/><br/> > > security holes itself is of no use to me at all but that's another story. It<br/><br/><br/><br/><br/> > > may have a use in modeling the business operations of a web environment but<br/><br/><br/><br/><br/> > > it will not help me design a secure system from a technological perspective<br/><br/><br/><br/><br/> > > and that's what I use threat modeling for. Maybe that's one explanation, I<br/><br/><br/><br/><br/> > > (or you) are confusing operational security with engineering a softwareThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. <br/><br/><br/><br/><br/> > > system. <br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > And I am sorry but modeling dollar amounts is .......well even NIST 800-30<br/><br/><br/><br/><br/> > > explicitly says don't bother, it's a pipe dream. Take an online brokerage.<br/><br/><br/><br/><br/> > > At market the HART's (Hourly Average Revenue Trades) will be totally<br/><br/><br/><br/><br/> > > different from at 9pm. If I model the system from a monetary perspective<br/><br/><br/><br/><br/> > > should I change my security model at market open from the evening? Do I<br/><br/><br/><br/><br/> > > insist on digital certs when by average customer balance hits a 1 million<br/><br/><br/><br/><br/> > > dollars per account....that sort of modeling would probably justify Bill<br/><br/><br/><br/><br/> > > Gates using RACF to trade at discount broker X but guess what....<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > When I first left college I used to have to do RA's using CRAMM (I am<br/><br/><br/><br/><br/> > > originally from the UK btw)... I would happily bet that I could write an<br/><br/><br/><br/><br/> > > application that in a controlled environment (i.e. it won't fail from not<br/><br/><br/><br/><br/> > > having a policy, backup etc etc) would pass a CRAThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. MM review with flying<br/><br/><br/><br/><br/> > > colors and could be hacked totally in under a minute. The internet and<br/><br/><br/><br/><br/> > > software technology is just too complex to try and model security<br/><br/><br/><br/><br/> > > conceptually using simple wizards. I personally think that security threats<br/><br/><br/><br/><br/> > > and countermeasures have moved at light speed compared to the technology<br/><br/><br/><br/><br/> > > used to support RA. Just my personal opinion.<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > I think someone else had a good point in that RA tools are generally high<br/><br/><br/><br/><br/> > > level. Building software is both a high level process AND a low level<br/><br/><br/><br/><br/> > > procedure. The devil can be in the details and RA tools generally can't find<br/><br/><br/><br/><br/> > > devils ;-)<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > -----Original Message-----<br/><br/><br/><br/><br/> > > From: brennan stewart [mailto:brennan (at) ideahamster (dot) org [email concealed]] <br/><br/><br/><br/><br/> > > Sent: Saturday, May 22, 2004 1:31 PM<br/><br/><br/><br/><br/> > > To: webappsec (at) securityfocus (dot) com [email concealed]<br/><br/><br/><br/><br/> > > Subject: RE: Threat Modelling<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > The tools used for Risk Management in certification & accreditation<br/><br/><br/><br/><br/> > > (NIACAP/DITSCAP) are very effective for threat modeling. Some of them are<br/><br/><br/><br/><br/> > > high level, and others can be technical. The problem with them though, is<br/><br/><br/><br/><br/> > > their extreme price tags, proprietary content, lack of component<br/><br/><br/><br/><br/> > > re-usability, and perhaps some information wouldn't be to the technical<br/><br/><br/><br/><br/> > > level security professionals would require. They also don't have the level<br/><br/><br/><br/><br/> > > of integration that is really vital.<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > While I know the initial thread was discussing Threat Modeling, it appears<br/><br/><br/><br/><br/> > > there is a huge gap in the comprehensive risk assessment/threat management<br/><br/><br/><br/><br/> > > arena (even with commercial software)<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > It would appear that an open source solution would fit the bill for this. My<br/><br/><br/><br/><br/> > > ideas would take it far past mere threat modeling though for a more<br/><br/><br/><br/><br/> > > complete, quantitative picture of risk, mitigations, dollar amounts,<br/><br/><br/><br/><br/> > > residual risk, etc.<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > Some sample requirements:<br/><br/><br/><br/><br/> > > Asset detailing, currency value assignment Complete threat listing, in DB<br/><br/><br/><br/><br/> > > Attacks\exposures\etc matched to the OSVDB (maybe the legacy CVE/ICAT<br/><br/><br/><br/><br/> > > also)<br/><br/><br/><br/><br/> > > Logic to understand system configurations (Linux/Unix/Windows/Cisco/etc)<br/><br/><br/><br/&g t;<br/> > > preloaded with sample hardening, and scoring mechanisms (NIST 800<br/><br/><br/><br/><br/> > > series)<br/><br/><br/><br/><br/> > > Logic to understand policies + DB<br/><br/><br/><br/><br/> > > Logic to understand legal requirements + DB (swap requirements by<br/><br/><br/><br/><br/> > > country/business/etc)<br/><br/><br/><br/><br/> > > Network aggregation<br/><br/><br/><br/><br/> > > Then, some nice reporting functions to top it off<br/><br/><br/><br/><br/> > > (continued)<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > I know many of these data sources exist already individually.<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > regards,<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > Brennan<br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > On Fri, 2004-05-21 at 04:58, Brewis, Mark wrote:<br/><br/><br/><br/><br/> > > > >>-----Original Message-----<br/><br/><br/><br/><br/> > > > >>From: Mark Curphey [mailto:mark (at) curphey (dot) com [email concealed]]<br/><br/><br/><br/><br/> > > > >><br/><br/><br/><br/><br/> > > > >>CRAMM is a general / generic Risk Assessment tool for information <br/><br/><br/><br/><br/> > > > >>securtity.<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > For those who don't know, CRAMM is a high-level tool designed to model<br/><br/><br/><br/><br/> > > risk at the physical, policy and procedural level, rather than the<br/><br/><br/><br/><br/> > > technical. Early versions were difficult to use, and even harder to<br/><br/><br/><br/><br/> > > interpret. The ISO 17799 aligned version is far more powerful, although it<br/><br/><br/><br/><br/> > > needs someone skilled to drive it.<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > A more technical, network-level risk assessment/threat modelling tool back<br/><br/><br/><br/><br/> > > in the late 1990's was the L3 Network Security Expert/Retriever, a (for the<br/><br/><br/><br/><br/> > > time) sophisticated network mapping and risk analysis system . It was bought<br/><br/><br/><br/><br/> > > by Symantec about 2000 and fairly promptly disappeared. If I remember<br/><br/><br/><br/><br/> > > correctly, you were able to define any type of custom threats and<br/><br/><br/><br/><br/> > > countermeasures, and model them with a reasonable level of granularity. I<br/><br/><br/><br/><br/> > > only ever used it to model systems, rather than applications, but it was a<br/><br/><br/><br/><br/> > > really interesting hybrid tool.<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > Both tools use/used some variation of the standard: <br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > * Define Assets<br/><br/><br/><br/><br/> > > > * Define Vulnerabilities<br/><br/><br/><br/><br/> > > > * Define Threats<br/><br/><br/><br/><br/> > > > * Define Mitigation Strategies<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > within<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > * Technical<br/><br/><br/><br/><br/> > > > * Management<br/><br/><br/><br/><br/> > > > * Operational<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > Risk-Remediation areas.<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > Neither of these addresses your requirements (particularly L3, since it<br/><br/><br/><br/><br/> > > appears to have gone), although I think the L3 tool(s) came closest. There<br/><br/><br/><br/><br/> > > isn't anything I know of that even comes close to doing some of this, never<br/><br/><br/><br/><br/> > > mind everything. Most of the case and sequence diagrams I've seen have been<br/><br/><br/><br/><br/> > > manually defined and Visio drawn (paradoxically, probably the main utility<br/><br/><br/><br/><br/> > > that helped kill off L3 Expert/Retriever). Risk modelling has been<br/><br/><br/><br/><br/> > > extrapolated from those, in a generally ad hoc fashion.<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > In many respects, I think you've answered your own question - there is a<br/><br/><br/><br/><br/> > > gap in this area. If Symantec still have the L3 code base lying around (and<br/><br/><br/><br/><br/> > > it didn't metamorphose into the Vulnerability Assessment product) it might<br/><br/><br/><br/><br/> > > be worth dusting down.<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > Mark<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > Mark Brewis<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > Security Consultant<br/><br/><br/><br/><br/> > > > EDS<br/><br/><br/><br/><br/> > > > UK Information Assurance Group<br/><br/><br/><br/><br/> > > > Wavendon Tower<br/><br/><br/><br/><br/> > > > Milton Keynes<br/><br/><br/><br/><br/> > > > Buckinghamshire<br/><br/><br/><br/><br/> > > > MK17 8LX.<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > Tel: +44 (0)1908 28 4013<br/><br/><br/><br/><br/> > > > Mbl: +44 (0)7989 291 648<br/><br/><br/><br/><br/> > > > Fax: +44 (0)1908 28 4393<br/><br/><br/><br/><br/> > > > E@: mark.brewis (at) eds (dot) com [email concealed]<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > This email is confidential and intended solely for the use of the<br/><br/><br/><br/><br/> > > individual(s) to whom it is addressed. Any views or opinions presented are<br/><br/><br/><br/><br/> > > solely those of the author. If you are not the intended recipient, be<br/><br/><br/><br/><br/> > > advised that you have received this email in error and that any use,<br/><br/><br/><br/><br/> > > dissemination, forwarding, printing, or copying of this mail is strictly<br/><br/><br/><br/><br/> > > prohibited.<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > Precautions have been taken to minimise the risk of transmitting software<br/><br/><br/><br/><br/> > > viruses, but you must carry out your own virus checks on any attachment to<br/><br/><br/><br/><br/> > > this message. No liability can be accepted for any loss or damage caused by<br/><br/><br/><br/><br/> > > software viruses.<br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/> > > [ reply ] Re: Threat Modelling May 23 2004 09:08AM Frank O'Dwyer (fod littlecatZ com) (2 replies) RE: Threat Modelling May 22 2004 08:55PM Mark Curphey (mark curphey com) (3 replies) RE: Threat Modelling May 23 2004 07:38PM brennan stewart (brennan ideahamster org) (5 replies) Re: Threat Modelling May 23 2004 09:55PM mfranz (mfranz speakeasy net) Brennan,<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> Correct me if I'm wrong, but aren't these SSE (System Security<br/><br/><br/><br/><br/><br/> Engineering) Lifecycle models more often that not used for<br/><br/><br/><br/><br/><br/> assessing/evulating organizations and systems built from COTS components<br/><br/><br/><br/><br/><br/> vs. developing new products/protocols/applications? And when there is<br/><br/><br/><br/><br/><br/> "new development" I would imagine that the world of proprietary<br/><br/><br/><br/><br/><br/> government/DoD system/application development is a far different beast<br/><br/><br/><br/><br/><br/> from the private sector. Isn't much of the focus is on process and<br/><br/><br/><br/><br/><br/> policy, often at an organizational level? Not that these aren't<br/><br/><br/><br/><br/><br/> important or relevant, or that these toolsets can be stretched to apply<br/><br/><br/><br/><br/><br/> to more technical analysis but that is not their "sweet spot."<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> But unless the methodology (and possibly tools) are publically<br/><br/><br/><br/><br/><br/> available, they are terribly useful for the problem at hand: everyone<br/><br/><br/><br/><br/><br/> has agreed that there is a need for Free/Open Source threat<br/><br/><br/><br/><br/><br/> modeling/risk assessment tools or methodology that are useful for<br/><br/><br/><br/><br/><br/> application designers/developers/testers. DoD C&A tools aren't going to<br/><br/><br/><br/><br/><br/> fix that.<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> Even if they could, there is the significant "translation effort" needed<br/><br/><br/><br/><br/><br/> for for things like Common Criteria or CMM-SSE to be useful for<br/><br/><br/><br/><br/><br/> commercial product/development/test teams. So I'm not sure the point of<br/><br/><br/><br/><br/><br/> arguing whether or not CRAMM, DoD C&A (or anything else that someone has<br/><br/><br/><br/><br/><br/> used in a past life) tools *have* or *could* solve the problem, because<br/><br/><br/><br/><br/><br/> they don't.<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> The important thing is to start identifying requirements (you did) for<br/><br/><br/><br/><br/><br/> tools and methodology that we all seem to agree is missing.<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> I think everyone agrees that the tools should be robust enough to handle<br/><br/><br/><br/><br/><br/> down to the protocol/application/message/ (including implementation)<br/><br/><br/><br/><br/><b r/> level. Any threat modeling technique that doesn't help uncover<br/><br/><br/><br/><br/><br/> implementation flaws isn't terribly useful, IMHO. I think several folks<br/><br/><br/><br/><br/><br/> have also questioned the value of simple cost metrics. What can/should<br/><br/><br/><br/><br/><br/> be automated via tools and what should be done manually? How do we<br/><br/><br/><br/><br/><br/> represent threats and vulnerabilities and application and system state?<br/><br/><br/><br/><br/><br/> How do we measure impact of compromises?<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> Take Attack Trees, a well known lightweight threat modeling technique,<br/><br/><br/><br/><br/><br/> which has some success in being applied to both technical and<br/><br/><br/><br/><br/><br/> non-technical domains. See the BGP Attack Tree<br/><br/><br/><br/><br/><br/> (http://www.io.com/~mdfranz/papers/draft-convery-bgpattack-01.txt) we<br/><br/><br/><br/><br/><br/> did within the IETF for the technical end of the spectrum.<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> Writing the damn things (whether in textual or graphical form) is<br/><br/><br/><br/><br/><br/> tedious. That can/should be automated. Yeah, I'm aware of SecuriTree,<br/><br/><br/><br/><br/><br/> perhaps we could hack FreeMind to develop something simliar? Perhaps<br/><br/><br/><br/><br/><br/> after the tree is definied to a given level of detail, it is possibly to<br/><br/><br/><br/><br/><br/> automatically generate a set of tests/test cases? Actually<br/><br/><br/><br/><br/><br/> running/instantiating a real world system (application) through the<br/><br/><br/><br/><br/><br/> tree, that is more difficult. Since Attack Trees are mentioned in Ch4 of<br/><br/><br/><br/><br/><br/> _Secure Coding_ perhaps that Microsoft tool will have this capability.<br/><br/><br/><br/><br/><br/> Will it be extensible, not sure? Can I apply it to network devices and<br/><br/><br/><br/><br/><br/> protocols (thinking with my Cisco hat on) or is only suitable to<br/><br/><br/><br/><br/><br/> applications and general purpose operating systems?<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> I think these are the sorts of questions we should be arguing about --<br/><br/><br/><br/><br/><br/> not whether or not a closed methodlogy or proprietary tools solve the<br/><br/><br/><br/><br/><br/> threat modeling problem, because they don't.<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> I'll probably chime in on the "generic tools" issue in a separate<br/><br/><br/><br/><br/><br/> message ;)<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> Cheers<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> - mdf<br/><br/><br/><br/><br/><br/> <br/><br/><br/><br/><br/><br/> > On Sat, 2004-05-22 at 16:55, Mark Curphey wrote:<br/><br/><br/><br/><br/><br/> > > To quote ...."The tools used for Risk Management in certification &<br/><br/><br/><br/><br/><br/> > > accreditation (NIACAP/DITSCAP) are very effective for threat modeling."<br/><br/><br/><br/><br/><b r/> > > <br/><br/><br/><br/><br/><br/> > > Maybe I am missing the point here so please help me out.<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > How would these generic tools help me methodically expose the fact that an<br/><br/><br/><br/><br/><br/> > > application developer chose to send a password in clear in an unprotected<br/><br/><br/><br/><br/><br/> > > SOAP message across an untrusted network?<br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > (As C&A is a formal process for managing risk within the US government,I<br/><br/><br/><br/><br/><br/> > am classifying tools used specifically for C&As as risk management<br/><br/><br/><br/><br/><br/> > tools)<br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > I am not sure the level of familiarity that you have with the US<br/><br/><br/><br/><br/><br/> > Government's C&A in general so perhaps that is why you made the<br/><br/><br/><br/><br/><br/> > statements you did. <br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > (only a brief overview of pertinent areas, by no means complete) <br/><br/><br/><br/><br/><br/> > Phase 1 (definition) of a C&A includes definition of system functions,<br/><br/><br/><br/><br/><br/> > requirements, and interfaces.<br/><br/><br/><br/><br/><br/> > Phase 2 (verification) is a system architecture analysis, software<br/><br/><br/><br/><br/><br/> > design analysis, Network connection rule compliance, integrity analysis<br/><br/><br/><br/><br/><br/> > of integrated products, Security requirements validation procedures,<br/><br/><br/><br/><br/><br/> > vulnerability evaluation<br/><br/><br/><br/><br/><br/> > Phase 3 (validation) is a Security test & evaluation, penetration<br/><br/><br/><br/><br/><br/> > testing. Evaluating system conformance with regulations, requirements,<br/><br/><br/><br/><br/><br/ > > and architecture.<br/><br/><br/><br/><br/><br/ > > Phase 4 (post accreditation) A repeat of the other phases in order to<br/><br/><br/><br/><br/><br/> > maintain the level of security.<br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > So, we are using a standard C&A tool. I have a generic list of security<br/><br/><br/><br/><br/><br/> > requirements, a list of allowable and prohibited activities, security<br/><br/><br/><br/><br/><br/> > configuration documentation, etc. Against these things, I am evaluating<br/><br/><br/><br/><br/><br/> > a system.<br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > Now to get specific on a sample question of yours.<br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > application developer chose to send a password in clear in an<br/><br/><br/><br/><br/><br/> > unprotected SOAP message across an untrusted network<br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > 5.4.1 & 5.5 of the webserver STIG address that. So your test case would<br/><br/><br/><br/><br/><br/> > be a failure because it would not meet the requirement to properly<br/><br/><br/><br/><br/><br/> > protect SOAP messages.(This is also addressed in many other STIGs too,<br/><br/><br/><br/><br/><br/> > incidentally).<br/><br/><br/><br/><br/><br /> > <br/><br/><br/><br/><br/><br/> > Depending on what is being checked, this might be a manual process (did<br/><br/><br/><br/><br/><br/> > you perform this activity?) or an automatic process (tool reads input<br/><br/><br/><br/><br/><br/> > from other tools specifically addressing that problem). So, without the<br/><br/><br/><br/><br/><br/> > manual addition of a best practice (e.g. an OWASP guide for web<br/><br/><br/><br/><br/><br/> > application checking) or penetration tester input, we have already<br/><br/><br/><br/><br/><br/> > identified the unprotected SOAP message.<br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > These risk management tools are being used by system architects/coders @<br/><br/><br/><br/><br/><br/> > a high level to build systems. Obviously, they aren't intended for this<br/><br/><br/><br/><br/><br/> > usage. This brings us back to my previous email, where I mentioned the<br/><br/><br/><br/><br/><br/> > problems existing with much of these types of applications today, the<br/><br/><br/><br/><br/><br/> > vast potentials for improvment, etc. <br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > regards,<br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > Brennan<br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > I think there maybe confusion between what I think of threat modeling and<br/><br/><br/><br/><br/><br/> > > risk assessment. Threat modeling to me is about helping design a better<br/><br/><br/><br/><br/><br/> > > technological solution. See Building Secure Software, Writing Secure Code or<br/><br/><br/><br/><br/><br/> > > Threats and Countermeasures for my definition examples. Risk Assessment is<br/><br/><br/><br/><br/><br/> > > generally about a better management solution (where the definition of<br/><br/><br/><br/><br/><br/> > > management is the same as that from ISO17799). CRAMM is of negligible use<br/><br/><br/><br/><br/><br/> > > whatsoever in designing a secure application. Actually any security tool<br/><br/><br/><br/><br/><br/> > > that stores security information in an access database and is riddled with<br/><br/><br/><br/><br/><br/> > > security holes itself is of no use to me at all but that's another story. It<br/><br/><br/><br/><br/><br/> > > may have a use in modeling the business operations of a web environment but<br/><br/><br/><br/><br/><br/> > > it will not help me design a secure system from a technological perspective<br/><br/><br/><br/><br/><br/> > > and that's what I use threat modeling for. Maybe that's one explanation, I<br/><br/><br/><br/><br/><br/> > > (or you) are confusing operational security with engineering a softwareThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. <br/><br/><br/><br/><br/><br/> > > system. <br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > And I am sorry but modeling dollar amounts is .......well even NIST 800-30<br/><br/><br/><br/><br/><br/> > > explicitly says don't bother, it's a pipe dream. Take an online brokerage.<br/><br/><br/><br/><br/><br/> > > At market the HART's (Hourly Average Revenue Trades) will be totally<br/><br/><br/><br/><br/><br/> > > different from at 9pm. If I model the system from a monetary perspective<br/><br/><br/><br/><br/><br/> > > should I change my security model at market open from the evening? Do I<br/><br/><br/><br/><br/><br/> > > insist on digital certs when by average customer balance hits a 1 million<br/><br/><br/><br/><br/><br/> > > dollars per account....that sort of modeling would probably justify Bill<br/><br/><br/><br/><br/><br/> > > Gates using RACF to trade at discount broker X but guess what....<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > When I first left college I used to have to do RA's using CRAMM (I am<br/><br/><br/><br/><br/><br/> > > originally from the UK btw)... I would happily bet that I could write an<br/><br/><br/><br/><br/><br/> > > application that in a controlled environment (i.e. it won't fail from not<br/><br/><br/><br/><br/><br/> > > having a policy, backup etc etc) would pass a CRAThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. MM review with flying<br/><br/><br/><br/><br/><br/> > > colors and could be hacked totally in under a minute. The internet and<br/><br/><br/><br/><br/><br/> > > software technology is just too complex to try and model security<br/><br/><br/><br/><br/><br/> > > conceptually using simple wizards. I personally think that security threats<br/><br/><br/><br/><br/><br/> > > and countermeasures have moved at light speed compared to the technology<br/><br/><br/><br/><br/><br/> > > used to support RA. Just my personal opinion.<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > I think someone else had a good point in that RA tools are generally high<br/><br/><br/><br/><br/><br/> > > level. Building software is both a high level process AND a low level<br/><br/><br/><br/><br/><br/> > > procedure. The devil can be in the details and RA tools generally can't find<br/><br/><br/><br/><br/><br/> > > devils ;-)<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > -----Original Message-----<br/><br/><br/><br/><br/><br/> > > From: brennan stewart [mailto:brennan (at) ideahamster (dot) org [email concealed]] <br/><br/><br/><br/><br/><br/> > > Sent: Saturday, May 22, 2004 1:31 PM<br/><br/><br/><br/><br/><br/> > > To: webappsec (at) securityfocus (dot) com [email concealed]<br/><br/><br/><br/><br/><br/> > > Subject: RE: Threat Modelling<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > The tools used for Risk Management in certification & accreditation<br/><br/><br/><br/><br/><br/ > > > (NIACAP/DITSCAP) are very effective for threat modeling. Some of them are<br/><br/><br/><br/><br/><br/> > > high level, and others can be technical. The problem with them though, is<br/><br/><br/><br/><br/><br/> > > their extreme price tags, proprietary content, lack of component<br/><br/><br/><br/><br/><br/> > > re-usability, and perhaps some information wouldn't be to the technical<br/><br/><br/><br/><br/><br/> > > level security professionals would require. They also don't have the level<br/><br/><br/><br/><br/><br/> > > of integration that is really vital.<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > While I know the initial thread was discussing Threat Modeling, it appears<br/><br/><br/><br/><br/><br/> > > there is a huge gap in the comprehensive risk assessment/threat management<br/><br/><br/><br/><br/><br/> > > arena (even with commercial software)<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > It would appear that an open source solution would fit the bill for this. My<br/><br/><br/><br/><br/><br/> > > ideas would take it far past mere threat modeling though for a more<br/><br/><br/><br/><br/><br/> > > complete, quantitative picture of risk, mitigations, dollar amounts,<br/><br/><br/><br/><br/><br/> > > residual risk, etc.<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > Some sample requirements:<br/><br/><br/><br/><br/><br/ > > > Asset detailing, currency value assignment Complete threat listing, in DB<br/><br/><br/><br/><br/><br/> > > Attacks\exposures\etc matched to the OSVDB (maybe the legacy CVE/ICAT<br/><br/><br/><br/><br/><br/> > > also)<br/><br/><br/><br/><br/><br/> > > Logic to understand system configurations (Linux/Unix/Windows/Cisco/etc)<br/><br/><br/><br/&a mp;g<br/> t;<br/><br/> > > preloaded with sample hardening, and scoring mechanisms (NIST 800<br/><br/><br/><br/><br/><br/> > > series)<br/><br/><br/><br/><br/><br/> > > Logic to understand policies + DB<br/><br/><br/><br/><br/><br/> > > Logic to understand legal requirements + DB (swap requirements by<br/><br/><br/><br/><br/><br/> > > country/business/etc)<br/><br/><br/><br/><br/ ><br/> > > Network aggregation<br/><br/><br/><br/><br/><br/> > > Then, some nice reporting functions to top it off<br/><br/><br/><br/><br/><br/> > > (continued)<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > I know many of these data sources exist already individually.<br/><br/><br/><br/><br/><br/ > > > <br/><br/><br/><br/><br/><br/> > > regards,<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > Brennan<br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > On Fri, 2004-05-21 at 04:58, Brewis, Mark wrote:<br/><br/><br/><br/><br/><br/> > > > >>-----Original Message-----<br/><br/><br/><br/><br/><br/> > > > >>From: Mark Curphey [mailto:mark (at) curphey (dot) com [email concealed]]<br/><br/><br/><br/><br/><br/> > > > >><br/><br/><br/><br/><br/><br/> > > > >>CRAMM is a general / generic Risk Assessment tool for information <br/><br/><br/><br/><br/><br/> > > > >>securtity.<br/><br/><br/><br/><br/> ;<br/> > > > <br/><br/><br/><br/><br/><br/> > > > For those who don't know, CRAMM is a high-level tool designed to model<br/><br/><br/><br/><br/><br/> > > risk at the physical, policy and procedural level, rather than the<br/><br/><br/><br/><br/><br/> > > technical. Early versions were difficult to use, and even harder to<br/><br/><br/><br/><br/><br/> > > interpret. The ISO 17799 aligned version is far more powerful, although it<br/><br/><br/><br/><br/><br/> > > needs someone skilled to drive it.<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > A more technical, network-level risk assessment/threat modelling tool back<br/><br/><br/><br/><br/><br/> > > in the late 1990's was the L3 Network Security Expert/Retriever, a (for the<br/><br/><br/><br/><br/><br/> > > time) sophisticated network mapping and risk analysis system . It was bought<br/><br/><br/><br/><br/><br/> > > by Symantec about 2000 and fairly promptly disappeared. If I remember<br/><br/><br/><br/><br/><br/> > > correctly, you were able to define any type of custom threats and<br/><br/><br/><br/><br/><br/> > > countermeasures, and model them with a reasonable level of granularity. I<br/><br/><br/><br/><br/><br/> > > only ever used it to model systems, rather than applications, but it was a<br/><br/><br/><br/><br/><br/> > > really interesting hybrid tool.<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > Both tools use/used some variation of the standard: <br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > * Define Assets<br/><br/><br/><br/><br/><br/> > > > * Define Vulnerabilities<br/><br/><br/><br/><br/><b r/> > > > * Define Threats<br/><br/><br/><br/><br/><br/> > > > * Define Mitigation Strategies<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > within<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > * Technical<br/><br/><br/><br/><br/><br/> > > > * Management<br/><br/><br/><br/><br/><br/> > > > * Operational<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > Risk-Remediation areas.<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > Neither of these addresses your requirements (particularly L3, since it<br/><br/><br/><br/><br/><br/> > > appears to have gone), although I think the L3 tool(s) came closest. There<br/><br/><br/><br/><br/><br/> > > isn't anything I know of that even comes close to doing some of this, never<br/><br/><br/><br/><br/><br/> > > mind everything. Most of the case and sequence diagrams I've seen have been<br/><br/><br/><br/><br/><br/> > > manually defined and Visio drawn (paradoxically, probably the main utility<br/><br/><br/><br/><br/><br/> > > that helped kill off L3 Expert/Retriever). Risk modelling has been<br/><br/><br/><br/><br/><br/> > > extrapolated from those, in a generally ad hoc fashion.<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > In many respects, I think you've answered your own question - there is a<br/><br/><br/><br/><br/><br/> > > gap in this area. If Symantec still have the L3 code base lying around (and<br/><br/><br/><br/><br/><br/> > > it didn't metamorphose into the Vulnerability Assessment product) it might<br/><br/><br/><br/><br/><br/> > > be worth dusting down.<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > Mark<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > Mark Brewis<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > Security Consultant<br/><br/><br/><br/><br/><br/> > > > EDS<br/><br/><br/><br/><br/><br/> > > > UK Information Assurance Group<br/><br/><br/><br/><br/><br/> > > > Wavendon Tower<br/><br/><br/><br/><br/><br/> > > > Milton Keynes<br/><br/><br/><br/><br/><br/> > > > Buckinghamshire<br/><br/><br/><br/><br/><b r/> > > > MK17 8LX.<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > Tel: +44 (0)1908 28 4013<br/><br/><br/><br/><br/><br/> > > > Mbl: +44 (0)7989 291 648<br/><br/><br/><br/><br/><br/> > > > Fax: +44 (0)1908 28 4393<br/><br/><br/><br/><br/><br/> > > > E@: mark.brewis (at) eds (dot) com [email concealed]<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > This email is confidential and intended solely for the use of the<br/><br/><br/><br/><br/><br/> > > individual(s) to whom it is addressed. Any views or opinions presented are<br/><br/><br/><br/><br/><br/> > > solely those of the author. If you are not the intended recipient, be<br/><br/><br/><br/><br/><br/> > > advised that you have received this email in error and that any use,<br/><br/><br/><br/><br/><br/> > > dissemination, forwarding, printing, or copying of this mail is strictly<br/><br/><br/><br/><br/><br/> > > prohibited.<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > Precautions have been taken to minimise the risk of transmitting software<br/><br/><br/><br/><br/><br/> > > viruses, but you must carry out your own virus checks on any attachment to<br/><br/><br/><br/><br/><br/> > > this message. No liability can be accepted for any loss or damage caused by<br/><br/><br/><br/><br/><br/> > > software viruses.<br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/> > > [ reply ] Re: Threat Modelling May 23 2004 09:55PM mfranz (mfranz speakeasy net) Brennan,<br/><br/><br/><br/><br/><br/&g t;<br/> <br/><br/><br/><br/><br/><br/><br/> Correct me if I'm wrong, but aren't these SSE (System Security<br/><br/><br/><br/><br/><br/&g t;<br/> Engineering) Lifecycle models more often that not used for<br/><br/><br/><br/><br/><br/><br /> assessing/evulating organizations and systems built from COTS components<br/><br/><br/><br/><br/><br/ ><br/> vs. developing new products/protocols/applications? And when there is<br/><br/><br/><br/><br/><br/><br/ > "new development" I would imagine that the world of proprietary<br/><br/><br/><br/><br/><br /><br/> government/DoD system/application development is a far different beast<br/><br/><br/><br/><br/><br/>< br/> from the private sector. Isn't much of the focus is on process and<br/><br/><br/><br/><br/><br/><br /> policy, often at an organizational level? Not that these aren't<br/><br/><br/><br/><br/><br/ ><br/> important or relevant, or that these toolsets can be stretched to apply<br/><br/><br/><br/><br/><br/>< br/> to more technical analysis but that is not their "sweet spot."<br/><br/><br/><br/><br/><br /><br/> <br/><br/><br/><br/><br/><br/><br/> But unless the methodology (and possibly tools) are publically<br/><br/><br/><br/><br/><br/ ><br/> available, they are terribly useful for the problem at hand: everyone<br/><br/><br/><br/><br/><br/&g t;<br/> has agreed that there is a need for Free/Open Source threat<br/><br/><br/><br/><br/><br/> <br/> modeling/risk assessment tools or methodology that are useful for<br/><br/><br/><br/><br/><br/><br /> application designers/developers/testers. DoD C&A tools aren't going to<br/><br/><br/><br/><br/><br/><br/ > fix that.<br/><br/><br/><br/><br/><br/>< br/> <br/><br/><br/><br/><br/><br/><br/> Even if they could, there is the significant "translation effort" needed<br/><br/><br/><br/><br/><br/> <br/> for for things like Common Criteria or CMM-SSE to be useful for<br/><br/><br/><br/><br/><br/><br /> commercial product/development/test teams. So I'm not sure the point of<br/><br/><br/><br/><br/><br/><br/ > arguing whether or not CRAMM, DoD C&A (or anything else that someone has<br/><br/><br/><br/><br/><br/><br /> used in a past life) tools *have* or *could* solve the problem, because<br/><br/><br/><br/><br/><br/> ;<br/> they don't.<br/><br/><br/><br/><br/><br/ ><br/> <br/><br/><br/><br/><br/><br/><br/> The important thing is to start identifying requirements (you did) for<br/><br/><br/><br/><br/><br/><br /> tools and methodology that we all seem to agree is missing.<br/><br/><br/><br/><br/><br/&g t;<br/> <br/><br/><br/><br/><br/><br/><br/> I think everyone agrees that the tools should be robust enough to handle<br/><br/><br/><br/><br/><br/> <br/> down to the protocol/application/message/ (including implementation)<br/><br/><br/><br/><br/>&l t;b<br/> r/><br/> level. Any threat modeling technique that doesn't help uncover<br/><br/><br/><br/><br/><br/> ;<br/> implementation flaws isn't terribly useful, IMHO. I think several folks<br/><br/><br/><br/><br/><br/>< br/> have also questioned the value of simple cost metrics. What can/should<br/><br/><br/><br/><br/><br/ ><br/> be automated via tools and what should be done manually? How do we<br/><br/><br/><br/><br/><br/><br/ > represent threats and vulnerabilities and application and system state?<br/><br/><br/><br/><br/><br/> <br/> How do we measure impact of compromises?<br/><br/><br/><br/><br/><b r/><br/> <br/> <br/><br/><br/><br/><br/><br/><br/> Take Attack Trees, a well known lightweight threat modeling technique,<br/><br/><br/><br/><br/><br/ ><br/> which has some success in being applied to both technical and<br/><br/><br/><br/><br/><br/><br /> non-technical domains. See the BGP Attack Tree<br/><br/><br/><br/><br/><br/><b r/> (http://www.io.com/~mdfranz/papers/draft-convery-bgpattack-01.txt) we<br/><br/><br/><br/><br/><br/><br/ > did within the IETF for the technical end of the spectrum.<br/><br/><br/><br/><br/><br/& gt;<br/> <br/><br/><br/><br/><br/><br/><br/> Writing the damn things (whether in textual or graphical form) is<br/><br/><br/><br/><br/><br/><br/ > tedious. That can/should be automated. Yeah, I'm aware of SecuriTree,<br/><br/><br/><br/><br/><br /><br/> perhaps we could hack FreeMind to develop something simliar? Perhaps<br/><br/><br/><br/><br/><br/> ;<br/> after the tree is definied to a given level of detail, it is possibly to<br/><br/><br/><br/><br/><br/><br/ > automatically generate a set of tests/test cases? Actually<br/><br/><br/><br/><br/><br/&g t;<br/> running/instantiating a real world system (application) through the<br/><br/><br/><br/><br/><br/><br /> tree, that is more difficult. Since Attack Trees are mentioned in Ch4 of<br/><br/><br/><br/><br/><br/><br/ > _Secure Coding_ perhaps that Microsoft tool will have this capability.<br/><br/><br/><br/><br/><br /><br/> Will it be extensible, not sure? Can I apply it to network devices and<br/><br/><br/><br/><br/><br/><br /> protocols (thinking with my Cisco hat on) or is only suitable to<br/><br/><br/><br/><br/><br/><br/ > applications and general purpose operating systems?<br/><br/><br/><br/><br/><br/&g t;<br/> <br/><br/><br/><br/><br/><br/><br/> I think these are the sorts of questions we should be arguing about --<br/><br/><br/><br/><br/><br/><br/ > not whether or not a closed methodlogy or proprietary tools solve the<br/><br/><br/><br/><br/><br/><br /> threat modeling problem, because they don't.<br/><br/><br/><br/><br/><br/ ><br/> <br/><br/><br/><br/><br/><br/><br/> I'll probably chime in on the "generic tools" issue in a separate<br/><br/><br/><br/><br/><br/&g t;<br/> message ;)<br/><br/><br/><br/><br/><br/><br/ > <br/><br/><br/><br/><br/><br/><br/> Cheers<br/><br/><br/><br/><br/><br/> <br/> <br/><br/><br/><br/><br/><br/><br/> - mdf<br/><br/><br/><br/><br/><br/><br /> <br/><br/><br/><br/><br/><br/><br/> > On Sat, 2004-05-22 at 16:55, Mark Curphey wrote:<br/><br/><br/><br/><br/><br/> <br/> > > To quote ...."The tools used for Risk Management in certification &<br/><br/><br/><br/><br/><br/>< br/> > > accreditation (NIACAP/DITSCAP) are very effective for threat modeling."<br/><br/><br/><br/><br/>&l t;b<br/> r/><br/> > > <br/><br/><br/><br/><br/><br/><br/> > > Maybe I am missing the point here so please help me out.<br/><br/><br/><br/><br/><br/><b r/> > > <br/><br/><br/><br/><br/><br/><br/> > > How would these generic tools help me methodically expose the fact that an<br/><br/><br/><br/><br/><br/><br/ > > > application developer chose to send a password in clear in an unprotected<br/><br/><br/><br/><br/><br /><br/> > > SOAP message across an untrusted network?<br/><br/><br/><br/><br/><br/&g t;<br/> > <br/><br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/><br/> > (As C&A is a formal process for managing risk within the US government,I<br/><br/><br/><br/><br/><b r/><br/> <br/> > am classifying tools used specifically for C&As as risk management<br/><br/><br/><br/><br/><br/ ><br/> > tools)<br/><br/><br/><br/><br/><br/> <br/> > <br/><br/><br/><br/><br/><br/><br/> > I am not sure the level of familiarity that you have with the US<br/><br/><br/><br/><br/><br/><br/ > > Government's C&A in general so perhaps that is why you made the<br/><br/><br/><br/><br/><br/><br /> > statements you did. <br/><br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/><br/> > (only a brief overview of pertinent areas, by no means complete) <br/><br/><br/><br/><br/><br/><br/> > Phase 1 (definition) of a C&A includes definition of system functions,<br/><br/><br/><br/><br/><br/ ><br/> > requirements, and interfaces.<br/><br/><br/><br/><br/><br /><br/> > Phase 2 (verification) is a system architecture analysis, software<br/><br/><br/><br/><br/><br/&g t;<br/> > design analysis, Network connection rule compliance, integrity analysis<br/><br/><br/><br/><br/><br/&g t;<br/> > of integrated products, Security requirements validation procedures,<br/><br/><br/><br/><br/><br /><br/> > vulnerability evaluation<br/><br/><br/><br/><br/><br/ ><br/> > Phase 3 (validation) is a Security test & evaluation, penetration<br/><br/><br/><br/><br/><br /><br/> > testing. Evaluating system conformance with regulations, requirements,<br/><br/><br/><br/><br/>< br/<br/> ><br/> > and architecture.<br/><br/><br/><br/><br/>< br/<br/> ><br/> > Phase 4 (post accreditation) A repeat of the other phases in order to<br/><br/><br/><br/><br/><br/><br/ > > maintain the level of security.<br/><br/><br/><br/><br/><br/& gt;<br/> > <br/><br/><br/><br/><br/><br/><br/> > So, we are using a standard C&A tool. I have a generic list of security<br/><br/><br/><br/><br/><br/&g t;<br/> > requirements, a list of allowable and prohibited activities, security<br/><br/><br/><br/><br/><br/&g t;<br/> > configuration documentation, etc. Against these things, I am evaluating<br/><br/><br/><br/><br/><br/ ><br/> > a system.<br/><br/><br/><br/><br/><br/> ;<br/> > <br/><br/><br/><br/><br/><br/><br/> > Now to get specific on a sample question of yours.<br/><br/><br/><br/><br/><br/> <br/> > <br/><br/><br/><br/><br/><br/><br/> > application developer chose to send a password in clear in an<br/><br/><br/><br/><br/><br/><br/ > > unprotected SOAP message across an untrusted network<br/><br/><br/><br/><br/><br/> ;<br/> > <br/><br/><br/><br/><br/><br/><br/> > 5.4.1 & 5.5 of the webserver STIG address that. So your test case would<br/><br/><br/><br/><br/><br/>< br/> > be a failure because it would not meet the requirement to properly<br/><br/><br/><br/><br/><br/&g t;<br/> > protect SOAP messages.(This is also addressed in many other STIGs too,<br/><br/><br/><br/><br/><br/><b r/> > incidentally).<br/><br/><br/><br/><br/>< ;br<br/> /><br/> > <br/><br/><br/><br/><br/><br/><br/> > Depending on what is being checked, this might be a manual process (did<br/><br/><br/><br/><br/><br/><b r/> > you perform this activity?) or an automatic process (tool reads input<br/><br/><br/><br/><br/><br/>< br/> > from other tools specifically addressing that problem). So, without the<br/><br/><br/><br/><br/><br/><br /> > manual addition of a best practice (e.g. an OWASP guide for web<br/><br/><br/><br/><br/><br/><br /> > application checking) or penetration tester input, we have already<br/><br/><br/><br/><br/><br/> ;<br/> > identified the unprotected SOAP message.<br/><br/><br/><br/><br/><br/&g t;<br/> > <br/><br/><br/><br/><br/><br/><br/> > These risk management tools are being used by system architects/coders @<br/><br/><br/><br/><br/><br/><br/> > a high level to build systems. Obviously, they aren't intended for this<br/><br/><br/><br/><br/><br/><b r/> > usage. This brings us back to my previous email, where I mentioned the<br/><br/><br/><br/><br/><br/><br /> > problems existing with much of these types of applications today, the<br/><br/><br/><br/><br/><br/><br /> > vast potentials for improvment, etc. <br/><br/><br/><br/><br/><br/><br/> > <br/><br/><br/><br/><br/><br/><br/> > regards,<br/><br/><br/><br/><br/><br/&g t;<br/> > <br/><br/><br/><br/><br/><br/><br/> > Brennan<br/><br/><br/><br/><br/><br/> ;<br/> > <br/><br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/><br/> > > I think there maybe confusion between what I think of threat modeling and<br/><br/><br/><br/><br/><br/><br /> > > risk assessment. Threat modeling to me is about helping design a better<br/><br/><br/><br/><br/><br/> <br/> > > technological solution. See Building Secure Software, Writing Secure Code or<br/><br/><br/><br/><br/><br/><br/ > > > Threats and Countermeasures for my definition examples. Risk Assessment is<br/><br/><br/><br/><br/><br/><br/ > > > generally about a better management solution (where the definition of<br/><br/><br/><br/><br/><br/><br/ > > > management is the same as that from ISO17799). CRAMM is of negligible use<br/><br/><br/><br/><br/><br/><br /> > > whatsoever in designing a secure application. Actually any security tool<br/><br/><br/><br/><br/><br/><b r/> > > that stores security information in an access database and is riddled with<br/><br/><br/><br/><br/><br/><b r/> > > security holes itself is of no use to me at all but that's another story. It<br/><br/><br/><br/><br/><br/><br/ > > > may have a use in modeling the business operations of a web environment but<br/><br/><br/><br/><br/><br/><br /> > > it will not help me design a secure system from a technological perspective<br/><br/><br/><br/><br/><br /><br/> > > and that's what I use threat modeling for. Maybe that's one explanation, I<br/><br/><br/><br/><br/><br/><br/> > > (or you) are confusing operational security with engineering a softwareThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. <br/><br/><br/><br/><br/><br/><br/> > > system. <br/><br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/><br/> > > And I am sorry but modeling dollar amounts is .......well even NIST 800-30<br/><br/><br/><br/><br/><br/> <br/> > > explicitly says don't bother, it's a pipe dream. Take an online brokerage.<br/><br/><br/><br/><br/><br/ ><br/> > > At market the HART's (Hourly Average Revenue Trades) will be totally<br/><br/><br/><br/><br/><br/> ;<br/> > > different from at 9pm. If I model the system from a monetary perspective<br/><br/><br/><br/><br/><br /><br/> > > should I change my security model at market open from the evening? Do I<br/><br/><br/><br/><br/><br/><br/> > > insist on digital certs when by average customer balance hits a 1 million<br/><br/><br/><br/><br/><br/> ;<br/> > > dollars per account....that sort of modeling would probably justify Bill<br/><br/><br/><br/><br/><br/><b r/> > > Gates using RACF to trade at discount broker X but guess what....<br/><br/><br/><br/><br/><br/&g t;<br/> > > <br/><br/><br/><br/><br/><br/><br/> > > When I first left college I used to have to do RA's using CRAMM (I am<br/><br/><br/><br/><br/><br/><br/ > > > originally from the UK btw)... I would happily bet that I could write an<br/><br/><br/><br/><br/><br/><br/ > > > application that in a controlled environment (i.e. it won't fail from not<br/><br/><br/><br/><br/><br/><br /> > > having a policy, backup etc etc) would pass a CRAThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. MM review with flying<br/><br/><br/><br/><br/><br/> <br/> > > colors and could be hacked totally in under a minute. The internet and<br/><br/><br/><br/><br/><br/><br /> > > software technology is just too complex to try and model security<br/><br/><br/><br/><br/><br/&g t;<br/> > > conceptually using simple wizards. I personally think that security threats<br/><br/><br/><br/><br/><br/> ;<br/> > > and countermeasures have moved at light speed compared to the technology<br/><br/><br/><br/><br/><br/ ><br/> > > used to support RA. Just my personal opinion.<br/><br/><br/><br/><br/><br/&g t;<br/> > > <br/><br/><br/><br/><br/><br/><br/> > > I think someone else had a good point in that RA tools are generally high<br/><br/><br/><br/><br/><br/><b r/> > > level. Building software is both a high level process AND a low level<br/><br/><br/><br/><br/><br/>< br/> > > procedure. The devil can be in the details and RA tools generally can't find<br/><br/><br/><br/><br/><br/><b r/> > > devils ;-)<br/><br/><br/><br/><br/><br/><br /> > > <br/><br/><br/><br/><br/><br/><br/> > > -----Original Message-----<br/><br/><br/><br/><br/><b r/><br/> <br/> > > From: brennan stewart [mailto:brennan (at) ideahamster (dot) org [email concealed]] <br/><br/><br/><br/><br/><br/><br/> > > Sent: Saturday, May 22, 2004 1:31 PM<br/><br/><br/><br/><br/><br/><br/ > > > To: webappsec (at) securityfocus (dot) com [email concealed]<br/><br/><br/><br/><br/><br/ ><br/> > > Subject: RE: Threat Modelling<br/><br/><br/><br/><br/><br/& gt;<br/> > > <br/><br/><br/><br/><br/><br/><br/> > > The tools used for Risk Management in certification & accreditation<br/><br/><br/><br/><br/>< br/<br/> ><br/> > > (NIACAP/DITSCAP) are very effective for threat modeling. Some of them are<br/><br/><br/><br/><br/><br/><br /> > > high level, and others can be technical. The problem with them though, is<br/><br/><br/><br/><br/><br/><br/ > > > their extreme price tags, proprietary content, lack of component<br/><br/><br/><br/><br/><br/& gt;<br/> > > re-usability, and perhaps some information wouldn't be to the technical<br/><br/><br/><br/><br/><br/& gt;<br/> > > level security professionals would require. They also don't have the level<br/><br/><br/><br/><br/><br/>< br/> > > of integration that is really vital.<br/><br/><br/><br/><br/><br/> <br/> > > <br/><br/><br/><br/><br/><br/><br/> > > While I know the initial thread was discussing Threat Modeling, it appears<br/><br/><br/><br/><br/><br/> ;<br/> > > there is a huge gap in the comprehensive risk assessment/threat management<br/><br/><br/><br/><br/><br/ ><br/> > > arena (even with commercial software)<br/><br/><br/><br/><br/><br/& gt;<br/> > > <br/><br/><br/><br/><br/><br/><br/> > > It would appear that an open source solution would fit the bill for this. My<br/><br/><br/><br/><br/><br/><br/ > > > ideas would take it far past mere threat modeling though for a more<br/><br/><br/><br/><br/><br/><b r/> > > complete, quantitative picture of risk, mitigations, dollar amounts,<br/><br/><br/><br/><br/><br/&g t;<br/> > > residual risk, etc.<br/><br/><br/><br/><br/><br/><b r/> > > <br/><br/><br/><br/><br/><br/><br/> > > Some sample requirements:<br/><br/><br/><br/><br/>< br/<br/> ><br/> > > Asset detailing, currency value assignment Complete threat listing, in DB<br/><br/><br/><br/><br/><br/><br/ > > > Attacks\exposures\etc matched to the OSVDB (maybe the legacy CVE/ICAT<br/><br/><br/><br/><br/><br/&g t;<br/> > > also)<br/><br/><br/><br/><br/><br/>< br/> > > Logic to understand system configurations (Linux/Unix/Windows/Cisco/etc)<br/><br/><br/><br/&a mp;a<br/> mp;g<br/><br/> t;<br/><br/><br/> > > preloaded with sample hardening, and scoring mechanisms (NIST 800<br/><br/><br/><br/><br/><br/><br /> > > series)<br/><br/><br/><br/><br/><br/> ;<br/> > > Logic to understand policies + DB<br/><br/><br/><br/><br/><br/><br/ > > > Logic to understand legal requirements + DB (swap requirements by<br/><br/><br/><br/><br/><br/><br/ > > > country/business/etc)<br/><br/><br/><br/><br/ <br/> ><br/><br/> > > Network aggregation<br/><br/><br/><br/><br/><br /><br/> > > Then, some nice reporting functions to top it off<br/><br/><br/><br/><br/><br/><br /> > > (continued)<br/><br/><br/><br/><br/><br /><br/> > > <br/><br/><br/><br/><br/><br/><br/> > > I know many of these data sources exist already individually.<br/><br/><br/><br/><br/>< br/<br/> ><br/> > > <br/><br/><br/><br/><br/><br/><br/> > > regards,<br/><br/><br/><br/><br/><br/&g t;<br/> > > <br/><br/><br/><br/><br/><br/><br/> > > Brennan<br/><br/><br/><br/><br/><br/> ;<br/> > > <br/><br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/><br/> > > On Fri, 2004-05-21 at 04:58, Brewis, Mark wrote:<br/><br/><br/><br/><br/><br/> <br/> > > > >>-----Original Message-----<br/><br/><br/><br/><br/><b r/><br/> <br/> > > > >>From: Mark Curphey [mailto:mark (at) curphey (dot) com [email concealed]]<br/><br/><br/><br/><br/><br /><br/> > > > >><br/><br/><br/><br/><br/><br/&g t;<br/> > > > >>CRAMM is a general / generic Risk Assessment tool for information <br/><br/><br/><br/><br/><br/><br/> > > > >>securtity.<br/><br/><br/><br/><br/> ;<br/> ;<br/><br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > For those who don't know, CRAMM is a high-level tool designed to model<br/><br/><br/><br/><br/><br/>< br/> > > risk at the physical, policy and procedural level, rather than the<br/><br/><br/><br/><br/><br/><br /> > > technical. Early versions were difficult to use, and even harder to<br/><br/><br/><br/><br/><br/><br/ > > > interpret. The ISO 17799 aligned version is far more powerful, although it<br/><br/><br/><br/><br/><br/><br/ > > > needs someone skilled to drive it.<br/><br/><br/><br/><br/><br/><br /> > > > <br/><br/><br/><br/><br/><br/><br/> > > > A more technical, network-level risk assessment/threat modelling tool back<br/><br/><br/><br/><br/><br/><b r/> > > in the late 1990's was the L3 Network Security Expert/Retriever, a (for the<br/><br/><br/><br/><br/><br/><br /> > > time) sophisticated network mapping and risk analysis system . It was bought<br/><br/><br/><br/><br/><br/> <br/> > > by Symantec about 2000 and fairly promptly disappeared. If I remember<br/><br/><br/><br/><br/><br/&g t;<br/> > > correctly, you were able to define any type of custom threats and<br/><br/><br/><br/><br/><br/><br /> > > countermeasures, and model them with a reasonable level of granularity. I<br/><br/><br/><br/><br/><br/><br/> > > only ever used it to model systems, rather than applications, but it was a<br/><br/><br/><br/><br/><br/><br/> > > really interesting hybrid tool.<br/><br/><br/><br/><br/><br/>< br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > Both tools use/used some variation of the standard: <br/><br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > * Define Assets<br/><br/><br/><br/><br/><br/> <br/> > > > * Define Vulnerabilities<br/><br/><br/><br/><br/>&l t;b<br/> r/><br/> > > > * Define Threats<br/><br/><br/><br/><br/><br/> ;<br/> > > > * Define Mitigation Strategies<br/><br/><br/><br/><br/><br/ ><br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > within<br/><br/><br/><br/><br/><br/> <br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > * Technical<br/><br/><br/><br/><br/><br/& gt;<br/> > > > * Management<br/><br/><br/><br/><br/><br/ ><br/> > > > * Operational<br/><br/><br/><br/><br/><br /><br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > Risk-Remediation areas.<br/><br/><br/><br/><br/><br/> <br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > Neither of these addresses your requirements (particularly L3, since it<br/><br/><br/><br/><br/><br/><br/ > > > appears to have gone), although I think the L3 tool(s) came closest. There<br/><br/><br/><br/><br/><br/>< br/> > > isn't anything I know of that even comes close to doing some of this, never<br/><br/><br/><br/><br/><br/>< br/> > > mind everything. Most of the case and sequence diagrams I've seen have been<br/><br/><br/><br/><br/><br/><b r/> > > manually defined and Visio drawn (paradoxically, probably the main utility<br/><br/><br/><br/><br/><br/> ;<br/> > > that helped kill off L3 Expert/Retriever). Risk modelling has been<br/><br/><br/><br/><br/><br/><b r/> > > extrapolated from those, in a generally ad hoc fashion.<br/><br/><br/><br/><br/><br/&g t;<br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > In many respects, I think you've answered your own question - there is a<br/><br/><br/><br/><br/><br/><br/> > > gap in this area. If Symantec still have the L3 code base lying around (and<br/><br/><br/><br/><br/><br/><b r/> > > it didn't metamorphose into the Vulnerability Assessment product) it might<br/><br/><br/><br/><br/><br/>< br/> > > be worth dusting down.<br/><br/><br/><br/><br/><br/>< br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > Mark<br/><br/><br/><br/><br/><br/><b r/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > Mark Brewis<br/><br/><br/><br/><br/><br/> <br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > Security Consultant<br/><br/><br/><br/><br/><br/ ><br/> > > > EDS<br/><br/><br/><br/><br/><br/><br /> > > > UK Information Assurance Group<br/><br/><br/><br/><br/><br/>< br/> > > > Wavendon Tower<br/><br/><br/><br/><br/><br/>< br/> > > > Milton Keynes<br/><br/><br/><br/><br/><br/> <br/> > > > Buckinghamshire<br/><br/><br/><br/><br/>&l t;b<br/> r/><br/> > > > MK17 8LX.<br/><br/><br/><br/><br/><br/><b r/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > Tel: +44 (0)1908 28 4013<br/><br/><br/><br/><br/><br/><b r/> > > > Mbl: +44 (0)7989 291 648<br/><br/><br/><br/><br/><br/><br /> > > > Fax: +44 (0)1908 28 4393<br/><br/><br/><br/><br/><br/><b r/> > > > E@: mark.brewis (at) eds (dot) com [email concealed]<br/><br/><br/><br/><br/><br/ ><br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > This email is confidential and intended solely for the use of the<br/><br/><br/><br/><br/><br/><br /> > > individual(s) to whom it is addressed. Any views or opinions presented are<br/><br/><br/><br/><br/><br/><br /> > > solely those of the author. If you are not the intended recipient, be<br/><br/><br/><br/><br/><br/><br/ > > > advised that you have received this email in error and that any use,<br/><br/><br/><br/><br/><br/><b r/> > > dissemination, forwarding, printing, or copying of this mail is strictly<br/><br/><br/><br/><br/><br/&g t;<br/> > > prohibited.<br/><br/><br/><br/><br/><br /><br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > Precautions have been taken to minimise the risk of transmitting software<br/><br/><br/><br/><br/><br/&g t;<br/> > > viruses, but you must carry out your own virus checks on any attachment to<br/><br/><br/><br/><br/><br/><br/ > > > this message. No liability can be accepted for any loss or damage caused by<br/><br/><br/><br/><br/><br/><br/ > > > software viruses.<br/><br/><br/><br/><br/><br/&g t;<br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > > <br/><br/><br/><br/><br/><br/><br/> > > <br/><br/><br/><br/><br/><br/><br/> > > [ reply ] Re: Threat Modelling May 23 2004 09:08AM Frank O'Dwyer (fod littlecatZ com) (2 replies) |
|
|
Privacy Statement |
Correct me if I'm wrong, but aren't these SSE (System Security
Engineering) Lifecycle models more often that not used for
assessing/evulating organizations and systems built from COTS components
vs. developing new products/protocols/applications? And when there is
"new development" I would imagine that the world of proprietary
government/DoD system/application development is a far different beast
from the private sector. Isn't much of the focus is on process and
policy, often at an organizational level? Not that these aren't
important or relevant, or that these toolsets can be stretched to apply
to more technical analysis but that is not their "sweet spot."
But unless the methodology (and possibly tools) are publically
available, they are terribly useful for the problem at hand: everyone
has agreed that there is a need for Free/Open Source threat
modeling/risk assessment tools or methodology that are useful for
application designers/developers/testers. DoD C&A tools aren't going to
fix that.
Even if they could, there is the significant "translation effort" needed
for for things like Common Criteria or CMM-SSE to be useful for
commercial product/development/test teams. So I'm not sure the point of
arguing whether or not CRAMM, DoD C&A (or anything else that someone has
used in a past life) tools *have* or *could* solve the problem, because
they don't.
The important thing is to start identifying requirements (you did) for
tools and methodology that we all seem to agree is missing.
I think everyone agrees that the tools should be robust enough to handle
down to the protocol/application/message/ (including implementation)
level. Any threat modeling technique that doesn't help uncover
implementation flaws isn't terribly useful, IMHO. I think several folks
have also questioned the value of simple cost metrics. What can/should
be automated via tools and what should be done manually? How do we
represent threats and vulnerabilities and application and system state?
How do we measure impact of compromises?
Take Attack Trees, a well known lightweight threat modeling technique,
which has some success in being applied to both technical and
non-technical domains. See the BGP Attack Tree
(http://www.io.com/~mdfranz/papers/draft-convery-bgpattack-01.txt) we
did within the IETF for the technical end of the spectrum.
Writing the damn things (whether in textual or graphical form) is
tedious. That can/should be automated. Yeah, I'm aware of SecuriTree,
perhaps we could hack FreeMind to develop something simliar? Perhaps
after the tree is definied to a given level of detail, it is possibly to
automatically generate a set of tests/test cases? Actually
running/instantiating a real world system (application) through the
tree, that is more difficult. Since Attack Trees are mentioned in Ch4 of
_Secure Coding_ perhaps that Microsoft tool will have this capability.
Will it be extensible, not sure? Can I apply it to network devices and
protocols (thinking with my Cisco hat on) or is only suitable to
applications and general purpose operating systems?
I think these are the sorts of questions we should be arguing about --
not whether or not a closed methodlogy or proprietary tools solve the
threat modeling problem, because they don't.
I'll probably chime in on the "generic tools" issue in a separate
message ;)
Cheers
- mdf
> On Sat, 2004-05-22 at 16:55, Mark Curphey wrote:
> > To quote ...."The tools used for Risk Management in certification &
> > accreditation (NIACAP/DITSCAP) are very effective for threat modeling."
> >
> > Maybe I am missing the point here so please help me out.
> >
> > How would these generic tools help me methodically expose the fact that an
> > application developer chose to send a password in clear in an unprotected
> > SOAP message across an untrusted network?
>
>
> (As C&A is a formal process for managing risk within the US government,I
> am classifying tools used specifically for C&As as risk management
> tools)
>
> I am not sure the level of familiarity that you have with the US
> Government's C&A in general so perhaps that is why you made the
> statements you did.
>
> (only a brief overview of pertinent areas, by no means complete)
> Phase 1 (definition) of a C&A includes definition of system functions,
> requirements, and interfaces.
> Phase 2 (verification) is a system architecture analysis, software
> design analysis, Network connection rule compliance, integrity analysis
> of integrated products, Security requirements validation procedures,
> vulnerability evaluation
> Phase 3 (validation) is a Security test & evaluation, penetration
> testing. Evaluating system conformance with regulations, requirements,
> and architecture.
> Phase 4 (post accreditation) A repeat of the other phases in order to
> maintain the level of security.
>
> So, we are using a standard C&A tool. I have a generic list of security
> requirements, a list of allowable and prohibited activities, security
> configuration documentation, etc. Against these things, I am evaluating
> a system.
>
> Now to get specific on a sample question of yours.
>
> application developer chose to send a password in clear in an
> unprotected SOAP message across an untrusted network
>
> 5.4.1 & 5.5 of the webserver STIG address that. So your test case would
> be a failure because it would not meet the requirement to properly
> protect SOAP messages.(This is also addressed in many other STIGs too,
> incidentally).
>
> Depending on what is being checked, this might be a manual process (did
> you perform this activity?) or an automatic process (tool reads input
> from other tools specifically addressing that problem). So, without the
> manual addition of a best practice (e.g. an OWASP guide for web
> application checking) or penetration tester input, we have already
> identified the unprotected SOAP message.
>
> These risk management tools are being used by system architects/coders @
> a high level to build systems. Obviously, they aren't intended for this
> usage. This brings us back to my previous email, where I mentioned the
> problems existing with much of these types of applications today, the
> vast potentials for improvment, etc.
>
> regards,
>
> Brennan
>
> >
> > I think there maybe confusion between what I think of threat modeling and
> > risk assessment. Threat modeling to me is about helping design a better
> > technological solution. See Building Secure Software, Writing Secure Code or
> > Threats and Countermeasures for my definition examples. Risk Assessment is
> > generally about a better management solution (where the definition of
> > management is the same as that from ISO17799). CRAMM is of negligible use
> > whatsoever in designing a secure application. Actually any security tool
> > that stores security information in an access database and is riddled with
> > security holes itself is of no use to me at all but that's another story. It
> > may have a use in modeling the business operations of a web environment but
> > it will not help me design a secure system from a technological perspective
> > and that's what I use threat modeling for. Maybe that's one explanation, I
> > (or you) are confusing operational security with engineering a softwareThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today.
> > system.
> >
> > And I am sorry but modeling dollar amounts is .......well even NIST 800-30
> > explicitly says don't bother, it's a pipe dream. Take an online brokerage.
> > At market the HART's (Hourly Average Revenue Trades) will be totally
> > different from at 9pm. If I model the system from a monetary perspective
> > should I change my security model at market open from the evening? Do I
> > insist on digital certs when by average customer balance hits a 1 million
> > dollars per account....that sort of modeling would probably justify Bill
> > Gates using RACF to trade at discount broker X but guess what....
> >
> > When I first left college I used to have to do RA's using CRAMM (I am
> > originally from the UK btw)... I would happily bet that I could write an
> > application that in a controlled environment (i.e. it won't fail from not
> > having a policy, backup etc etc) would pass a CRAThis brings us back to my previous email, where I mentioned the problems existing with much of these types of applications today. MM review with flying
> > colors and could be hacked totally in under a minute. The internet and
> > software technology is just too complex to try and model security
> > conceptually using simple wizards. I personally think that security threats
> > and countermeasures have moved at light speed compared to the technology
> > used to support RA. Just my personal opinion.
> >
> > I think someone else had a good point in that RA tools are generally high
> > level. Building software is both a high level process AND a low level
> > procedure. The devil can be in the details and RA tools generally can't find
> > devils ;-)
> >
> > -----Original Message-----
> > From: brennan stewart [mailto:brennan (at) ideahamster (dot) org [email concealed]]
> > Sent: Saturday, May 22, 2004 1:31 PM
> > To: webappsec (at) securityfocus (dot) com [email concealed]
> > Subject: RE: Threat Modelling
> >
> > The tools used for Risk Management in certification & accreditation
> > (NIACAP/DITSCAP) are very effective for threat modeling. Some of them are
> > high level, and others can be technical. The problem with them though, is
> > their extreme price tags, proprietary content, lack of component
> > re-usability, and perhaps some information wouldn't be to the technical
> > level security professionals would require. They also don't have the level
> > of integration that is really vital.
> >
> > While I know the initial thread was discussing Threat Modeling, it appears
> > there is a huge gap in the comprehensive risk assessment/threat management
> > arena (even with commercial software)
> >
> > It would appear that an open source solution would fit the bill for this. My
> > ideas would take it far past mere threat modeling though for a more
> > complete, quantitative picture of risk, mitigations, dollar amounts,
> > residual risk, etc.
> >
> > Some sample requirements:
> > Asset detailing, currency value assignment Complete threat listing, in DB
> > Attacks\exposures\etc matched to the OSVDB (maybe the legacy CVE/ICAT
> > also)
> > Logic to understand system configurations (Linux/Unix/Windows/Cisco/etc)
> > preloaded with sample hardening, and scoring mechanisms (NIST 800
> > series)
> > Logic to understand policies + DB
> > Logic to understand legal requirements + DB (swap requirements by
> > country/business/etc)
> > Network aggregation
> > Then, some nice reporting functions to top it off
> > (continued)
> >
> > I know many of these data sources exist already individually.
> >
> > regards,
> >
> > Brennan
> >
> >
> > On Fri, 2004-05-21 at 04:58, Brewis, Mark wrote:
> > > >>-----Original Message-----
> > > >>From: Mark Curphey [mailto:mark (at) curphey (dot) com [email concealed]]
> > > >>
> > > >>CRAMM is a general / generic Risk Assessment tool for information
> > > >>securtity.
> > >
> > > For those who don't know, CRAMM is a high-level tool designed to model
> > risk at the physical, policy and procedural level, rather than the
> > technical. Early versions were difficult to use, and even harder to
> > interpret. The ISO 17799 aligned version is far more powerful, although it
> > needs someone skilled to drive it.
> > >
> > > A more technical, network-level risk assessment/threat modelling tool back
> > in the late 1990's was the L3 Network Security Expert/Retriever, a (for the
> > time) sophisticated network mapping and risk analysis system . It was bought
> > by Symantec about 2000 and fairly promptly disappeared. If I remember
> > correctly, you were able to define any type of custom threats and
> > countermeasures, and model them with a reasonable level of granularity. I
> > only ever used it to model systems, rather than applications, but it was a
> > really interesting hybrid tool.
> > >
> > > Both tools use/used some variation of the standard:
> > >
> > > * Define Assets
> > > * Define Vulnerabilities
> > > * Define Threats
> > > * Define Mitigation Strategies
> > >
> > > within
> > >
> > > * Technical
> > > * Management
> > > * Operational
> > >
> > > Risk-Remediation areas.
> > >
> > > Neither of these addresses your requirements (particularly L3, since it
> > appears to have gone), although I think the L3 tool(s) came closest. There
> > isn't anything I know of that even comes close to doing some of this, never
> > mind everything. Most of the case and sequence diagrams I've seen have been
> > manually defined and Visio drawn (paradoxically, probably the main utility
> > that helped kill off L3 Expert/Retriever). Risk modelling has been
> > extrapolated from those, in a generally ad hoc fashion.
> > >
> > > In many respects, I think you've answered your own question - there is a
> > gap in this area. If Symantec still have the L3 code base lying around (and
> > it didn't metamorphose into the Vulnerability Assessment product) it might
> > be worth dusting down.
> > >
> > > Mark
> > >
> > > Mark Brewis
> > >
> > > Security Consultant
> > > EDS
> > > UK Information Assurance Group
> > > Wavendon Tower
> > > Milton Keynes
> > > Buckinghamshire
> > > MK17 8LX.
> > >
> > > Tel: +44 (0)1908 28 4013
> > > Mbl: +44 (0)7989 291 648
> > > Fax: +44 (0)1908 28 4393
> > > E@: mark.brewis (at) eds (dot) com [email concealed]
> > >
> > > This email is confidential and intended solely for the use of the
> > individual(s) to whom it is addressed. Any views or opinions presented are
> > solely those of the author. If you are not the intended recipient, be
> > advised that you have received this email in error and that any use,
> > dissemination, forwarding, printing, or copying of this mail is strictly
> > prohibited.
> > >
> > > Precautions have been taken to minimise the risk of transmitting software
> > viruses, but you must carry out your own virus checks on any attachment to
> > this message. No liability can be accepted for any loss or damage caused by
> > software viruses.
> > >
> > >
> > >
> >
> >
[ reply ]