как проверить правильность ответов на вызовы пружинного контроллера, чтобы предотвратить атаки XSS - PullRequest
0 голосов
/ 06 января 2019

Я работаю в проекте, где безопасность имеет высокий приоритет. мой проект использует остальные вызовы, и мне нужно проверить ответ, чтобы предотвратить атаки xss. все методы в контроллерах Spring возвращают ResponseEntity. мы используем угловой 6 в передней части . Когда статический анализ кода выполняется Fortify, он запрашивает подтверждение ответа, чтобы избежать xss.

Подскажите, пожалуйста, какой способ и как лучше всего сделать, чтобы предотвратить атаки xss в ответ , прежде чем ответ будет передан на страницу .

1) подтверждение ответа на уровне обслуживания 2) подтверждение ответа на уровне контроллера

мне нужно делать это в каждом методе, я не могу сделать это в одном месте?

как это реализовать? Любой пример кода будет полезен

мой пример кода

@RestController

@RequestMapping("/path")

public class MyController{


@Autowired
private IService service;


@RequestMapping(method=RequestMethod.GET,path="/search",produces="application/json")

public ResponseEntity<?> find(@PathVariable("id") @NotNull final Long id){

SomeDTO dto = null;

dto = service.findResults(id);

return new ResponseEntity<>(dto,HttpStatus.OK);

}


}

1 Ответ

0 голосов
/ 06 января 2019

Вам не нужно подтверждать ответ, это должно быть выполнено во время отображения. Есть несколько способов, как предотвратить xss на стороне FE. Прежде всего, Angular сделает это для нас из коробки, если вы не вводите значения как html, если вы не создаете html-части в fe и не внедряете их в DOM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...