Openvas 9 install on ubuntu 16.04

Первоначальное использование openvas

Общее изменение

407: if (ver) изменено на if (svc) 411: добавить svc перед ver в конце log_message 388: добавьте фигурные скобки в конце и закройте фигурные скобки в строке 418. 413: svc заменяется на строку (всего 5 разрядов), это место можно оставить без изменений Затем перезапустите openvassd

авторизоваться

Используйте следующую команду, чтобы открыть

Вы можете использовать предыдущую команду, чтобы убедиться в отсутствии проблем. Затем войдите в систему https://127.0.0.1:9392

Новая цель

  1. Нажмите «Конфигурация», а затем «Цели», или нажмите пятиконечную звезду в верхнем левом углу, чтобы создать новую цель.
  2. Введите имя цели и просканируйте IP-адрес цели.
  3. Выберите диапазон портов сканирования и тип сканирования (обычно выбирают ВСЕ TCP и Nmap 5.51 top 100 UDP)
  4. По умолчанию доступны другие параметры, затем нажмите «Создать».
  1. Выберите саквары и щелкните «Задачи» или щелкните пятиконечную звезду в левом верхнем углу, чтобы создать новую задачу.
  2. Введите имя, выберите цель сканирования и используйте вновь созданную цель.
  3. Выберите конфигурацию сканирования, обычно подходит значение по умолчанию. Затем нажмите «Создать».
  4. Щелкните зеленый значок запуска сканирования во вновь созданной задаче ниже.
  5. Подождите некоторое время, чтобы завершить сканирование и просмотреть результаты. Примечание. Если сканирование завершается неудачно в течение длительного времени, например пяти или шести часов, значит, конфигурация неверна. Проверьте конфигурацию и DEBUG. Общее время сканирования — в пределах часа (на примере виртуальной машины 2g).

Сканер уязвимостей OpenVAS

OpenVAS — это комплексный сканер уязвимостей, похожий на Nessus, который можно использовать для выявления различных уязвимостей в удаленных хостах и ​​веб-приложениях. После того, как Nessus больше не является открытым исходным кодом, проект OpenVAS с открытым исходным кодом был отделен от своего первоначального проекта. OpenVAS использует NVT (Network Vulnerabilty Test) для написания сценариев проблем безопасности различных удаленных систем (включая Windows, Linux, UNIX и веб-приложения).

Основные функциональные модули OpenVAS

Настроить OpenVAS

Средство сканирования сетевых уязвимостей OpenVAS было предварительно установлено в среде BT5, показанной в этой статье, но перед использованием требуется некоторая настройка

① Сгенерируйте файл сертификата, необходимый для выполнения OpenVAS

Library Обновление библиотеки NVT

Some Выполните некоторые операции инициализации на движке сканирования OpenVAS

④ Используйте команду openvasad, чтобы добавить пользователя для входа в OpenVAS с ролью администратора (имя пользователя — admin).

⑤ Запустите сканер OpenVAS (можно заменить, если порт занят)

⑥ Запустите менеджер OpenVAS Примечание. Порт должен совпадать с портом, установленным при запуске сканера OpenVAS

После выполнения описанных выше 6 шагов вы можете использовать плагин OpenVAS, OpenVAS Cli или GreenBone Security Desktop (GSD) и т. Д. Для управления и использования службы сетевого сканирования OpenVAS

Обратите внимание, что вам нужно использовать администратора, созданного выше, чтобы войти на сервер OpenVAS

Если вам нужно поделиться своей OpenVAS с другими членами группы тестирования на проникновение в сети, вы можете использовать клиентскую программу B / S Architecture GSA (Greenbone Security Assistant). Но перед использованием необходимо запустить службу GSA с помощью следующей команды Затем введите в браузереhttp://localhost:9392 Вы можете начать использовать OpenVAS, посетив GSA.

Вы можете написать команды Shell, связанные с запуском OpenVAS, в файл сценария оболочки, так что каждый раз, когда вы используете OpenVAS, вам нужно только запустить сценарий. Используйте текстовый редактор для генерации файлаstart-openvas.shИ сохраняется в корневом каталоге по умолчанию. Примеры его содержания следующие:

Затем введите в терминале

В следующий раз, когда вы перезапустите систему BT5, вы можете ввести следующее имя непосредственно в терминале, чтобы запустить OpenVAS:

Installing OpenVAS/GVM

There are multiple methods for installing OpenVAS/GVM. We’ll discuss the two most popular methods before proceeding with the installation.

Note: It is always important to use some type of sandboxing environment when installing new software. You can opt for a virtual machine (VM), container or a remote test server.

Compiling from source

This is probably the most complicated method for installing OpenVAS/GVM. If you are comfortable compiling software written in C, this shouldn’t prove too challenging for you. However, we recommend not doing this because OpenVAS is a large piece of software with many parts.

We’ve compiled software before in previous software reviews (see: Masscan), but OpenVAS does have two great alternatives: it’s pre-packaged on Kali and has a PPA* for Ubuntu.

Installing on Kali Linux

Installing OpenVAS on Kali requires just a few commands:

Kali runs as root, so there is no need for sudo. The second part of the setup on Kali will be similar to the Ubuntu install. We will mention at which point you can run the commands on Kali to achieve the same setup on Ubuntu.

Installing on Ubuntu 20.04

Our first discovery when attempting an install on Ubuntu was that much of the existing documentation discusses the ‘openvas’ PPA.* The problem encountered here is that OpenVAS was renamed GVM (Greenbone Vulnerability Management), so we need to adjust the commands appropriately. We’ll use Ubuntu 20.04 to install GVM.

First we update Ubuntu itself:

Now let’s install the required package that will enable us to add the PPA.*

A prompt like the following will be displayed:

Press Enter and the PPA* will be added to the system. We will install PostgreSQL and fetch package data before installing GVM:

We should now be able to install OpenVAS/GVM.

The installation process on Kali Linux should be similar to the process from here onwards. During the install you’ll get a prompt about Redis that looks like:

We can proceed by selecting ‘yes’.

You will then see a few more prompts like this

asking to configure the PostgreSQL database. We can proceed by selecting the default options.

We now run the following commands to fetch the Network Vulnerability Tests from OpenVAS Feed and sync the ‘scap’ and ‘cert’ data:

These and processes should take some time (depending on your internet speed).

In order to get OpenVAS/GVM to run on an external interface (meaning not ), we need to modify the file:

Look for the following line:

and modify it to:

We can now save and exit vim. After this, we need to restart a few services:

You can now browse to your local container/VM IP address remember to include the HTTPs in front of the IP and the port number, so that it looks like: https://x.x.x.x:9392) and you should see an output like the following:

Scan Your System with OpenVAS

Congratulations! OpenVAS is now ready to use. In this section, we’ll provide a basic tutorial for both logging into the Greenbone Security Assistant (GSA) web application and running a basic vulnerability scan.

  1. On your local computer, navigate to your Linode’s IP address or domain name in a web browser. You should be proxied to the GSA Login page.

    In most browsers, you will first encounter a security warning. This happens because OpenVAS generates a self-signed SSL certificate upon installation and your host is not recognized as a trusted certificate authority.

    To verify the certificate in Chrome:

    • Click the warning icon next to in the URL bar, and choose “Details” under the message that is displayed.
    • In the “Security Overview” pane, click the “View Certificate” button.
    • A small window will appear with information about the self-signed certificate. Click “Details” to expand the window and show more information.
    • Scroll to the bottom and find the Fingerprint.
    • On your Linode, run .
    • Compare the two fingerprints. If they match, it’s safe to ignore the warning and proceed.

    To verify the certificate in Firefox:

    • Click the “Advanced” button on the warning page in your browser.
    • Additional details will be displayed, including an error code, which will be something like . Click the error code to view more information.
    • A pane will be displayed with the “Certificate Chain” for your server.
    • On your Linode, run and look for the line in the output.
    • Compare the two certificates to ensure they match. If they do, it’s safe to click “Add Exception” and proceed.
  2. The next page you see will be a login for the Greenbone Security Assistant, the graphical web interface for the OpenVAS manager. Once the page appears on you screen, enter the credentials for your user and click “Login.”

  3. The welcome screen will display instructions on how to use the tool. OpenVAS uses “Tasks” to manage scans, but to start running one right away, simply enter a hostname or IP address in the text box under “Quick Start,” and then click “Start Scan.” This schedules a scan of the specified host to start immediately and sets the page contents to refresh every 30 seconds, so you can see the progress in real time.

  4. The reports showing results of your tasks can be accessed at any time while the scan is in progress. The time a scan takes to complete will depend on the services running on a host, and may vary significantly. To view the results of a scan, select “Scan Management” in the top navigation bar, and click “Reports.”

    To view the details of a specific task, click its name under “Task.” In the example below, it was called “Immediate scan of IP localhost” when we created it with the Task Wizard:

  5. A “Task Details” screen will be displayed, showing information such as status, and the number of vulnerabilities detected. To view the details of any vulnerabilities that were found, click the number next to “Results.” In our example, there were 33:

  6. The “Results” page will list potential vulnerabilities found in the scan. To sort them, click the heading of any column at the top of the page. Note that if you run scans on multiple servers, you’ll need to sort the results by host to determine which servers are affected by vulnerabilities.

    To view details of a vulnerability, such as the method of detection, impact to your system, and in some cases a solution, click the name of the vulnerability. In the example below, OpenVAS has detected that we haven’t changed the default login credentials, and it tells us how to resolve the issue:

    Once you resolve a vulnerability, return to the “Tasks” screen, and click the green play button icon under “Actions” to run the scan again. When the task completes, the vulnerability should no longer be present in your results.

Updating Client and Server Certificates

After running OpenVAS a number of years, this is an issue I have stumbled across more than once. The different OpenVAS components have certificates for encrypting the communication between components (including clients). These certificates expire and when that happens things break. The Manager can’t talk to the Scanner for example.

The first error you may see is something like «503 service temporary down / unavailable». Checking the OpenVAS Manager log file will reveal.

from /var/log/openvas/openvasmd.log

lib  serv:WARNING:2017-06-21 05h32.56 UTC: openvas_server_verify: the certificate is not trusted
lib  serv:WARNING:2017-06-21 05h32.56 UTC: openvas_server_verify: the certificate has expired

So lets create new certificates for both server and clients.

root@localhost: ~# openvas-mkcert -f

-------------------------------------------------------------------------------
  Creation of the OpenVAS SSL Certificate
-------------------------------------------------------------------------------

Congratulations. Your server certificate was properly created.

The following files were created:

. Certification authority:
  Certificate = /usr/local/var/lib/openvas/CA/cacert.pem
  Private key = /usr/local/var/lib/openvas/private/CA/cakey.pem

. OpenVAS Server :
  Certificate = /usr/local/var/lib/openvas/CA/servercert.pem
  Private key = /usr/local/var/lib/openvas/private/CA/serverkey.pem

Press  to exit

And now for the client certificates.

root@localhost: ~# openvas-mkcert-client -n -i

Generating RSA private key, 4096 bit long modulus
....................................................................................................++
................................++
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) :
State or Province Name (full name) :
Locality Name (eg, city) []:
Organization Name (eg, company) :
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:
Email Address []:
Using configuration from /tmp/openvas-mkcert-client.445/stdC.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName :PRINTABLE:'AU'
localityName :PRINTABLE:'Sydney'
commonName :PRINTABLE:'om'
Certificate is to be certified until Nov 10 22:28:26 2018 GMT (365 days)

Write out database with 1 new entries
Data Base Updated

This is from the INSTALL file for the OpenVAS manager, however after doing this the database failed to rebuild and the log showed an authentication error:

lib serv:WARNING:2017-11-10 22h07.27 utc:12817: openvas_server_connect: failed to connect to server: Connection refused
lib auth: INFO:2017-11-10 22h07.31 utc:12819: Authentication configuration not found.

What was required was to register the new certificates with the OpenVAS manager. To do this I ran the following commands:

root@localhost: ~# openvasmd --get-scanners
* uuid is shown here*

root@localhost: ~# openvasmd --modify-scanner  --scanner-ca-pub /usr/local/var/lib/openvas/CA/cacert.pem --scanner-key-pub /usr/local/var/lib/openvas/CA/clientcert.pem --scanner-key-priv /usr/local/var/lib/openvas/private/CA/clientkey.pem

root@localhost: ~# openvasmd --rebuild --progress
Rebuilding NVT cache... done.

Following this, everything is back on track.

Запуск проверок

Для запуска клиента командуйте ; обратите внимание на заглавные буквы (в openSUSE программу клиента можно будет найти в главном меню: Utilities -> Security; в зависимости от дистрибутива этот путь меняется). Главное окно программы разделено на две части: слева в древовидном списке имеется список задач, области действия и отчеты; справа расположено несколько вкладок, позволяющих вам гибко настраивать проверки безопасности

При первом запуске клиента слева будет лишь одна запись: Global Settings — это глобальные настройки по умолчанию. Для изменения параметров необходимо подключиться к серверу.

Для запуска проверки необходимо определить задачу. Нажмите на кнопке New Task на панели инструментов, выберите подходящее название для задачи (к примеру, Проверить главный сервер), во вкладке Comments справа можно описать задачу более подробно, для себя.

Теперь добавим область действия — это всего лишь сложное название для общей конфигурации задачи. Выберите в главном меню Scope -> New. Для вашей задачи появится пустая область, а рядом с названием задачи появится значок «неподключен». Нажмите кнопку «подключение» на панели инструментов, укажите, к какому серверу хотите подключиться и введите логин с паролем. У вас появится несколько диалоговых окон (так будет только в первый раз), предупреждающих вас об обмене сертифкатами, и клиент займется скачиванием всех NVT с сервера.

Если вам нужно выполнить быструю стандартную проверку, нажмите на кнопке Execute на панели инструментов (или выберите Scope -> Execute из главного меню), и OpenVAS запустит все имеющиеся проверки. По завершении работы под записью области действия появится строка отчета, в котором можно посмотреть подробности сканирования. Каждая найденная проблема имеет свой собственный номер Common Vulnerabilities and Exposures (CVE), к примеру CVE-2008-1238; описание всех CVE можно найти
или в базе данных
.
В отчете также могут быть указаны дополнительные сведения, такие как предполагаемые пути решения проблем и оценка опасности найденных уязвимостей (низкая, средняя или высокая).

Чтобы более детально настроить задачу, выберите область действия и справа увидите имеющиеся настройки:

  • Какие хосты «атаковать»
  • Какие порты сканировать. Здесь можно ввести список портов, разделенных запятыми (25,80,1000-1023), либо значение -1 (что означает отсутствие любых проверок), либо значение default (будет применено то, что задано в глобальных настройках).
  • Сколько хостов и сколько проверок будет производиться одновременно; на каждый хост и каждую проверку будет создан свой процесс.
  • Производить только безвредные проверки или нет. Есть такие проверки, которые могут нарушить работу некоторых служб, так вот OpenVAS можно указать не производить такие проверки.
  • Какие плагины задействовать, и их тонкая настройка (у некоторых этих настроек может быть довольно много). Плагины группируются в «families», потенциально вредные проверки отмечены специальным значком.

OpenVAS может выводить отчет в форматах HTML (там даже будет графика), LaTeX или PDF (вывод в последний формат возможен только при использовании несвободной программы HTMLDOC).

Хотя коммерческий Nessus предоставляет больше разных проверок, однако и OpenVAS может найти своего администратора. Все равно — стоит его попробовать.

Configure OpenVAS

Remote Access

To access the Greenbone Security Assistant web interface remotely, you must configure it to listen on your Linode’s public IP address. You can do so by editing its configuration file under the , and specifying your public IP address on the line. Replace with your Linode’s public address:

File: /etc/init.d/openvas-gsa

Save your changes, then restart :

User Authentication for OpenVAS

OpenVAS is now installed, and you’re almost ready to start using it to scan for vulnerabilities. However, you should first change the default password to prevent unauthorized access.

From your Linode, replace in the following example with your new password:

This changes the password for the user to a value of your choosing. You can also create a new administrative user by replacing in the following command:

This method creates a random password even if you specify one. To change the password for a newly created user, use the syntax of the first command, substituting the username and your desired password. To create a new guest user without admin privileges, use the (Greenbone Security Assistant Daemon) tool:

Replace and with the appropriate values. For a complete list of administrative features available with the OpenVAS CLI, use and .

Getting started

Start the services:

# systemctl start ospd-openvas
# systemctl start gvmd
# systemctl start gsad

Create the Scanner:

# su - gvm
# gvmd --get-scanners

Copy the id of the OpenVAS Default scanner and run:

# gvmd --modify-scanner=id-of-scanner --scanner-host=/run/gvm/ospd.sock
# gvmd --verify-scanner=id-of-scanner

Set the feed import user:

# gvmd --get-users --verbose

Copy the id of the admin user and run:

# gvmd --modify-setting 78eceaec-3385-11ea-b237-28d24461215b --value id-of-admin

Note: By default, will bind to port 80. If you are already running a webserver, this will obviously cause problems. You can modify the ports and listen addresses in the file /etc/default/gsad

Configuration Options

During compilation, the build process uses a set of compiler options which
enable very strict error checking and asks the compiler to abort should it detect
any errors in the code. This is to ensure a maximum of code quality and
security.

Some (especially newer) compilers can be stricter than others when it comes
to error checking. While this is a good thing and the developers aim to address
all compiler warnings, it may lead the build process to abort on your system.

Should you notice error messages causing your build process to abort, do not
hesitate to contact the developers by creating a
new issue report.
Don’t forget to include the name and version of your compiler and distribution in your
message.

How to use OpenVAS/GVM

We can login to the dashboard using the following username/password details:

You should then see the dashboard of OpenVAS/GVM as shown here:

Our first test will be to configure a simple scan using OpenVAS/GVM on a single IP address. We have chosen one of the malvertising IPs we track as a test: 192.243.59.20

To conduct a new scan, we follow the path of: Scans > Tasks

Once the page loads, there is an option to create a new task on the top left of the screen:

Create a new task

We can click on “New Task” and fill in the details as follows:

The “Scan Targets” option is where the IP is added. It is currently greyed out because only existing scans can be selected in the drop-down, but next to it we can create a new target.

Clicking on it, we can fill in the details as follows:

Now we can click on Save, which will display “Malvert1” under the “Scan Targets” option. We can click on Save to save the task. “Once” has been chosen as the schedule option to run the scan only once.

The Schedule option is useful when your scans are targeting your own infrastructure and you want it continuously monitored. The other options on the task have been left as default, as an exercise to see the outcome of the scan.

Start scan

The bottom of the Task screen should look like the above. Now we click on the “Start” option to run the scan. The scan should take some time to run, as it looks through multiple threats and scans multiple ports. Once the scan is complete, we can look at the results under: Scans > Reports.

Analyzing the results

Now we’ll discuss the results. We’ll ignore all results with “of 0” present for now.

The Results tab provides us with a broad outlook of what occurred. “Services” checks for web servers running on ports other than 80/443. “CPE Inventory” tells us what software/OS is running on a system. In our case, the results were:

“SSH Protocol Algorithms Supported” is highly valuable as it goes one step beyond just finding an open SSH port and discloses the different SSH algorithms supported by the SSH service on the target (you can take a look at our Top 15 Best SSH Security Practices to learn more about SSH and to improve security for your SSH connections).

Another interesting check is the “Response Time / No 404 Error Code Check” which looks for a misconfigured 404 page.

The “Hosts” tab provides an overview of a short summary of the target IP/Host, the OS, Ports and Apps (not actually listing them but indicating how many).

The “Applications” tab lists the applications found on the target IP. The results we found were mentioned above, but we’ll quickly list them as: OpenSSH, Python2.7 and Nginx

“TLS Certificates” shows which CN issued the cert and its Activation/Expiry date. The results we have show that this IP has a Let’s Encrypt certificate being used that was activated on Wed, Sep 30, 2020. This confirms a point made by many infosec experts — that threat actors are using the free SSL certificates available to encrypt their websites too (using a combination of free SSL and stale DNS records, attackers can turn unused subdomains into phishing/malware attacks).

“Error Messages” is the last tab, which indicates what errors occurred along with the reasons for them.

Compiling openvas

If you have installed required libraries to a non-standard location, remember to
set the environment variable to the location of you pkg-config
files before configuring:

Create a build directory and change into it with:

Then configure the build with:

Or (if you want to use the default installation path /usr/local):

This only needs to be done once.

Thereafter, the following commands are useful:

Please note that you may have to execute as root, especially if
you have specified a prefix for which your user does not have full permissions.

To clean up the build environment, simply remove the contents of the
directory you created above.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: