Commit f1689b6
authored
[3.12] pythongh-126037: fix UAF in
pythongh-126037: fix UAF in `xml.etree.ElementTree.Element.find*` when concurrent mutations happen (python#127964)
We fix a use-after-free in the `find`, `findtext` and `findall` methods of `xml.etree.ElementTree.Element`
objects that can be triggered when the tag to find implements an `__eq__` method that mutates the
element being queried.
(cherry picked from commit c57623c)xml.etree.ElementTree.Element.find* when concurrent mutations happen (python#127964) (python#131932)1 parent 525eddf commit f1689b6
File tree
3 files changed
+69
-48
lines changed- Lib/test
- Misc/NEWS.d/next/Library
- Modules
3 files changed
+69
-48
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2713 | 2713 | | |
2714 | 2714 | | |
2715 | 2715 | | |
2716 | | - | |
| 2716 | + | |
2717 | 2717 | | |
2718 | 2718 | | |
2719 | 2719 | | |
2720 | 2720 | | |
| 2721 | + | |
2721 | 2722 | | |
2722 | 2723 | | |
2723 | 2724 | | |
2724 | | - | |
| 2725 | + | |
| 2726 | + | |
| 2727 | + | |
| 2728 | + | |
| 2729 | + | |
| 2730 | + | |
| 2731 | + | |
| 2732 | + | |
| 2733 | + | |
| 2734 | + | |
| 2735 | + | |
| 2736 | + | |
| 2737 | + | |
| 2738 | + | |
| 2739 | + | |
| 2740 | + | |
2725 | 2741 | | |
2726 | 2742 | | |
2727 | 2743 | | |
2728 | 2744 | | |
2729 | | - | |
| 2745 | + | |
| 2746 | + | |
| 2747 | + | |
2730 | 2748 | | |
2731 | 2749 | | |
2732 | 2750 | | |
| |||
2741 | 2759 | | |
2742 | 2760 | | |
2743 | 2761 | | |
2744 | | - | |
2745 | | - | |
2746 | | - | |
| 2762 | + | |
| 2763 | + | |
| 2764 | + | |
| 2765 | + | |
| 2766 | + | |
2747 | 2767 | | |
2748 | 2768 | | |
2749 | 2769 | | |
| |||
2754 | 2774 | | |
2755 | 2775 | | |
2756 | 2776 | | |
2757 | | - | |
2758 | | - | |
2759 | | - | |
| 2777 | + | |
| 2778 | + | |
| 2779 | + | |
| 2780 | + | |
| 2781 | + | |
2760 | 2782 | | |
2761 | 2783 | | |
2762 | 2784 | | |
| |||
2781 | 2803 | | |
2782 | 2804 | | |
2783 | 2805 | | |
2784 | | - | |
2785 | | - | |
2786 | | - | |
| 2806 | + | |
| 2807 | + | |
| 2808 | + | |
| 2809 | + | |
| 2810 | + | |
2787 | 2811 | | |
2788 | 2812 | | |
2789 | 2813 | | |
| |||
Lines changed: 5 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1249 | 1249 | | |
1250 | 1250 | | |
1251 | 1251 | | |
1252 | | - | |
1253 | 1252 | | |
1254 | 1253 | | |
1255 | 1254 | | |
1256 | 1255 | | |
1257 | 1256 | | |
1258 | | - | |
| 1257 | + | |
1259 | 1258 | | |
1260 | 1259 | | |
1261 | | - | |
1262 | | - | |
1263 | | - | |
1264 | | - | |
1265 | | - | |
1266 | | - | |
| 1260 | + | |
| 1261 | + | |
1267 | 1262 | | |
1268 | 1263 | | |
1269 | | - | |
1270 | | - | |
| 1264 | + | |
| 1265 | + | |
| 1266 | + | |
| 1267 | + | |
1271 | 1268 | | |
| 1269 | + | |
1272 | 1270 | | |
1273 | | - | |
| 1271 | + | |
1274 | 1272 | | |
| 1273 | + | |
1275 | 1274 | | |
1276 | 1275 | | |
1277 | 1276 | | |
| |||
1294 | 1293 | | |
1295 | 1294 | | |
1296 | 1295 | | |
1297 | | - | |
1298 | 1296 | | |
1299 | 1297 | | |
1300 | 1298 | | |
1301 | 1299 | | |
1302 | 1300 | | |
1303 | 1301 | | |
1304 | | - | |
1305 | | - | |
1306 | | - | |
1307 | | - | |
1308 | | - | |
| 1302 | + | |
1309 | 1303 | | |
1310 | | - | |
| 1304 | + | |
1311 | 1305 | | |
1312 | | - | |
1313 | 1306 | | |
1314 | 1307 | | |
1315 | | - | |
| 1308 | + | |
| 1309 | + | |
| 1310 | + | |
1316 | 1311 | | |
1317 | | - | |
| 1312 | + | |
| 1313 | + | |
1318 | 1314 | | |
1319 | | - | |
1320 | 1315 | | |
1321 | 1316 | | |
1322 | 1317 | | |
1323 | | - | |
1324 | 1318 | | |
1325 | 1319 | | |
1326 | 1320 | | |
1327 | | - | |
| 1321 | + | |
1328 | 1322 | | |
| 1323 | + | |
1329 | 1324 | | |
1330 | 1325 | | |
1331 | 1326 | | |
| |||
1346 | 1341 | | |
1347 | 1342 | | |
1348 | 1343 | | |
1349 | | - | |
1350 | | - | |
1351 | 1344 | | |
1352 | 1345 | | |
1353 | 1346 | | |
1354 | 1347 | | |
1355 | 1348 | | |
1356 | | - | |
| 1349 | + | |
1357 | 1350 | | |
1358 | 1351 | | |
1359 | | - | |
1360 | | - | |
| 1352 | + | |
| 1353 | + | |
1361 | 1354 | | |
| 1355 | + | |
1362 | 1356 | | |
1363 | | - | |
1364 | | - | |
1365 | | - | |
1366 | | - | |
1367 | | - | |
1368 | | - | |
| 1357 | + | |
| 1358 | + | |
1369 | 1359 | | |
1370 | 1360 | | |
1371 | | - | |
| 1361 | + | |
| 1362 | + | |
| 1363 | + | |
1372 | 1364 | | |
1373 | 1365 | | |
1374 | 1366 | | |
| |||
0 commit comments