forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commitab49ce7
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 parente5b5a21 commitab49ce7
File tree
10 files changed
+378
-48
lines changed- contrib/amcheck
- expected
- sql
- src
- backend
- access/brin
- catalog
- commands
- utils/init
- test/regress
- expected
- sql
10 files changed
+378
-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 | |
|---|---|---|---|
| |||
248 | 248 | | |
249 | 249 | | |
250 | 250 | | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
251 | 254 | | |
252 | 255 | | |
253 | 256 | | |
| |||
264 | 267 | | |
265 | 268 | | |
266 | 269 | | |
| 270 | + | |
267 | 271 | | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
268 | 283 | | |
| 284 | + | |
269 | 285 | | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
270 | 291 | | |
271 | 292 | | |
272 | 293 | | |
| |||
326 | 347 | | |
327 | 348 | | |
328 | 349 | | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
329 | 356 | | |
330 | 357 | | |
331 | 358 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1007 | 1007 | | |
1008 | 1008 | | |
1009 | 1009 | | |
| 1010 | + | |
| 1011 | + | |
| 1012 | + | |
1010 | 1013 | | |
1011 | 1014 | | |
1012 | 1015 | | |
| |||
1033 | 1036 | | |
1034 | 1037 | | |
1035 | 1038 | | |
| 1039 | + | |
1036 | 1040 | | |
| 1041 | + | |
| 1042 | + | |
| 1043 | + | |
| 1044 | + | |
| 1045 | + | |
| 1046 | + | |
| 1047 | + | |
| 1048 | + | |
| 1049 | + | |
| 1050 | + | |
| 1051 | + | |
| 1052 | + | |
| 1053 | + | |
| 1054 | + | |
1037 | 1055 | | |
1038 | 1056 | | |
1039 | 1057 | | |
| |||
1048 | 1066 | | |
1049 | 1067 | | |
1050 | 1068 | | |
1051 | | - | |
| 1069 | + | |
1052 | 1070 | | |
1053 | 1071 | | |
1054 | 1072 | | |
| |||
1066 | 1084 | | |
1067 | 1085 | | |
1068 | 1086 | | |
| 1087 | + | |
| 1088 | + | |
| 1089 | + | |
| 1090 | + | |
| 1091 | + | |
| 1092 | + | |
1069 | 1093 | | |
1070 | 1094 | | |
1071 | 1095 | | |
| |||
1107 | 1131 | | |
1108 | 1132 | | |
1109 | 1133 | | |
| 1134 | + | |
| 1135 | + | |
| 1136 | + | |
1110 | 1137 | | |
1111 | 1138 | | |
1112 | 1139 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1424 | 1424 | | |
1425 | 1425 | | |
1426 | 1426 | | |
| 1427 | + | |
| 1428 | + | |
| 1429 | + | |
1427 | 1430 | | |
1428 | 1431 | | |
1429 | 1432 | | |
| |||
1433 | 1436 | | |
1434 | 1437 | | |
1435 | 1438 | | |
1436 | | - | |
| 1439 | + | |
| 1440 | + | |
| 1441 | + | |
| 1442 | + | |
| 1443 | + | |
| 1444 | + | |
| 1445 | + | |
| 1446 | + | |
| 1447 | + | |
| 1448 | + | |
1437 | 1449 | | |
1438 | 1450 | | |
1439 | 1451 | | |
| |||
1449 | 1461 | | |
1450 | 1462 | | |
1451 | 1463 | | |
| 1464 | + | |
| 1465 | + | |
| 1466 | + | |
| 1467 | + | |
| 1468 | + | |
| 1469 | + | |
1452 | 1470 | | |
1453 | 1471 | | |
1454 | 1472 | | |
| |||
3294 | 3312 | | |
3295 | 3313 | | |
3296 | 3314 | | |
3297 | | - | |
| 3315 | + | |
| 3316 | + | |
| 3317 | + | |
| 3318 | + | |
| 3319 | + | |
| 3320 | + | |
| 3321 | + | |
| 3322 | + | |
| 3323 | + | |
| 3324 | + | |
| 3325 | + | |
3298 | 3326 | | |
3299 | 3327 | | |
3300 | 3328 | | |
| |||
3307 | 3335 | | |
3308 | 3336 | | |
3309 | 3337 | | |
3310 | | - | |
3311 | | - | |
3312 | | - | |
3313 | | - | |
3314 | | - | |
3315 | | - | |
3316 | | - | |
3317 | | - | |
3318 | | - | |
3319 | | - | |
3320 | 3338 | | |
3321 | 3339 | | |
3322 | 3340 | | |
| |||
3525 | 3543 | | |
3526 | 3544 | | |
3527 | 3545 | | |
| 3546 | + | |
| 3547 | + | |
| 3548 | + | |
3528 | 3549 | | |
3529 | 3550 | | |
3530 | 3551 | | |
| |||
3552 | 3573 | | |
3553 | 3574 | | |
3554 | 3575 | | |
| 3576 | + | |
| 3577 | + | |
| 3578 | + | |
| 3579 | + | |
| 3580 | + | |
| 3581 | + | |
| 3582 | + | |
| 3583 | + | |
| 3584 | + | |
| 3585 | + | |
3555 | 3586 | | |
3556 | 3587 | | |
3557 | 3588 | | |
| |||
3770 | 3801 | | |
3771 | 3802 | | |
3772 | 3803 | | |
3773 | | - | |
3774 | | - | |
| 3804 | + | |
| 3805 | + | |
| 3806 | + | |
| 3807 | + | |
| 3808 | + | |
3775 | 3809 | | |
3776 | 3810 | | |
3777 | 3811 | | |
3778 | 3812 | | |
| 3813 | + | |
| 3814 | + | |
| 3815 | + | |
3779 | 3816 | | |
3780 | 3817 | | |
3781 | 3818 | | |
| |||
0 commit comments
Comments
(0)