Tym razem drobne wyjaśnienie odnośnie jakie typy zagrożeń dotyczą poszczególnych typów obiektów (z diagramów DFD). Istnieje kilka wersji matrycy przyporządkowującej zagrożenia do elementów, kilka słów na ten temat.
STRIDE per element II - różne wersje matrycy
Chodzi przede wszystkim o to, że w różnych miejscach można znaleźć różne przypisania.
W OWASP Code Review Project przypisanie wygląda następująco:
- Proces - S T R I D E
- Data Store - T R I D
- Interactors - S R
- Data Flow - T R I D
Wersja 1.1 tego dokumentu pochodzi z końca 2008 roku, pierwsze wersje pochodzą jednak z lat 2005/2006.
W przypadku dokumentu Uncover Security Design Flaws Using The STRIDE Approach (2006 rok) z kolei repudiation znika zarówno dla data flow jak i data store:
- Proces - S T R I D E
- Data Store - T I D
- Interactors - S R
- Data Flow - T I D
W The STRIDE per Element Chart (2007 rok) przyporządkowanie wygląda już tak:
- Proces - S T R I D E
- Data Store - T R I D
- Interactors - S R
- Data Flow - T I D
Czyli repudiation nie dotyczy obiektów typu data flow, ale dotyczy data store. Takie samo przyporządkowanie jest wykorzystywane w przypadku narzędzia Microsoft SDL Threat Modeling Tool.
Jak widać matryca STRIDE-per-element nieco zmieniała się w czasie. Można dyskutować, czy repudiation powinno być uwzględnione dla data flow (nie jest i moim zdaniem - dobrze) i data store (tu akurat jest uwzględnione). W przypadku wielu data store zagrożenia tego typu po prostu nie będą ich dotyczyły (patrz: Threat Modeling Again, Analyzing the threats to PlaySound i WAV file). Trzeba jednak przyznać, że jest różnica między odtwarzanym plikiem muzycznym a bazą danych zawierającą na przykład historię transakcji albo dane audytowe systemu kontroli dostępu. Możliwość modyfikacji takiej bazy (tampering) jest zła, ale możliwość zrobienia to w taki sposób, że nikt nie wie kto to zrobił, a nawet jak wie, to nie może tego udowodnić (repudiation) czyni sprawę jeszcze gorszą.
Otrzymałem ostatnio zapytanie odnośnie przechowywania danych sesji po stronie klienta. Było ono związane z drugim z przygotowanych przeze mnie wyzwań. Jednym z istotnych elementów tego zadania była analiza danych przechowywanych po stronie klienta, co wyj
Przesłany: Feb 16, 17:35