🐈‍⬛ Pain Pickle:系統化地繞過 Restricted Unpickler 🐈

中文預錄演講即時問答漏洞分析程式分析🐱

Pickle 是 Python 中內建用來序列化與反序列化資料的函式庫。眾所皆知的,隨便反序列化 pickle 相當地危險,一旦順利遇到了一個任意 Pickle 反序列化,就等於撿到了一個 RCE。Marco Slaviero 早已在 BlackHat 2011 的發表《Sour Pickles》中提出一系列利用手法,相應而生的,其也存在對應的緩解手段 —— Python 官方文件的 Restricting Globals 段落即有提出一種標準的實作方式。
對於這種防禦我們偶爾也可在 CTF 中見到這類型的題目,但「CTF 一點都不現實,就只是遊戲!」這種論調屢見不鮮,所以,那現實世界呢?大家實作的防護又做得如何呢?我們嘗試分析了數千個 GitHub 上的各種 Python 專案,從而找到了數個有潛在風險的實作失敗案例。
在此議程中我們會分享找到的有趣案例,並統整出了一系列系統性的繞過手段,最後實作了一套找尋 gadget 以及自動化生成對應 exploit 的工具 🐱

splitline

splitline

@splitline

  • Web Security 🐈‍⬛
  • CTF with ⚔️TSJ⚔️ & 10sec
  • NYCU SQLab member

所有非英語議程都將提供即時同步口譯翻英

議程表

Use event local timezone
TimeZone

00:30

  • 報到時間

01:20

  • 開幕式 - 貴賓致詞與活動介紹

02:10

03:00

  • Break

03:15

04:05

  • Lunch

05:00

05:45

  • Break

06:00

06:45

  • Tea Time

07:00

07:25

08:10

  • Break

08:25

09:10

  • Closing

09:25