No puede crear un enlace que contenga un cuerpo POST. Así que tendrás que ir por una ruta algo diferente.
Deberá crear su propia página que contenga la carga útil:
<form action="http://target.com" method="post" onload="this.submit()">
<input type="hidden" value="payload" name="fieldname">
</form>
O puede lograr el mismo efecto simplemente utilizando la API de recuperación de JavaScript. Entonces necesitas engañar a la víctima para que visite esta página.
Esto será un poco más difícil ya que la URL será diferente y quizás se vea un poco sospechosa. Si quiere evitar eso, puede buscar vulnerabilidades de redireccionamiento abiertas y aprovecharlas para llevar a la víctima a su página.
Por supuesto, si la carga útil se almacena en el servidor y se muestra en una página que puede visitarse más adelante, esto es mucho más simple: simplemente haga que la víctima visite esa página. Esto es lo que se llama XSS almacenado.