« first day (885 days earlier)      last day (4016 days later) » 
00:00 - 20:0020:00 - 00:00

8:16 PM
@TildalWave @theXs actually in this case, it is much much easier having gone through it with somebody. It is really an excercise in structured creativity...
@theXs good luck, and do let me know if you get stuck...
@theXs I assume you've read all the common literature on TMing... you've tried STRIDE-per-element?
 
@AviD Oh boy! You do miss you LEGO set, don't you? :)) :P
 
hehe. different kind... more like liberal arts major ;-)
I like to play a game of "Let's Imagine"
 
@AviD I'm currenty applying the STRIDE-per-Element appraoch
 
great! Assuming you have the diagram anywhere near half-way decent, the next part is forcing your imagination to run wild.
and here is the part where it helps to have built and seen many instances of similar applications... and broken them....
 
@AviD I have two questions regarding data flows for an example the data flow between an external entity (Admin) and data sink (LogFile)
 
8:22 PM
@theXs BZZZZTT!
external entity should never flow straight to the datastore. Always a process in between.
the SDL TM tool should tell you that... are you checking any reported errors?
 
mmh it's modeled the same way in "The security development lifecycle"
 
o_0
 
which is why I thought I could do it that way
 
external entities shouldnt have direct access to your data....
I would be very surprised if Michael Howard modeled it that way....
have link / pic?
 
secappdev.org/handouts/2009/threat%20modeling.pdf contains the example out of the SDL Book on page 24
Page 24 or slide 48 of the presentation
 
8:31 PM
hmm cant open that. also cant get my copy right now...
 
@theXs hmm, yup it does show that.
Strictly speaking, the diagram should never have that, even if the "process" is a manual one. Though I guess in the case of the trusted admin, it is true that he can directly access the data store...
 
I explained it to me that the admin has direct access to the datastore
 
I usually go with one of two directions on those cases:
either force a process in there - eg the RDBMS, etc.
or ignore it.
the reason I accept the "ignore it" policy, regarding admins, is that their process is not really part of the application you're modeling.
the dba will always have direct access to the database, the sysadmin will always have direct access to the filesystem. For the most part, these things are irrelevant.
 
mmh, that leads to the problem of creating data sinks
 
8:37 PM
sometimes, they are not - but the question is, how much effort is it worth?
Remember, these are admins - trusted with access to pretty much everything.
 
true
 
sometimes you do need to model their infrastructre privileges, but usually - when doing tm for an application - its simply not the case.
so model any admin privileges with in the application, sure, but dont worry about infrastructure - except where its necessary.
sorry that I dont have a more specific guideline there...
 
Mmmh, okay - then I need to reconsider my approach. Since it's part of a scientific work I would need to "proof" my approach
I think Michael Howard considered the "powers" of the admins which you mentioned above and modeled them as "interactors" with the application which don't need to follow usual processes
@AviD you're saying that I have three different approaches which I could apply right now (1) Model a "read log" process between admin and data store (2) don't model the admin at all (3) keep it as it is ?
 
@theXs that's true, but he also tends to deal with systems that do need to protect against sysadmins. I tend to take a more pragmatic approach.
@theXs pretty much, yeah. technically, (1) would be the most "pure" from both sides - you're modeling all possible interactors, but your DFD is still valid.
whereas (2) and (3) each fall on one of those, respectively.
 
what do you mean with "fall on both of those" ?
I think that means that (2) and (3) would result in an invalid DFD
 
8:50 PM
as far as (2) goes, it all comes back to scoping. Very important to get that right - and usually, for typical web apps, you want to scope almost all infrastructure out of your system ("almost" except for the basics, such as DMZ, etc... )
@theXs I meant that (2) is not modeling all interactors, and (3) is not a valid DFD.
but even for (2), as I said the correct solution is not to ignore them, but to explicitly define them outside the scope.
 
This one does not understand sarcasm: serverfault.com/questions/509102/…
 
@LucasKauffman sorry, I'm not understanding it either....?
 
@AviD he's just asking if someone is using a DC on Azure rather than asking something specifc
 
@LucasKauffman ohh heh, yeah I missed that... my brain read the implied question, sorry I forgot its Server Fault there...
 
Also known as the BOFH website
 
8:56 PM
heh, yeah
 
@AviD I think I'm going with door (1) :), want to get the dfd correct and valid. Now that leads me to another question .. If the admin reads the Logfiles out of a "Log Component" Process can I declare the dataflows as out of scope?
 
@theXs ah, well, if you're scoping the admins in, you gotta take the dataflows too. Can't have it both ways ;-)
 
I'm reusing the "Log Component" Process since it's already responsible for writing entries into the datastore. I hope that is a valid approach
 
@theXs ah, its usually at that point when I point out that logs shouldnt be write-only - and that they will need to develop some form of controlled UI to enable authorized admins to red, view, search etc the log data.
because obviously, directly accessing the raw log files is just plain ridiculous, right?? ;-)
 
darn it ... It's just as you said: my threat model would be a lot better if I would have an experienced senior consultant who is analyzing my threat model
so you suggest that I should follow approach (2) and employ those hints in my threat model
I mean, that would be the easiest way to approach that problem ... but it would invalidate the threat model too ( creation of data sinks )
 
9:13 PM
@theXs actually, I said its better if you follow along behind someone experienced, as he does it... ;-)
 
well, that would probably the best way :D
 
I got lucky, I went through a couple of these during my stint at Microsoft, with some pretty edge case systems... Some really really smart people there, I picked it up quick after that.
 
sounds like a great opportunity to learn it
 
@theXs was (2) scoping the infra admins out? Because usually thats the one I would go for.
 
yes, that was (2)
I would have to reason why I would create a data sink, but I think that should be managable
since it's a threat model for a thesis - and my evaluators (?) have a background in software engineering and data flow diagrams.
 
9:27 PM
@theXs I dont understand?
the data sink is there to collect log data. why does the admin or not change that?
@theXs well you could always insist "ah no, I'm only modeling the application."
 
well if the there's just a process writing into the data store it's technically a data sink - which invalidates the dfd
 
"I'm leaving the system for @ScottPack...."
@theXs ah, you mean because no data is coming out.
 
yeah :)
 
That's true, but that right there shows a real issue, a "meta-threat" so to speak.
you can force the data back out through the application - I usually use another level 1 (or is it level 2?) diagram, jsut to split it out.
the point is the application does need to have a log view interface.
 
what do you mean with "you can force the data back out through the application - I usually use another level 1 (or is it level 2?) diagram, jsut to split it out."
I'm thinking about modeling it like it's shown in the image above ... the log component read/writes into the log
 
9:40 PM
hmm, this might just be personal preference - but I always put the external entities along the sides (or top, or bottom, dont matter) - because they are external, and you want to focus on the system (which should be in the middle).
this also helps for trust boundaries, and also as a visual guide - forcing your eye to focus on the system, and the interactions, not the external actors.
in this diagram, its hard to tell what is the actual system, and what is not.
 
well that's just a detail out of my dfd
 
by "force the data back out" I meant to add another dataflow, from the datasource to the appserver (?), and back to the user, even if this interface does not exist.
then you can both mark the lack of viewer as a threat, but also model the threats of a likely implementation of the viewer.
remember, when lacking details, you can make any assumption you want - as long as its explicit. (and makes probabilistic sense, of course).
 
okay
I think it's really bad that I have nobody who I could watch as he does threat models . I think the quality of my thesis would profit a lot of that
 
I'm sure
it really is art-like, though, contrary to what I've been saying - and all the books - there really are no hard and fast rules that you can specifically follow.
it's two parts structure, two parts imagination, and 3 parts experience.
or maybe I have the amounts wrong... that always happens to me when I'm baking.
 
;)
oh well .. that sounds like a great summary for my thesis, haha
the "force the data back out" wouldn't work for the web.xml, wouldn't it
or would the appserver write the data into that specific data store?
 
10:04 PM
@theXs web.xml in this case is the configuration file?
 
yes
 
well, yeah, in some perspective its a data sink - or rather, whats the opposite of that?
data does flow back to the application server. the question is, are there any settings that can be changed in the app, or is it pretty much read-only?
again, I dont model the initial configuration, just like I wouldnt model the installation / deployment.
(unless that is part of the process you are modelling... )
 
it's read only from the app - an admin who recompiles the application or changes it in the IDE could change it
so - that would probably mean that it could be a read-only data-sink
 
or edits the file directly.
 
even tough every paper/presentation/book warns about those bad boys ;)
yep
 
10:08 PM
again, you do have the datastore there - you do need to model threats around e.g. unauthorized editing.
 
yep
 
Just watched star trek. Not the most recent one but the one before. It's not bad actually
 
@RoryAlsop It's pretty good, once you manage to get over the fact it's with new actors (they do their job pretty good IMO). So, you're preparing to watch the new one (Into Darkness)?
 
10:32 PM
Oh darnit I missed Mock The Week Looks Back At... on beebs
 
11:06 PM
@RoryAlsop It was much more blowuppy than I prefer, but all together a fun movie. I'm enjoying Pine as Kirk.
@RoryAlsop There's just something about his face that seems...off.
 
11:47 PM
@TildalWave yeah, it was to get me up to speed so i could go to the cinema to see the new one
@ScottPack yeah, but I think he plays Kirk quite accurately
 
00:00 - 20:0020:00 - 00:00

« first day (885 days earlier)      last day (4016 days later) »