分析绘图.io步幅威胁类的数据流图
materialize-threats的Python项目详细描述
materialize threats.
' . .
o ' o . ' . O
' . ' . _____ ' . .
. . .mMMMMMMMm. ' o ' .
' . .MMXXXXXXXXXMM. . '
. . /XX77:::::::77XX\ . . .
o . ;X7:::''''''':::7X; . '
' . |::'.:' '::| . . .
. ;:.:. :;. o .
' . \'.: /. ' .
. `.':. .'. ' .
' . ' .`-._____.-' . . ' .
' o ' . O . ' o '
. ' . ' . ' ' O . ' ' '
. . ' ' . ' . ' '
. .'..' . ' ' . . '. . '
`.':.' ':'.'.'
`\\_ | _//'
\( |\ )/
//\ |_\ /\\
(/ /\(" )/\ \)
\/\ ( ) /\/
|( )|
| \( \
| ) \
| \
| \
|wizardsh`.__,_
\_________.-'
It's magic.
:纸屑球:这是给谁的?在
希望使用SQL对数据流图-执行“graph”分析的开发人员和安全从业人员。在
materialize-threats
摄取绘图.io将数据流图放入数据库,将其表示为属性图,然后使用SQL来回答有关它们的问题。在
今天,我们可以回答如下问题:
- 什么基于步幅的威胁类:警告:影响图表中的哪些元素和流?在
- 此图表应考虑哪些缓解措施:锁定和测试用例:白色复选标记?在
这些只是一些想法。在
:钱袋子:盒子里是什么?在
- 物化威胁python模块
- 将draw.io数据流图解析为存储在RDBMS(本演示中的sqlite)中的图形表示(节点、边缘)
- 用于生成威胁类的Rapid Threat Model Prototyping methodology的SQL(ORM)实现
- (可选)最小绘图.io形状库(dfd-物化.xml)
- 更容易标记信任区域
- Gherkin+STRIDE测试计划/功能文件生成器
:扳手:如何使用?在
演示
1。创建关系图
- 将draw.io与内置威胁建模形状集一起使用,或者使用我们的
- 使用一些指导原则创建数据流图
- 使用实体之间的流程来描述流程
- 示例:[Entity:Browser]-->;(进程:Login)--->;[Entity:API]
- 在Rapid Threat Model Prototyping methodology过程之后使用绿色的“安全控制标签”标识信任区域
- 不受信任的源(实体)为0
- 接收器(数据存储)为<;=9
- +1或-1之间
- 进程从上游实体继承信任区域
- 使用实体之间的流程来描述流程
- 在方便的位置将其另存为.drawio文件
示例
2。列举威胁
^{pr2}$3。创建要素文件
物化威胁将创建一个小黄瓜特性文件,其中包含样板场景和缓解措施,以及补救技巧。默认情况下,它使用关系图文件名。在
:mag_right:示例数据
materialize-threats
可以在/samples目录中找到更多示例
materialize-threats --diagram=samples/bookface.drawio
:警告:此产品准备好了吗?在
还没有。在
- 没有写测试,但我很确定它是有效的。在
- 很多其他python的东西可能会让您感到恐惧,但不会影响我所知道的功能。在
:计算机:开发
git clone git@github.com:secmerc/materialize_threats.git
cd materialize_threats
python3 -m venv ./venv
source ./venv/bin/activate
pip install -e .
pytest
出版
python3 -m pip install --user --upgrade setuptools wheel twine python3 setup.py sdist bdist_wheel python3 -m twine upload dist/*
:link:链接
- https://docs.microsoft.com/en-us/archive/blogs/larryosterman/threat-modeling-again-presenting-the-playsound-threat-model
- https://github.com/geoffrey-hill-tutamantic/rapid-threat-model-prototyping-docs
- 项目
标签: