用于调试和使用内置烧瓶会话cookie的工具
flask-cookie-decode的Python项目详细描述
烧瓶饼干解码图片::https://travis-ci.com/wgwz/flask-cookie-decode.svg?branch=master
:目标:https://travis ci.com/wgwz/flask cookie decode
…内容:
…节编号:
purpose
==
在内置的flask cli中添加一个"cookie"命令,该命令将提供各种
工具,用于调试flask默认使用的安全会话cookie。
` flask cookie decode`:解码并验证会话cookie的签名
后台
==
默认情况下,flask会话使用签名cookie存储其数据。flask
应用程序使用其"密钥"对cookie进行签名。这为flask
应用程序提供了一种检测会话数据任何篡改的方法。如果应用程序
确实使用密钥和安全哈希算法,则会话签名
将是应用程序独有的。
有关烧瓶会话主题的更多信息,请参阅以下参考资料:
*`烧瓶用户会话的安全性如何?`
*`烧瓶会话的快速启动`\u
*`烧瓶会话的API文档`\u
…_`烧瓶用户会话的安全性如何?`:https://blog.miguelgrinberg.com/post/烧瓶用户会话的安全性如何
…_`烧瓶会话的快速启动`:http://flask.pocoo.org/docs/1.0/quickstart/sessions
。_`烧瓶会话的api文档`:http://flask.pocoo.org/docs/1.0/api/sessions
免责声明:保守秘密,秘密!
---------------------------
如果公开此密钥,应用程序将容易受到会话重播攻击。`下面是一个例子,应用程序在404个错误期间公开了"secret"密钥。该示例还演示了会话重放的工作原理。
默认情况下,flask不会在任何地方公开"secret_key"。这取决于你
开发人员保持这种方式!
…_`下面是一个示例`:https://terryvogelsang.tech/mitrectf2018 My Flask app/
用法
=
代码块::bash
$pip install flask cookie decode
图片::https://raw.githubusercontent.com/wgwz/flask cookie decode/master/docs/cookie.png
:alt:在浏览器工具中查找cookie
:宽度:100%
:align:center
https://github.com/wgwz/flask cookie decode/blob/master/examples/app.py>;` ` ` `:
…代码块:python
从flask_cookie_decode import cookiedecode请求
app=flask(uu name_uu)
app.config.update({'secret_u key':'jlghasdhhasdhgahsdg'})
cookie=cookiedecode()
cookie.init_app(app)
@app.route('/')
def index():
a=request.args.get('a')
session['a']=a
返回jsonify(dict(session))
使用cli的示例:
----
1。具有有效签名的cookie:
…代码块::bash
$export flask_app=app.py
$flask cookie解码eyjhijoixnkyxnkamtqyxnkin0.xckk1q.ttpu2zhvn9kxgkp35eragyd8mza
trustedcookie(内容={a':'asdasdjkjasd',过期时间='2019-01-30t20:04:37')
2。签名无效的cookie:
…代码块::bash
$export flask_app=app.py
$flask cookie解码eyjhijoixnkyxnkamtqyxnkin0.xckk1q.ttpu2zhvn9kxgkp35eragyd8mza
不可靠的内容(内容={a':'asdasdjkjasd',过期时间='2019-01-30t20:04:37')
3。过期的cookie:
…代码块::bash
$export flask_app=app.py
$flask cookie解码eyjhijoiyxnkyxkamtqyxnkin0.xckk1q.ttpu2zhvn9kxgkp35eragyd8mza
过期的cookie(内容={a':'asdasdjkjasd'},过期时间='2019-01-30t20:04:37')
文档
===
`docs<;https://flask cookie decode.readthedocs.io/en/latest/>;`
==
`mit<;https://github.com/wgwz/flask cookie decode/blob/master/license>;` `.
==
=
历史记录Towncrier发行说明开始
Flask_Cookie_decode 0.3.0(2019-01-05)
=====
BugFixes
--
-在所有以前的版本中,带有"timestamp"cli标志的cli实际上都是在返回cookie时的时间戳时
签署。*不是*cookie过期时的时间戳,正如它应该做的那样。
在所有以前的版本中,对过期的cookie没有错误处理。当检测到"expiredcookie"时,此
版本现在返回"expiredcookie"。(1)
改进的文档
——
-更新文档以包含有关
烧瓶会话工作方式的更多详细信息,以及从安全角度应注意的事项。文档还反映了最新的cli工作方式。(1)
>0.1.0(2018-12-29)
====
*在PYPI上首次发布。
:目标:https://travis ci.com/wgwz/flask cookie decode
…内容:
…节编号:
purpose
==
在内置的flask cli中添加一个"cookie"命令,该命令将提供各种
工具,用于调试flask默认使用的安全会话cookie。
` flask cookie decode`:解码并验证会话cookie的签名
后台
==
默认情况下,flask会话使用签名cookie存储其数据。flask
应用程序使用其"密钥"对cookie进行签名。这为flask
应用程序提供了一种检测会话数据任何篡改的方法。如果应用程序
确实使用密钥和安全哈希算法,则会话签名
将是应用程序独有的。
有关烧瓶会话主题的更多信息,请参阅以下参考资料:
*`烧瓶用户会话的安全性如何?`
*`烧瓶会话的快速启动`\u
*`烧瓶会话的API文档`\u
…_`烧瓶用户会话的安全性如何?`:https://blog.miguelgrinberg.com/post/烧瓶用户会话的安全性如何
…_`烧瓶会话的快速启动`:http://flask.pocoo.org/docs/1.0/quickstart/sessions
。_`烧瓶会话的api文档`:http://flask.pocoo.org/docs/1.0/api/sessions
免责声明:保守秘密,秘密!
---------------------------
如果公开此密钥,应用程序将容易受到会话重播攻击。`下面是一个例子,应用程序在404个错误期间公开了"secret"密钥。该示例还演示了会话重放的工作原理。
默认情况下,flask不会在任何地方公开"secret_key"。这取决于你
开发人员保持这种方式!
…_`下面是一个示例`:https://terryvogelsang.tech/mitrectf2018 My Flask app/
用法
=
代码块::bash
$pip install flask cookie decode
图片::https://raw.githubusercontent.com/wgwz/flask cookie decode/master/docs/cookie.png
:alt:在浏览器工具中查找cookie
:宽度:100%
:align:center
https://github.com/wgwz/flask cookie decode/blob/master/examples/app.py>;` ` ` `:
…代码块:python
从flask_cookie_decode import cookiedecode请求
app=flask(uu name_uu)
app.config.update({'secret_u key':'jlghasdhhasdhgahsdg'})
cookie=cookiedecode()
cookie.init_app(app)
@app.route('/')
def index():
a=request.args.get('a')
session['a']=a
返回jsonify(dict(session))
使用cli的示例:
----
1。具有有效签名的cookie:
…代码块::bash
$export flask_app=app.py
$flask cookie解码eyjhijoixnkyxnkamtqyxnkin0.xckk1q.ttpu2zhvn9kxgkp35eragyd8mza
trustedcookie(内容={a':'asdasdjkjasd',过期时间='2019-01-30t20:04:37')
2。签名无效的cookie:
…代码块::bash
$export flask_app=app.py
$flask cookie解码eyjhijoixnkyxnkamtqyxnkin0.xckk1q.ttpu2zhvn9kxgkp35eragyd8mza
不可靠的内容(内容={a':'asdasdjkjasd',过期时间='2019-01-30t20:04:37')
3。过期的cookie:
…代码块::bash
$export flask_app=app.py
$flask cookie解码eyjhijoiyxnkyxkamtqyxnkin0.xckk1q.ttpu2zhvn9kxgkp35eragyd8mza
过期的cookie(内容={a':'asdasdjkjasd'},过期时间='2019-01-30t20:04:37')
文档
===
`docs<;https://flask cookie decode.readthedocs.io/en/latest/>;`
==
`mit<;https://github.com/wgwz/flask cookie decode/blob/master/license>;` `.
==
=
历史记录Towncrier发行说明开始
Flask_Cookie_decode 0.3.0(2019-01-05)
=====
BugFixes
--
-在所有以前的版本中,带有"timestamp"cli标志的cli实际上都是在返回cookie时的时间戳时
签署。*不是*cookie过期时的时间戳,正如它应该做的那样。
在所有以前的版本中,对过期的cookie没有错误处理。当检测到"expiredcookie"时,此
版本现在返回"expiredcookie"。(1)
改进的文档
——
-更新文档以包含有关
烧瓶会话工作方式的更多详细信息,以及从安全角度应注意的事项。文档还反映了最新的cli工作方式。(1)
>0.1.0(2018-12-29)
====
*在PYPI上首次发布。