Да, htmlspecialchars это базовый уровень, но он никак не спасёт, если где-то проморгал. CSP — вещь полезная, но действительно муторно её правильно настроить, чтобы не сломать что-то. В общем, только на комбинацию всего надеяться, отдельные методы в современных условиях слишком сырые.