- Notifications
You must be signed in to change notification settings - Fork4.9k
Commitfcd15f1
committed
Obstruct shell, SQL, and conninfo injection via database and role names.
Due to simplistic quoting and confusion of database names with conninfostrings, roles with the CREATEDB or CREATEROLE option could escalate tosuperuser privileges when a superuser next ran certain maintenancecommands. The new coding rule for PQconnectdbParams() calls, documentedat conninfo_array_parse(), is to pass expand_dbname=true and wrapliteral database names in a trivial connection string. Escapezero-length values in appendConnStrVal(). Back-patch to 9.1 (allsupported versions).Nathan Bossart, Michael Paquier, and Noah Misch. Reviewed by PeterEisentraut. Reported by Nathan Bossart.Security:CVE-2016-54241 parent41f18f0 commitfcd15f1
File tree
20 files changed
+315
-67
lines changed- src
- bin
- pg_basebackup
- pg_dump
- pg_upgrade
- psql
- scripts
- fe_utils
- include/fe_utils
- interfaces/libpq
- tools/msvc
20 files changed
+315
-67
lines changedLines changed: 10 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
64 | 64 |
| |
65 | 65 |
| |
66 | 66 |
| |
| 67 | + | |
| 68 | + | |
| 69 | + | |
67 | 70 |
| |
68 | 71 |
| |
69 | 72 |
| |
| 73 | + | |
| 74 | + | |
| 75 | + | |
70 | 76 |
| |
71 | 77 |
| |
72 | 78 |
| |
| |||
80 | 86 |
| |
81 | 87 |
| |
82 | 88 |
| |
83 |
| - | |
| 89 | + | |
| 90 | + | |
84 | 91 |
| |
85 | 92 |
| |
86 | 93 |
| |
| |||
89 | 96 |
| |
90 | 97 |
| |
91 | 98 |
| |
92 |
| - | |
| 99 | + | |
| 100 | + | |
93 | 101 |
| |
94 | 102 |
| |
95 | 103 |
| |
|
Lines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
103 | 103 |
| |
104 | 104 |
| |
105 | 105 |
| |
106 |
| - | |
| 106 | + | |
107 | 107 |
| |
108 | 108 |
| |
109 | 109 |
| |
| |||
121 | 121 |
| |
122 | 122 |
| |
123 | 123 |
| |
124 |
| - | |
| 124 | + | |
125 | 125 |
| |
126 | 126 |
| |
127 | 127 |
| |
|
Lines changed: 25 additions & 9 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
771 | 771 |
| |
772 | 772 |
| |
773 | 773 |
| |
| 774 | + | |
| 775 | + | |
| 776 | + | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
774 | 781 |
| |
775 | 782 |
| |
776 |
| - | |
| 783 | + | |
777 | 784 |
| |
778 | 785 |
| |
779 | 786 |
| |
| |||
2984 | 2991 |
| |
2985 | 2992 |
| |
2986 | 2993 |
| |
2987 |
| - | |
| 2994 | + | |
| 2995 | + | |
| 2996 | + | |
2988 | 2997 |
| |
2989 |
| - | |
2990 |
| - | |
2991 |
| - | |
2992 |
| - | |
| 2998 | + | |
| 2999 | + | |
| 3000 | + | |
| 3001 | + | |
| 3002 | + | |
| 3003 | + | |
| 3004 | + | |
2993 | 3005 |
| |
2994 | 3006 |
| |
2995 | 3007 |
| |
| |||
4463 | 4475 |
| |
4464 | 4476 |
| |
4465 | 4477 |
| |
4466 |
| - | |
| 4478 | + | |
4467 | 4479 |
| |
4468 | 4480 |
| |
4469 | 4481 |
| |
| |||
4476 | 4488 |
| |
4477 | 4489 |
| |
4478 | 4490 |
| |
4479 |
| - | |
| 4491 | + | |
| 4492 | + | |
| 4493 | + | |
4480 | 4494 |
| |
4481 | 4495 |
| |
4482 | 4496 |
| |
4483 | 4497 |
| |
4484 | 4498 |
| |
4485 |
| - | |
| 4499 | + | |
| 4500 | + | |
4486 | 4501 |
| |
| 4502 | + | |
4487 | 4503 |
| |
4488 | 4504 |
| |
4489 | 4505 |
| |
|
Lines changed: 9 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| 15 | + | |
15 | 16 |
| |
16 | 17 |
| |
17 | 18 |
| |
| |||
128 | 129 |
| |
129 | 130 |
| |
130 | 131 |
| |
| 132 | + | |
131 | 133 |
| |
132 | 134 |
| |
133 | 135 |
| |
| |||
156 | 158 |
| |
157 | 159 |
| |
158 | 160 |
| |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
159 | 165 |
| |
160 | 166 |
| |
161 | 167 |
| |
| |||
170 | 176 |
| |
171 | 177 |
| |
172 | 178 |
| |
173 |
| - | |
| 179 | + | |
174 | 180 |
| |
175 | 181 |
| |
176 | 182 |
| |
| |||
222 | 228 |
| |
223 | 229 |
| |
224 | 230 |
| |
| 231 | + | |
| 232 | + | |
225 | 233 |
| |
226 | 234 |
| |
227 | 235 |
| |
|
Lines changed: 13 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1507 | 1507 |
| |
1508 | 1508 |
| |
1509 | 1509 |
| |
1510 |
| - | |
| 1510 | + | |
1511 | 1511 |
| |
1512 | 1512 |
| |
1513 | 1513 |
| |
| |||
1740 | 1740 |
| |
1741 | 1741 |
| |
1742 | 1742 |
| |
| 1743 | + | |
1743 | 1744 |
| |
1744 | 1745 |
| |
1745 | 1746 |
| |
1746 | 1747 |
| |
1747 |
| - | |
| 1748 | + | |
| 1749 | + | |
| 1750 | + | |
| 1751 | + | |
1748 | 1752 |
| |
1749 | 1753 |
| |
1750 | 1754 |
| |
| |||
1900 | 1904 |
| |
1901 | 1905 |
| |
1902 | 1906 |
| |
1903 |
| - | |
| 1907 | + | |
| 1908 | + | |
| 1909 | + | |
1904 | 1910 |
| |
1905 | 1911 |
| |
1906 | 1912 |
| |
| |||
1913 | 1919 |
| |
1914 | 1920 |
| |
1915 | 1921 |
| |
1916 |
| - | |
| 1922 | + | |
| 1923 | + | |
1917 | 1924 |
| |
1918 | 1925 |
| |
1919 | 1926 |
| |
| |||
1922 | 1929 |
| |
1923 | 1930 |
| |
1924 | 1931 |
| |
1925 |
| - | |
| 1932 | + | |
| 1933 | + | |
1926 | 1934 |
| |
1927 | 1935 |
| |
1928 | 1936 |
| |
|
Lines changed: 2 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| 15 | + | |
15 | 16 |
| |
16 | 17 |
| |
17 | 18 |
| |
18 | 19 |
| |
19 |
| - | |
| 20 | + | |
20 | 21 |
| |
21 | 22 |
| |
22 | 23 |
| |
|
Lines changed: 12 additions & 7 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
10 | 10 |
| |
11 | 11 |
| |
12 | 12 |
| |
| 13 | + | |
13 | 14 |
| |
14 | 15 |
| |
15 | 16 |
| |
| |||
414 | 415 |
| |
415 | 416 |
| |
416 | 417 |
| |
417 |
| - | |
| 418 | + | |
418 | 419 |
| |
419 | 420 |
| |
420 | 421 |
| |
| 422 | + | |
421 | 423 |
| |
422 |
| - | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
423 | 429 |
| |
424 | 430 |
| |
425 | 431 |
| |
| |||
459 | 465 |
| |
460 | 466 |
| |
461 | 467 |
| |
462 |
| - | |
| 468 | + | |
463 | 469 |
| |
464 | 470 |
| |
465 | 471 |
| |
466 | 472 |
| |
467 | 473 |
| |
468 | 474 |
| |
469 |
| - | |
| 475 | + | |
470 | 476 |
| |
471 | 477 |
| |
472 | 478 |
| |
473 |
| - | |
| 479 | + | |
474 | 480 |
| |
475 | 481 |
| |
476 | 482 |
| |
| |||
484 | 490 |
| |
485 | 491 |
| |
486 | 492 |
| |
487 |
| - | |
488 |
| - | |
| 493 | + | |
489 | 494 |
| |
490 | 495 |
| |
491 | 496 |
| |
|
Lines changed: 14 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| 15 | + | |
15 | 16 |
| |
16 | 17 |
| |
17 | 18 |
| |
| |||
46 | 47 |
| |
47 | 48 |
| |
48 | 49 |
| |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
49 | 59 |
| |
50 | 60 |
| |
51 | 61 |
| |
52 | 62 |
| |
53 | 63 |
| |
54 | 64 |
| |
55 | 65 |
| |
56 |
| - | |
| 66 | + | |
57 | 67 |
| |
58 | 68 |
| |
59 |
| - | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
60 | 72 |
| |
61 | 73 |
| |
62 | 74 |
| |
|
Lines changed: 14 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
38 | 38 |
| |
39 | 39 |
| |
40 | 40 |
| |
| 41 | + | |
41 | 42 |
| |
42 | 43 |
| |
43 | 44 |
| |
| |||
305 | 306 |
| |
306 | 307 |
| |
307 | 308 |
| |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
308 | 318 |
| |
309 | 319 |
| |
310 | 320 |
| |
| |||
316 | 326 |
| |
317 | 327 |
| |
318 | 328 |
| |
319 |
| - | |
| 329 | + | |
320 | 330 |
| |
321 | 331 |
| |
322 |
| - | |
| 332 | + | |
323 | 333 |
| |
| 334 | + | |
| 335 | + | |
324 | 336 |
| |
325 | 337 |
| |
326 | 338 |
| |
|
0 commit comments
Comments
(0)