Получение сонара Критический дефект в конфигурации безопасности HTTP authorizeRequests () - PullRequest
0 голосов
/ 23 октября 2019

У меня есть приложение с весенней загрузкой, которое я получаю в следующем Sonar Critical дефекте в моей функции конфигурации в строке, вызывающей authorizeRequests (). Как мне это исправить? Спасибо.

Make sure that Permissions are controlled safely here. Controlling permissions is security-sensitive. 
 It has led in the past to the following vulnerabilities:

 CVE-2018-12999
 CVE-2018-10285
 CVE-2017-7455

Мой класс конфигурации:

@Configuration
@EnableWebSecurity
public class MyConfig extends WebSecurityConfigurerAdapter {

      @Override
      protected void configure(HttpSecurity http) throws Exception {

      http            
        .authorizeRequests()  // Sonar complain this line here
        .antMatchers("/v1/").permitAll()
        .antMatchers("/**").authenticated()
        .and().httpBasic()
        .and().cors();
   }
}

1 Ответ

1 голос
/ 24 октября 2019

Я только что посмотрел описание ошибки в сонаре, а ниже приведено описание ошибки в соответствии с сонаром.

Контроль разрешений чувствителен к безопасности. В прошлом это приводило к следующим уязвимостям:

  • CVE-2018-12999
  • CVE-2018-10285
  • CVE-2017-7455

Атакующие могут повредить только то, к чему они имеют доступ. Таким образом, ограничение их доступа - хороший способ предотвратить их разрушение, но это должно быть сделано правильно.

Это правило помечает код, который контролирует доступ к ресурсам и действиям. Цель состоит в том, чтобы направлять проверки кода безопасности.

Ниже приведен код, вызывающий проблему с сонаром

.authorizeRequests()  // Sonar complain this line here
.antMatchers("/v1/").permitAll()
.antMatchers("/**").authenticated()

Как я уже упоминал в комментариях к вашему вопросу, не разрешайте слепо авторизацию. запросы, доступ должен быть ограничен, как показано нижеиспользовать // NOSONAR в производственной среде.

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