2013年7月21日 星期日

HITCON 2013 Wargame - Pwn3d 500 詳解


之前在 tw.PyCon.org 2013 上有分享到 Django 在 SECRE_KEY 洩漏的情況有機會造成 Remote Code Execution

這個 Pwn3d 500 就是那次演講的實例
(演講投影片在 http://orange-tw.blogspot.tw/2013/05/pycon2013-slide-django.html)



Django 有個可愛的 feature 叫做 Signed Cookie

Signed Cookie 實作上是透過 Pickle 物件去儲存 Python 中的 Object 並使用 SECRE_KEY 用 sha1 + hmac 去做出 signature 判斷 COOKIE 有沒有被偽造

Django Apps 的 source code 在 Guthub

相對的 solution 如下



5 則留言:

  1. 吼~~~~~~~~我不見惹>口< (開玩笑ㄉ沒關係啦

    回覆刪除
  2. Is good! 我穿越了长城防火墙来的。

    回覆刪除
  3. 这个问题,前端时间看到在flask framework中也存在。算是很经典的unserialize vulnerability 了。

    回覆刪除