Security Research
CVE-2023-4357 Chrome XEE on WebBrowsers: from XML external entity to arbitrary file read
Thinking
2024-01-15
4 min read
Research Dossier
#Vulnerability Analysis#Code Audit#Web Security
The Chrome browser’s XML parser does not disable external entity loading when processing user-controlled XML. An attacker crafts malicious XML to read local files.
Unlock to view this content.
ad8d9422966c73fee42096dad808c6448a272095349f41facc28f3d18d1ee66a0726fb5aaffd9271b6702e0ae53f6961031443030e63d37842b7356b4a67d1f44b648f709f84d99b1640e6f7a87a3d44129b61502fc0c5c728a88c67798e6cfb7bcb30fe880464fad1a2cf9635735fbd6e964b402ea4ed27e494f7c87c72f1c586b333a4d4b6d4ade7253d06d61bf923572a6b8c253d117e8b63642be9ad8c68eaee7d4a02592bcdbd3155abcc6a953135deec61ed6729ad92ae056a76758bfc9dbe3a6985cd89376c1f13f12453cfe80b1033ed0624dcc8087daaf8c46ff1d7bcc64d6132a03cf7829d4bd8560e7751b947c80548d66ac50c6585ca44a500717bef64a6c6dcd016649980eae8f174f28262674666135776bd03fa1f6ab95fd9b8bdc3728656778e0d94630e652f423b3ba4127e4ad77d45067f9d3e4b8fe1de223cfda2a60a40912884abc17bf57d9995f5c1c220bacbcccd5549ddac22e5536e10987130e5c778e27445bd552e561911670829bcf1c8c4bc63e28c890a299f8afc16225c9546a7c038ce684995cc12b0a7a540b441d874314290b8778f0773e886e32928dbc639f6820aac7aa73dcd76f3a66122ca7caa2daef7a3c7f2b9e8f191f39ee2545c1847dec8b63a6583afd105dbf7277366a4db6bea72fbc7a4655b7a7bfbac3910c1d0c9168d1208acff991d0160479bb664e197b51f288fc713fb687f70f6ea9c0c0434a2d1e5ba3d22301b2e0d86a5ea4209f27dc8aabf695c08457d38b0c9fce156816df85c6fd8d94a068d2b72d0577d27c6b24950bdc0ee6640015cf382d4ddaad6f9428b3b8d144e199d50a5e2667478bbe192ffedcd437a39c16b17879fe365c71ad9a31b980f90f5d85f8d885b657b0fc79eba81f305182ac71fba7484ef4e8cdc14945cbb1f9699ea40953f2563aafdefe037b9bfb2634673e4750ada7a0631e90b04197e848a1cf9646d7a04445c376e285bff93c672c5f7063fb26d2afc20dee1bab4049e98758c76fa10a1dee5f947a1cba0d758aded7b3515448177392413d1763a0ed8f4528d8f6eb87146fd2caab8d62317701f62db367a0a1037f89fb6eb486bb8ef92ba3062132978aae0740414f4423491d0646147a21fd98ba18012d26398c8f7a4bb17e80c9c7173ea2657c66a8915c484dcdd070b6d1369b700ebd1c36b92d3f145a8d149395c229755483769b780df5a0975520e9a02546d401c3414e882f594057b0d0ddb29389cdd955e84ca1b35c49bd9408dfbac3346bc435ead677f61a27602ca65aac4a1e4b4ad5d08c8f698752efefd5b3493ba8e03680def700e32d3f8f4a9033b70a62c852691f1bbb06ad1ed3567589339584ecff8490afc8cd9572532a784227c3a7ba9f110cbd223ef74487a290bd8588dc774669cdeeda54100ddaa2c2838365ba7cc8d733edde39511260a4ea5dd5b5e364d37772d79020b192904178228cbde591fb692c50feb51f81871dd59269b0cd9f782e3ec0e5d66d4b08e2aabdb3b5e169e3b186faa4f8a3c2c3d53496d31d9f2041cdd7beb723a2a194aa9c9dd257a349042804019d67ab32e81d897debe182514c97d98e5cd342d536eaca6dd146950fb2f3eb5178f00852452a7043c062cf88b5733f0d522e88ec2bcccaebb09e52d51bb5ddacbb1270caab819245a2d2d658ccc896070971519b2ac645fa0b1e313aa79f36f71cff819249632657388754755f5047dddd66b3cdd7f7d006158e79d701dc171985f2cea857c00fdb454e42ff295faac35ddc2a937004a6d1acbd13bb2b0c477457c710106fe589f814871947b6244b0bfa133dec6ef2190ba32abbf41b174eba5518559850262d5cea44cd3b7a14e5cccdc71a7b6a0be9344aa5f7388e231ae65ac9bdd991b0ea80c1ca9bb7f17da16b63d9e8d43b858b95cb56912008085577e11780b3273e31d1e9d45ed6e877789e931773ce297c6e14f27133a23b516446eaddf7ac2a70e0ce9c1e1b2b4d380dcc3de19d5daf03210fcb46b99f6230a3dd925cd981508e95b8a4f74fc01fded69d22b13400adaf5c512ad63585c54331964cbb75d4c2bfe0f6558383db4feae527e302020c21e9a7d00a70decfd17145716ec7381d4845d83923028cd99db942a5bf107d8d39adca6fd0e4c8825cc85624dad9e8031f70f1267e0136e48d70ee5318b053e6adf7223aecf8dcf52c2c80a1e47b8e381fec6d436d074db6114cdc20f73df4f79a66192f0cc3d614978ef583c4f44763cc9e0dc3241497256244778ce852952710b9d86d969bb34664a3a8f4f67b28f0e78fe63376d50ce001c0b06c0b6bcba241a55c61d0088ea32250a48431afb7e0d3de00fca1fbab409a7275304918948d2287bb5c48b96ba49feb381f706f10f66b5462d2e9b1e7a30f5495bc6c0f28f1270c8e58ee5aea69903a63a93d887b5dc76d260d7fc94f5258b1d3f72d5452c95db08795142208f0ee9301eb2f43063b29cc2ae484f24418402b9db63767e252b2bdaf16425e6be56b1bc79c92b6d073758a652e5e964af09d03eecb4f87dbd7594f1705d737f00cbd86327dba2b36ec794a4193be2da84a26b487de411a59c9c9358fab2b31883298edba1af2d0926b9944117543c06dae2c1ed876fd8d955da349589d345cd6deb7a5343f132acd9327102d3869f70f045146935748b62ef767c0199265f120dfe168b6c7503b6c0ff0ce90b0027ad1d03053fa5a411608e6c3d9a770a6080adc4e4f70a61df59925da52adcc4d742fd50c86109601ca701b19de17385fc1f6185ddba2b22dccd71d6cdccda404514a015915371de675d43232866eedde3967dffac6a6ddfe82ed78e5a4ff89d7ac24153a1b2b25e43cad985a0f8e712953631102b4543c7f861f212c67cbb4445bb2f87a42f97d2c48eed0b60b5cb097683ec02616f279520091548e1fc0e273be7ba9fb6c46844c51088c517f950b509f54940221203bd0931a5ff5492f90d40e486931df6be9667d3ca53197e6ca04d4ce013d50ca2c515320d93acb9a6f485081a9e35695b832e61e60970493aaeef6d7611dc5077fd6df3840cff11d13cd70bdbdf902b8c3bd56a4b6da614f1e2fa44ddd5110e876146efd9e874c152d155cb75e7427cdf014bc7f940b0fcf494c89bcc3f73827e470c34cb84bb6884b3352a2384a6c83a750de802fdbc251ec7d704113e12585d9382a2f223673fc02ea23df77c815b811d03ed91a7d87834afeb61d4167e1e11784a5e1c7467aabcd566bbdb10c7986a9e3cf93cdf2ebec471f2b0d1dc712220145ea545660fc3edda063ec99934886b99c39345e227c2215098ba70028bd58d297c9a1e8d6f2e518f6b4577612ba6d6c13c3fd19cba701e8f06ac167c3e7ef4d23a9e08e0d8dee3775fcac6513a212810c6e585022acab52002e37501490c9ec0d8ad553a2516a34f6f1384137b80aee4770fceb94ce902f645271850ee20b96c43300990bf272cd73b716922935446d9c88548922dff63eee0bf202fdb031a1cf5c45276d6e3c3ed59280115d71ef3ac4006ca8922cc153513a94b790e4d5f75013b6e26e8431493b46327bfaee9c9bbd2abf44f57293d2f36fcbcbb107756ea3ab6a0e269b74c5849f929054e7826a296e1cc9319a210edaa837febc5c87dd53c42afd61528f296e33050de5a8a8fdcf337da5c6cdc09f424c22c9a6f058a193cea83d8bc083b0cac06d9ded44bc55dccc3de20067a5bf21610c27f91075d8196369875692a2599e0157710d9a1b28b0f0b35188af1cc11e6fb8dae89ae06a24abcc4d6783c91168fcc07bfde81c6f549bcf45dd0a02d14c7a2d2a3effddc6d1ab5246db26da7f3ee102e08e5bb6b6df7bad09e697d3392b9a4952d58327af20e43157f77f76c8064dec3d8d504612676eaf7392a392099015067746b9319acb78fe694d1b116b269c6f9d71d381adaae9097d273ada7b9abee69ca2493b4af3cd6f9791eea38c07f0baff932df739f153b244e7e1badbae8673483003e3e4dcc813c55becf2570da85b9428815a2f4a6f12a8b6ed7099ae5548fda745914287d7018b168bb10ac6e080bed34b0dcd7cfb7b3706f902acd247599ecc751e64b4fb791a22468deea1c6b549a540b0ac16a50734b7dd71689979b4cceffa774e777fd8b6741ad7fbd63bfaae10ebb24772a3af7fd3d1c51cf9de60dc8edf493bf8e96590657a8fdaf4b8e00d0b7c5c251e80f0c4f8e854aceca388f93d43b1ec0ed989645e1eb9b828fcd03dcc2884e35d412f1e30ccaa16cdb54880ebbe17a385c7dcffcc1e74d0d53b680c02d38ee7762b041191faf5f97cd9a992c1d060d1863c7c09172e09de65514d462654ad95a1353c00eecac3f605b3c5440212f76f861787912948f07e40bce6d7ee6b786c60a07ffbdd0ec2cdb9543a8251cde0ef82e145bcc6018e536e5352807d549f1b35cd8f5578467345b2a202cfff28d07fa8cfc1bddd5ec87cdec5cccc6dd59c2969302676a83cb833009cf857dff6be4628391541c8152dbac38ffd18f8a8fe2e610cb19779ab75fc010fed9df9c69af3530df9cecf20b6693b015f41ee85a4557aa69f634d2d796fa1c3d95dbc34d37dfadfdae766e80de8543d7e6ebd7d029dea12d56f35d1096a0440f76c14a44358c69d8f7a9b1a8abeb12559a0355f254b7d8d990121f30534529b33335eefc03be9246ee508a79e2b0ba8ded65f994dbd8be8ce5a259f281e4db807ce731258abab9b6a78e8562e848d2904abfb46226232be8e7990d5fe8377aa9ddd5b99e0cfd5afde4824c94515248b32240cae2e68b5d756b5aed2368ab5c80fd866678a6dfc2a5719bb5a2546faeca4958dd24448d189a9f689aafa879e4d01733207e9f5c722949b5d6cf078dbb11cef7cf5474ea8e6b579b6f8ebbeb0e8fe37facf372acb2d86482c69dc83e159e340f2414194ff5c1c059fef1e19184bc8a953365fbc25ce9724e11ba811592d527ddb511aa0845a74d7b003a105c72224438f1e4d52c64ea3e38851c0d6a383881f3d568eeb10bff2e566a8bf819be8805ba38c946462409a596bf9bbb465fec1e97b149b94b71d99cdcd33157e59d933b82a91a760e720a1cb8d4e9e35562162923fdc27a0648cbf8fc82ee68c17a0ec5b4d01342167f65d1fe01f913751267842e852b06a953d94ce2426ff125e6a2abc1b0750ba0d214e35743cadd2ebb1b429cc2ac3d8420174a9f27c28dd14f9dc92d46cee6e250d005db3832b2e71a6a0f23b867f277515a2094a52970dc92f7aa1c11921f82f5189918f59638b15fa43d8cb0db7653b5524097b246aa70f6b8c5a893155a88a067a2e04057de3b81b9906c16839e6b2e25dbda42b7997f170b546d4f613c6d3241bed494d3f032f5eb100fb2045b6860cfc88809d2f92a8af3582da5a936bed9bc581fd9de050565a18a85bff6aad5a41d98abdd3f1410bd72f3c9fbe901658a6594dc7ad40f518459bb63fa077539d474b524e598f4d9a4608fceadd0a66025f9a47687eec3befdf58cb8c59ff75291e45f9306708ae700096d1d45d93aac8745993b2e580c652d1d4a9b3a2f819f3f5352470d82dcc8d41a99645667f78a0a418c1898f4816def721a03e3ec622bf0e8fc6a25489ae91d51fc95097b59ece9576a16a8c29b1e223d1c1e644f4e6a0fe7b89baeda3e6cd008462fd10fadaf9cabf6777d0afa7a675b66c8bdcbe74ecf0e57c86650a9ce1b74233ab5a3e151fde4d09a82c5dc74f32647b9312baa04ccd48602dfbf13d90569a00388b8f494b75e1b77ed94e095165e69fbcd51288a2a30451fe0ea7a82b18a43da2c8eb1652612fc6a3a6fdb965273a72bd7d57427683e0fe00584dc41360e12dcb702f2817ca58356c2747f4417dee051099189cc2d588defe93e7926249bc23083228436bd51b27fd9b406025c60062a445ca41097369c970b738fcee4abcd7fae6cb33a27325b28e3b57ea924b11d08c941656c79410ce23abf8ee88df9a8d1fc24b9d567154cfb270cea53337201b978ffc7d9f6c94265361ec8940777229762757e78ff75ef5f829153f073a5f3738b16825d349825377a063f409e3ab3b72dd89d9ea898df643457b96267fa5adb67b86dd7a3c313874a253deb90ae87086b962226ff82cf566304d19176aa8b768ea0cbdd3f82b279921d2eb68c356ccbbe84dd17b7547e3d8ba6c76cbe0cec581cdbade3d37f01faf784da40706a0e5ea3cd20abc3fe7402f350cfc19014b217fbd6b4d63d96005d676f7a8bee1ddc32358c6d90fe7487bd7592d5e2b5cda296b10ba30acbebaae4c40b93020e0602785073d484d58648b026c6f4225714a0e482223332e29002a66ea2e5c9ec8bfa13bdaf64886b14aae4052769045dcc639bdb12fd15d3244e1acaa7415d39d6a1953f8c8fdeda0abb210da0ac191186f22a928f002a5748dd840796e8c812fec910153fe091f9eed60e2c0bd16f1c09219f08364d19e932aad1cfe2465b3cdc8ba9dda5219043cc8c4106cb8a11a2beacd917ac4733f8052fdf8e52b8873e0840d4bd78791feed5723d0048d70ba0642b9976864746fa664b639b409424952f09f9b421a81cb616c5506c395e1bfefaeed17a64333d979dba1c9e78f285bd0533454bc536a22f90da67d9abf2bf19ead71f9100a02bbfc199e12398d8d415d9d35c0fc2c727d3e43b7ec7aba1b2cde106b99e1c50d3727f514ce993d6ff9f28ccc14a1a34b2411ac89bb65486890289732c91fddf8ad6a6625333d989a29f775960a2e2bdf1fde9e07d2d76b90e87ecb19121e529486f22854537f7853f5fdcb979f22c8071ee9e950e3f3b1c58f77643e63d6b396abab94e80dc5750972387e7e811b9fc130b0fd158695d0e9ed986cf7648d5e66cb1274e25da13435010e64c19f7ddb149b72fb3f51bf3b81c06f474c73b299fee117e499cf12d9dd64e0344314e15f1aa679209101ac02467986e4b935d79e26be896f85291c3842bc1b2e43886cbeccf4ff7e9f979ba1493f809d95e5d08c93224a5eb73cca33b98eec2583f70f0a38ff17b8869d98d465ffb49bd629d8d3e6f53c44a932d932c237614c9ed663a7e40269ae3c697a55e4f1f3015fb244a8f300cd6adb1782a2c7ddb3afc6d4c62d1e79c57b6cacf6859c2244eda5fb6791656cbe81cb7a4d2a8dc2c3d5a2ceae2ed21737fe561ac7699497513d0047b5e532d53c0e38f89f3ea1c38b0681eea7dfe27c2afdb8364256cfa1d7baf998c711f3a286f226c6e6c35712c14c28031983de3ca45b8884a1426df3b231f024f746d85ec957befe3623d2b414fb137cb74034d8c5be22c5695af4d8bfe74c07118919e66de429c157c7085c90f18fe37540871f60f67cc559f20b657bea8f743443c2505c78ed5e7cce3944acf96c583d49c3da8216e870bd3326d03ab21b6c2029b2985f9d64ba339bb6e4e8818adfeb90ca5f7260a448300ff2b330a977fe8ac7392b3286045a7bdaf2bfb0990a1d5fe406fec51f72c9d8f07e46b8f0d1d8130f19217006f3cfadbcdee1fd60d50a849dd32459eb57ccc27c8a8c66a46b8a8a3f89ff03e4b13f1c4c97e6e44f73fcec0d74ee4f96aa8864ddc8517d1c65965fcae0b36dd380eadccaeaa569fc60e0df4adf13a96199fd0b6a4d67b6222e4696c8bc2342e50f0a0d1c39bb11091188d104c2e20b2f98e83777077a39e76708f950ad8697ad72702ed1a78478d5a8d7257885eafc66ee765f02f09513c87067240e2873cc12fecdddfa242b2ef00f8842a72b8da2befba8a827a8a3e0527f0d7a5010c586d1cdf2c4e50c1c9d55896c3ee5abd9c228c5c589600bacaf3c58cb59f2f21934259665084571cb292185ec98f721e39730ad1a4131ed358b22be9e2c630829a779dd3686b57793822b8d92738dbecfad55acace467a61716aa39f69b8e46a807bb80df0b424a8f6f0c98d1c2227e80a43981fce84faa74b576f91d054811128fefa35e3aec50bafe53a72eb71eed7c36da5f5bb486b5c3f6c073a460eaf6603a8a71ddcaf9239947e05d87e988595a2a946f2696e588ec98e83bce22eb93fb0b8f6c7403f503e68f2cf9570c3d8ea0aacce2380bdd0f9481602c11460245deebdecd2f8fe7629e09b023ce170f258e4f48127740ebe7c2ac15cfa758f62db7b60a8bdec79d01545054ff4658e72d7878dd2443bb83a64d1cfdf7f43