0
0
mirror of https://github.com/zeromq/libzmq.git synced 2024-12-27 07:31:03 +08:00
libzmq/SECURITY.md

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

320 lines
18 KiB
Markdown
Raw Normal View History

# Security Policy
## Supported Versions
4.x versions are supported with critical and security bug fixes.
| Version | Supported |
| ------- | ------------------ |
| 4.3.x | :white_check_mark: |
| 4.2.x | :white_check_mark: |
| 4.1.x | :white_check_mark: |
| 4.0.x | :white_check_mark: |
| < 4.0 | :x: |
## Reporting a Vulnerability
If you believe a bug you found could have security implications,
please send a GPG encrypted email with the details to the maintainers:
| Maintainer | Email address | GPG fingerprint |
| ---------- | --------------- | --------------- |
2019-10-31 14:02:10 -07:00
| Doron Somech | somdoron@gmail.com | E0B0 E3D1 55DD 6ED6 71FB 2B79 D0B9 CC44 867D 8F3D |
| Luca Boccassi | luca.boccassi@gmail.com | A9EA 9081 724F FAE0 484C 35A1 A81C EA22 BC8C 7E2E |
## Internal severity classification
We will attempt to follow this general policy when assigning a severity to
security issues. These are guidelines more than rules, and as such end
results might vary.
| Severity | Definition |
| -------- | ---------- |
| CRITICAL | endpoints using STRONG authentication are SILENTLY affected |
| HIGH | endpoints using STRONG authentication are VISIBLY affected |
| MODERATE | endpoints NOT using STRONG authentication are SILENTLY affected |
| LOW | endpoints NOT using STRONG authentication are VISIBLY affected |
STRONG authentication means transports that use cryptography, for example CURVE
and TLS.
VISIBLY affected means that platform owners are likely to immediately notice
misbehaviours, like crashes or loss of connectivity for legitimate peers.
SILENTLY affected means that without close inspection, platform owners are
unlikely to notice misbehaviours, like remote code executions or data exfiltration.
### Public keys
<details>
<summary>Doron Somech</summary>
```
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQINBF0YXO8BEAD8Be6QQa+ALzIWszeDPtVK9DCGN7ZM1C4Ygq6w7llauhg4wreg
kQy7YwOFKsFTi9cmIRfkw/lX9tIn+PkNe+kV7tOLDCdAmNCqdERvM/C46uPM/Mx4
IdaoUXOPVIwbLcCLysiYxickq/M6ymPH7pAT5deCxH9B1DV38T2Mlq+uXXyZ1aFE
74oCouQ7Vau31NBeOA4DkpPjpdA/WXMVEqoB3PKALUGYs1Ce5CguE0WjdueZFt2k
DvdYtbUFb+vNLMPCejf1sBWDnUygPfsPPakyimfxBSIRsQLvw/5t6bkiWgtGU4LD
o37skSzum7h0rw1378ryoMUYdaNu/oNlWCwbQzBjD6G+WYbmu5AB5aGSaDjUzg9K
AIcaNbRFln7OwvHrQdvDuWypZw7JvWYbehaywBagbjSTjIwb+Umki8cF/zxi5sxI
eFRMARDVQa5PAeErDd+4RtMcB55M2a90xWcTcfBdE/VYmwBXsMMWju4ceBtAqBCB
DTVxxaT54tKjkOKa1Yk75zL4Xu7Sekg2BIaHh/qVMn5aTEX+X6ImeFhWRjhgsk+Q
XoXo74nJq2aCJ2sSjLRdvnePtc3WM+WfdmdnC12JpBiBn4TFYxMBJlvqfKBxZELU
eZBkB6eTcBO/n5U3jSdFM47SeiBgUlPRiV+0ArZJ4i2Giv9vduWO6XeMVwARAQAB
tCFEb3JvbiBTb21lY2ggPHNvbWRvcm9uQGdtYWlsLmNvbT6JAjgEEwECACIFAl0Y
XO8CGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJENC5zESGfY89i0wP/i5k
sYQkdaPeos9JnfUd3cV588lQzBN2bVhzCtbrjR6wXn9hRhZP9ftCNKoVp8cpC07G
Vq87sKqeB7odaK67jS+XoF4msIUEYS0lN2lPORf523VK3Juy9FW39aEPfx+6P5+h
h49VveR1t9I7MgdjnKVwmaELcFDKKGQaPlcWlKctSkOLRw/vYFIvajFJ30bkK9+z
sjgtUvXbSgt4HHHOQ/M6oCNhDsY0YE1zNxDgc8EqRlRxf76+pwldMe47/sIP2U7m
qI6d/LfsWnK6iJ0ehlp6oPP2GcUM8bH3lh2ugHH7sPSwpvh/rHqQTTxv+KiFeQOC
yuxvWdjathnDDHRNPVahBR747iKlcebJeaK5X8wObcIDaGBecwnNIjws4hrYAFH0
eNiROIbDkxDjwFhBYLDMfVCPW3xpBDa67EBJ6qTrabxmXOGvUDR2kB0P5lmtU/jL
jdVeFLj9tgwuuL8PW5k/gCdeB4WSBF4VWAHBZ2vDXUPut78dHQQg+dgvHmbnRYZB
Em6nrYUeoQ4nSOHf7VmdHf05HGwam+ZTWLN2sIEerNJlRCx6mEn20O2S7DE4RMi5
VjBFHy8/YSR3hRtdOSYfE61AeProeDPTGiei6xxlN00MQ7K/kFhQHIjKz1Ao51LU
o6+KGTtka2+g368boLcQALIchlfp7cfUAEp+dB7UuQINBF0YXO8BEADBXhwad2VN
XFhD69CPwWR39KmoW019EvT8tNWzCPzx8hQeTJz+fY0bTiXYxMROZwF0SD4kqYet
nejfH+boUFV64coxmfCmriqOQ0SGZTCfWzrjDrWjj51Xe1NWsGnFNO6vCcL1NNPB
0ZcE/wskEaKPi6Ui0SwvlDJQFK5UnrnFehmEIxEqi8BFez2Ft7/3I/XRrhlDzMtT
hDgMb+Ro9BydddH3TRKAdJBzIsozCrv0nn1DIXM+Pocqiuvk72E6iUxS2meeA4F6
DTG6MIWEcf6WPRVqXdD2bCBzDJ1NYixK9TFdZjo/6jTLwwX711+/NTIblAbpc/KE
io+0cuRG99gP8Cr+1VVZ2fcK9FpjI/u4YERmj8arMkcFz+QQDaJnXIjmNDpD0zBQ
Dh2v6pKysoEgmOE2xDzBsJbZomluKOytLN9/KcqucB1qkjzHD5JeZe+/S1vxdZUn
+81Us+SeepiDOfrT84xFYcqJentL+ylFj7zBdeqF4WTnZAT9/xbVuUSYnRm1Sm0z
vr99Sum0MXUTzgNhY5x3PkFQyg91lllJUFGoXiLivG+3M8JFC7V2K7wXhHFqffVX
Qq6UOm6+kCTjUCgzpQswMpDremB7A2fBQObKOC/3pE0Gbh3uKvylqQkMPTn4lOao
J3VSd1hBqHAdb5uxnmxN8w3wIpnaSypBawARAQABiQIfBBgBAgAJBQJdGFzvAhsM
AAoJENC5zESGfY895WkQAJYvJg/IYBKh0SblT8lGj9O+mLXO6K1q+HfZ6mERm9Ew
+fgW/cwGzuUrn+DC6vfsXlqtshUwiaxaa6NJccPBfC5IGHAegK5giwnQ/sbrA70A
7md2u+NK2tNDGK4Gxy8ZWMY1++TmwdVLzNivM5IA/NGotyYgQStDI+/Muvh+0wQ9
xZjo/InxVXeQcnqQXVKhoouPo2GlXslHev04SRl/ZJYN5sEHCE0Qx6L++esVvrwE
/N5NT5Rk41l4mXAN2SM0H5AB+Wf1qIiVB6pMLBzXM/7qnCnJS0FZZjf2WRiB0yXj
xTl+/JUK9MYckkrNcAfnb6yvnvO5W3KDabZhl/Cqw08vVSvcqyYRFXIa4vduiGJP
L6C8o3USbjVfZhBSHXpuo7JPzR0S4l52QB2ZnTCRIjSBe5vphVum6r3vR5rKAU1n
Htytqm099TlDapj+4wixSv8TvwlJr9no0uEJloyRAMFMYms4KgLEEZfc2tqpe/sA
nO6TM9h/hCbrImplSiesHqTxprnKAipudSYkc750zuFTiBQ5WwYbWjkCB2PSEh+l
8ZCRM5Ropfk4ATMhXH/w2Dxa5mdaHuKWKUc14+YfSBJI8yohbVIzYVsvAclctCQY
kAh/Z/Fl8W+ftDsZF0/1k3fxyKwExFej+AIsabcQDG0bAHscfH/44atKZRPn72FI
=Qu19
-----END PGP PUBLIC KEY BLOCK-----
```
</details>
<details>
<summary>Luca Boccassi</summary>
```
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
XNBso9Rw94Z5NVIXEcH3O44UsWI=
=AXgM
-----END PGP PUBLIC KEY BLOCK-----
```
</details>