ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • OpenVAS check_threatlevel VS check_threatlevel_overrides
    Linux 2015. 12. 13. 16:54


    * 비공개 팀 블로그에 작성했던 사항을 그대로 복사해 왔습니다 *


    OpenVAS Nagios Plugin Config에 기술되어 있는 Command 중


    check_threatlevelcheck_threatlevel_overrides에 대한 비교 설명을 진행하려고 한다.


    무엇인지 잘 모르겠는 분은 아래 포스팅의 Command 부분을 읽고 오시면 좋을 듯 하다.


    OpenVAS Nagios Plugin Anatomy


    일단 커맨드가 어떻게 작성되었는지 살펴보자.

    define command{
            command_name    check_threatlevel
            command_line    $USER1$/check_omp -H $USER20$ --status -u $USER21$ -w $USER22$ -T $ARG1$ --last-report -F $HOSTADDRESS$
            }
    
    define command{
            command_name    check_threatlevel_overrides
            command_line    $USER1$/check_omp -H $USER20$ --status -u $USER21$ -w $USER22$ -T $ARG1$ --last-report --overrides=1 -F $HOSTADDRESS$
            }
    


    두 커맨드 간에 다른 점은 한 가지밖에 없다.


    바로 overrides 옵션의 존재 유무이다.


    과연 이 overrides 옵션은 무엇인지, 값이 있을 때 어떻게 작용하게 되는지에 대해 알아보자.



    Usage:
      check_omp [OPTION...] - OpenVAS OMP Command Line Interface
    
    Help Options:
      -h, --help                    Show help options
    
    Application Options:
      -H, --host=<host>             Connect to manager on host <host>
      -p, --port=<number>           Use port number <number>
      -t, --timeout=<number>        Use timeout <number>
      -V, --version                 Print version.
      -v, --verbose                 Verbose messages (WARNING: may reveal passwords).
      --Werror                      Turn status UNKNOWN into status CRITICIAL.
      -u, --username=<username>     OMP username
      -w, --password=<password>     OMP password
      -O, --ping                    Ping the manager
      --status                      Report status of task
      --trend                       Report status by trend (default)
      --last-report                 Report status by last report
      -T, --task=<task>             Report status of task <task>
      -F, --host-filter=<ip>        Report last report status of host <ip>
      --overrides=N                 Include overrides (N: 0=no, 1=yes)
      -d, --details                 Include connection details in output
      -l, --report-link             Include URL of report in output
      --dfn                         Include DFN-CERT IDs on vulnerabilities in output
      --oid                         Include OIDs of NVTs finding vulnerabilities in output
      --descr                       Include descriptions of NVTs finding vulnerabilities in output
      --showlog                     Include log messages in output
      --scanend                     Include timestamp of scan end in output
      --autofp=<n>                  Trust vendor security updates for automatic false positive filtering (0=No, 1=full match, 2=partial).
    

    위는 check_omp 플러그인의 help 메시지이다.


    --overrides=N Include overrides (N: 0=no, 1=yes)


    라고 나와 있다.



    아래 스크린샷을 보자.



    현재 이 Report는 Tomcat이 기본 파일을 가지고 있다는 이유로 6.8 Medium의 Severity 값을 나타내고 있다.


    보통은 이 문제를 해결 한 후에 정상적으로 Task를 한번 더 돌려 해당 취약점 레벨을 정상적으로 낮출 것이다.


    이렇게 해결 할 수 있는 취약점도 있겠지만, 해결 할 수 없거나 무시해도 되는 항목이 있을 때는 어떨까?



    어떻게 할 방법이 없어나 처리해도 무의미한데, 높은 취약점 레벨이 신경쓰일 뿐더러 Nagios에서는 계속 알림을 날려대고...


    운영자 입장에서는 매우 귀찮을 것이다.



    이럴 때 쓰는 기능이 바로 Override 기능이다.


    위 스크린샷의 Add Override를 체크하게 되면 해당 항목을 무시할 수 있게 된다.


    Override의 좀 더 많은 활용에 대해서는 따로 다루도록 하고, 이제 본제로 들어가자.



    check_threatlevel_overrides 커맨드를 포함하는 서비스 이름이 Last GSM Scan obeying Overrides 였던 것을 기억하는가?


    슬슬 감이 오시는 분도 있을 것 같다.



    예를 들어서 설명하자.


    A라는 Task에서 나온 최신 리포트의 취약점 레벨이 6.8 Medium이다.


    하지만 위와 같이 무시해도 되는 취약점이었으며, Override 처리하였다.



    이 때, Nagios에서 check_threatlevel 커맨드를 사용하는 서비스는 Warning 을 표시한다.


    하지만 check_threatlevel_overrides 커맨드를 사용하는 서비스는 OK 가 표시된다.






    정리하자면 override 옵션이 활성화 되어 있으면 설정한 Override 항목들이 반영된 Task 취약점 레벨을 가져오게 되고,


    활성화 되어 있으면 Override 항목들이 무시된 높은 취약점 레벨을 가져오게 되는 것이다.



    선택해서 사용할 것인지, 둘 다 사용할 것인지는 운영 정책에 달려 있다.



Designed by Tistory.