~/talk

Secure Software Supply Chains for Python

Talkat PyCon US 2021 · 2021-05-14..05-15· [security]
slides:none on file

PyPI hosts nearly 300,000 projects and has removed more than 3,000 malicious libraries after incidents; a dependency confusion variant previously hit Apple Microsoft and 33 other companies. Pip became HTTPS-only four years ago. Practical defenses that work are pip-compile (pip-tools) or pipenv lock producing version pins, full dependency trees and hashes, and pip’s hash checking mode which requires every artifact be hashed. Services like PyUp and Dependabot open pull requests. Integration of PEP 458/TUF and funded malware-detection work for PyPI are in progress.

AI-written summary · about

  1. 0:00Intro
  2. 0:14Secure Software Supply Chains for Python PyCon US 2021
  3. 1:08Software Supply Chain Everything it takes to produce your software
  4. 2:09Secure Software Supply Chain What is it?
  5. 2:19Supply Chain Attacks Let's see some examples
  6. 2:52Supply Chain Attack: Typosquatting
  7. 3:53Supply Chain Attack: Dependency Confusion
  8. 5:11Supply Chain Attack: Being a target of "research"
  9. 5:44Supply Chain Attack: Getting SolarWinded
  10. 7:30What we can do: HTTPS everywhere
  11. 8:05What we can do: Use lockfiles
  12. 10:48Version pins • Hashes X • Full dependency tree
  13. 11:50An underused workflow Compiled Dependencies
  14. 14:17What can we prevent with lockfiles?
  15. 14:46What we can do: Vulnerability notifications
  16. 16:54Improvemnt: Package Signing
  17. 18:05Improvement: Fully audited/curated
  18. 19:21Improvement: The slow but inevitable death of setup.py
  19. 21:40Improvement: The Update Framework
  20. 22:34Improvement: Namespaces on PyPI
  21. 23:44Improvement: More funding for projects
~/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.