~/talk

Let’s exploit pickle, and `skops` to the rescue!

Talkat PyCon Italia 2023 · 2023-05-25..05-28· [security, machine-learning]
slides:none on file

Pickle can run arbitrary code on load and standard pickle/joblib/cloudpickle all share that risk; skops implements a safe-on-load ZIP schema storing arrays as .npy files with numpy.load(allow_pickle=False), avoids calling reduce by default and only reconstructs scikit-learn objects via get_state/set_state, raising on untrusted types. The library is slower and produces larger archives but works for most sklearn, xgboost and lightgbm cases. A public conversion service runs each job in an isolated Docker space. arbitrary code execution skops ZIP schema

AI-written summary · about

  1. 0:00Intro
  2. 0:20About Adrin
  3. 1:28Loading pickle
  4. 3:06pickle is not safe
  5. 3:48how does pickle work
  6. 4:17what is important
  7. 4:35getState
  8. 5:08pickle
  9. 6:13reduce
  10. 7:07pickling
  11. 8:35other attacks
  12. 10:05pickle and reduce
  13. 11:50ASD
  14. 12:24Load
  15. 13:34Ficklink
  16. 14:01Logistic regression
  17. 14:23What can we do for users
  18. 15:55SKOPS
  19. 17:19Dumped Files
  20. 18:00Shady Files
  21. 18:22Linear Regression
  22. 18:52Where is my data
  23. 19:46Scopes schema
  24. 20:15numpysave
  25. 21:32trusted
  26. 22:10malicious libraries
  27. 22:35new
  28. 23:30loading
  29. 24:05conversion
  30. 24:54load untrusted objects
  31. 25:23numpy load
  32. 25:46xgboost
  33. 26:03roadmap
  34. 26:21parallel processing
  35. 26:41public protocol
  36. 26:59report bugs
  37. 27:21load models
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.