forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit35edcc0
committed
Make relation-enumerating operations be security-restricted operations.
When a feature enumerates relations and runs functions associated withall found relations, the feature's user shall not need to trust everyuser having permission to create objects. BRIN-specific functionalityin autovacuum neglected to account for this, as did pg_amcheck andCLUSTER. An attacker having permission to create non-temp objects in atleast one schema could execute arbitrary SQL functions under theidentity of the bootstrap superuser. CREATE INDEX (not arelation-enumerating operation) and REINDEX protected themselves toolate. This change extends to the non-enumerating amcheck interface.Back-patch to v10 (all supported versions).Sergey Shinderuk, reviewed (in earlier versions) by Alexander Lakhin.Reported by Alexander Lakhin.Security:CVE-2022-15521 parent9164637 commit35edcc0
File tree
10 files changed
+381
-48
lines changed- contrib/amcheck
- expected
- sql
- src
- backend
- access/brin
- catalog
- commands
- utils/init
- test/regress
- expected
- sql
10 files changed
+381
-48
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
177 | 177 | | |
178 | 178 | | |
179 | 179 | | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
180 | 202 | | |
181 | 203 | | |
182 | 204 | | |
183 | 205 | | |
184 | 206 | | |
185 | 207 | | |
| 208 | + | |
186 | 209 | | |
187 | 210 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
118 | 138 | | |
119 | 139 | | |
120 | 140 | | |
121 | 141 | | |
122 | 142 | | |
123 | 143 | | |
| 144 | + | |
124 | 145 | | |
125 | 146 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
245 | 245 | | |
246 | 246 | | |
247 | 247 | | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
248 | 251 | | |
249 | 252 | | |
250 | 253 | | |
| |||
261 | 264 | | |
262 | 265 | | |
263 | 266 | | |
| 267 | + | |
264 | 268 | | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
265 | 280 | | |
| 281 | + | |
266 | 282 | | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
267 | 288 | | |
268 | 289 | | |
269 | 290 | | |
| |||
323 | 344 | | |
324 | 345 | | |
325 | 346 | | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
326 | 353 | | |
327 | 354 | | |
328 | 355 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
865 | 865 | | |
866 | 866 | | |
867 | 867 | | |
| 868 | + | |
| 869 | + | |
| 870 | + | |
868 | 871 | | |
869 | 872 | | |
870 | 873 | | |
| |||
891 | 894 | | |
892 | 895 | | |
893 | 896 | | |
| 897 | + | |
894 | 898 | | |
| 899 | + | |
| 900 | + | |
| 901 | + | |
| 902 | + | |
| 903 | + | |
| 904 | + | |
| 905 | + | |
| 906 | + | |
| 907 | + | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
895 | 913 | | |
896 | 914 | | |
897 | 915 | | |
| |||
906 | 924 | | |
907 | 925 | | |
908 | 926 | | |
909 | | - | |
| 927 | + | |
910 | 928 | | |
911 | 929 | | |
912 | 930 | | |
| |||
924 | 942 | | |
925 | 943 | | |
926 | 944 | | |
| 945 | + | |
| 946 | + | |
| 947 | + | |
| 948 | + | |
| 949 | + | |
| 950 | + | |
927 | 951 | | |
928 | 952 | | |
929 | 953 | | |
| |||
965 | 989 | | |
966 | 990 | | |
967 | 991 | | |
| 992 | + | |
| 993 | + | |
| 994 | + | |
968 | 995 | | |
969 | 996 | | |
970 | 997 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1421 | 1421 | | |
1422 | 1422 | | |
1423 | 1423 | | |
| 1424 | + | |
| 1425 | + | |
| 1426 | + | |
1424 | 1427 | | |
1425 | 1428 | | |
1426 | 1429 | | |
| |||
1430 | 1433 | | |
1431 | 1434 | | |
1432 | 1435 | | |
1433 | | - | |
| 1436 | + | |
| 1437 | + | |
| 1438 | + | |
| 1439 | + | |
| 1440 | + | |
| 1441 | + | |
| 1442 | + | |
| 1443 | + | |
| 1444 | + | |
| 1445 | + | |
1434 | 1446 | | |
1435 | 1447 | | |
1436 | 1448 | | |
| |||
1446 | 1458 | | |
1447 | 1459 | | |
1448 | 1460 | | |
| 1461 | + | |
| 1462 | + | |
| 1463 | + | |
| 1464 | + | |
| 1465 | + | |
| 1466 | + | |
1449 | 1467 | | |
1450 | 1468 | | |
1451 | 1469 | | |
| |||
3283 | 3301 | | |
3284 | 3302 | | |
3285 | 3303 | | |
3286 | | - | |
| 3304 | + | |
| 3305 | + | |
| 3306 | + | |
| 3307 | + | |
| 3308 | + | |
| 3309 | + | |
| 3310 | + | |
| 3311 | + | |
| 3312 | + | |
| 3313 | + | |
| 3314 | + | |
3287 | 3315 | | |
3288 | 3316 | | |
3289 | 3317 | | |
| |||
3296 | 3324 | | |
3297 | 3325 | | |
3298 | 3326 | | |
3299 | | - | |
3300 | | - | |
3301 | | - | |
3302 | | - | |
3303 | | - | |
3304 | | - | |
3305 | | - | |
3306 | | - | |
3307 | | - | |
3308 | | - | |
3309 | 3327 | | |
3310 | 3328 | | |
3311 | 3329 | | |
| |||
3509 | 3527 | | |
3510 | 3528 | | |
3511 | 3529 | | |
| 3530 | + | |
| 3531 | + | |
| 3532 | + | |
3512 | 3533 | | |
3513 | 3534 | | |
3514 | 3535 | | |
| |||
3523 | 3544 | | |
3524 | 3545 | | |
3525 | 3546 | | |
| 3547 | + | |
| 3548 | + | |
| 3549 | + | |
| 3550 | + | |
| 3551 | + | |
| 3552 | + | |
| 3553 | + | |
| 3554 | + | |
| 3555 | + | |
| 3556 | + | |
3526 | 3557 | | |
3527 | 3558 | | |
3528 | 3559 | | |
| |||
3696 | 3727 | | |
3697 | 3728 | | |
3698 | 3729 | | |
3699 | | - | |
3700 | | - | |
| 3730 | + | |
| 3731 | + | |
| 3732 | + | |
| 3733 | + | |
| 3734 | + | |
3701 | 3735 | | |
3702 | 3736 | | |
3703 | 3737 | | |
3704 | 3738 | | |
| 3739 | + | |
| 3740 | + | |
| 3741 | + | |
3705 | 3742 | | |
3706 | 3743 | | |
3707 | 3744 | | |
| |||
0 commit comments
Comments
(0)