Error error while loading shared libraries: libopenvas_nasl.so.21 Openvas

Hello I have a problem with openvas whene I tried to make the setup or anythings I ran in to this error :

openvas: error while loading shared libraries: libopenvas_nasl.so.21: cannot open shared object file: No such file or directory

if someone can help me please


  • Parrot version in use
    VERSION_ID=“5.1”
    VERSION=“5.1 (Electro Ara)”
    VERSION_CODENAME=ara

.
OS: Parrot Security 5.1 ara
Kernel: x86_64 Linux 5.18.0-14parrot1-amd64
Uptime: 1h 2m
Packages: 3104
Shell: bash 5.1.4
Resolution: 1920x1080
DE: MATE 1.24.1
WM: Metacity (Marco)
WM Theme: ARK-Dark
GTK Theme: ARK-Dark [GTK2/3]
Icon Theme: ara
Font: Cantarell 11
-o/ Disk: 42G / 452G (10%)
CPU: Intel Core2 Quad Q6600 @ 4x 2.4GHz
GPU: NV94
RAM: 1656MiB / 7954MiB

GVM (OpenVAS) has been broken in Parrot 5.x since it’s release. The devs say they are looking into addressing it, but it’s “not an easy fix”.

1 Like

No helpful shits from openvas official website. Not the first time and first system that openvas has this error (just google can’t find shared lib openvas and you’ll see it happened time to time).

1 Like

An example of what i said

1 Like

Well I “accidenly” found greenbone’s FAQ
https://greenbone.github.io/docs/latest/faq.html

  • Support is only provided for the Greenbone Enterprise product line
  • Greenbone doesn’t provide any packages for any Linux distribution besides the commercial Greenbone OS
  • Greenbone can’t provide installation docs for the many available Linux distributions available.

I have never seen an open source project shits on open source community like this before.

I said it before, Greenbone is taking an Open Source Project and making it so difficult to run on Linux Distros that they effectively made it a paid product with buggy source code that has so many errors when compiled and configured on standard Linux.

:disguised_face: :face_with_monocle: :face_with_symbols_over_mouth:

@dmknght

When I saw the Parrot 5.0 betas and releases with broken Greenbone, as much as I love Parrot, I installed Kali and have been using mainly as a desktop distro for 6+ months. But in the past 2 months or so, GVM appears to be broken on Kali too.

I’ll install the recently released Kali 2022.3 in a VM this weekend and affirm Greenbone screwed Kali over as well.

Well that didn’t surprise me. Let me be honest: the gvm’s packages are provided by Debian and it’s easier to update from Debian. I bet Kali does the same method. Well if not, … then it won’t have any differences. Remember last time I told you Kali didn’t have any specific patches? Turned out they didn’t upgrade version as early as Parrot LuL.

Greenbone does work on Kali 2022.3 after a bit of fiddling, using the methods you already gave in your earlier posts Masmer, I couldn’t say the same for Parrot, that just refused toi run at all.

Thanks Fred. I installed Kali 2022.3 on VMware-Workstation 16, updated packages, and installed gvm.

I’m running through gvm-setup at the moment, downloading the various exploit definitions, etc.

I was going to report any clues for the admin. So far no problem. Another hour will know for sure.

Setting up xml-twig-tools (1:3.52-1) …
Setting up libjcode-pm-perl (2.06-1.1) …
Setting up tk8.6 (8.6.12-1) …
Setting up libuuid-perl (0.28-1+b3) …
Setting up greenbone-security-assistant (21.4.4-1) …
Setting up libio-stringy-perl (2.111-3) …
Setting up libtexluajit2:amd64 (2022.20220321.62855-4) …
Setting up libfontbox-java (1:1.8.16-2) …
Setting up libzzip-0-13:amd64 (0.13.72+dfsg.1-1.1) …
Setting up libyaml-tiny-perl (1.73-1) …
Setting up libmicrohttpd12:amd64 (0.9.75-4) …
Setting up python3-psutil (5.9.0-1+b1) …
Setting up libdigest-perl-md5-perl (1.9-4) …
Setting up tex-common (6.17) …
update-language: texlive-base not installed and configured, doing nothing!
Setting up libunicode-map-perl (0.112-13) …
Setting up libunbound8:amd64 (1.16.0-2) …
Setting up lua-cjson:amd64 (2.1.0+dfsg-2.1) …
Setting up libradcli4 (1.2.11-1+b2) …
Setting up libteckit0:amd64 (2.5.11+ds1-1) …
Setting up libapache-pom-java (18-1) …
Setting up liblzf1:amd64 (3.6-3) …
Setting up t1utils (1.41-4) …
Setting up libtexlua53-5:amd64 (2022.20220321.62855-4) …
Setting up libcrypt-rc4-perl (2.02-4) …
Setting up python3-wrapt (1.13.3-1+b2) …
Setting up fonts-texgyre (20180621-3.1) …
Setting up libkpathsea6:amd64 (2022.20220321.62855-4) …
Setting up lua-bitop:amd64 (1.0.2-5) …
Setting up libole-storage-lite-perl (0.20-1) …
Setting up libparse-recdescent-perl (1.967015+dfsg-3) …
Setting up tcl (8.6.11+1) …
Setting up fonts-lmodern (2.005-1) …
Setting up libcarp-clan-perl (6.08-1) …
Setting up tk (8.6.11+1) …
Setting up tex-gyre (20180621-3.1) …
Setting up python3-deprecated (1.2.13-2) …
Setting up libsynctex2:amd64 (2022.20220321.62855-4) …
Setting up libhiredis0.14:amd64 (0.14.1-3) …
Setting up libgnutls-dane0:amd64 (3.7.7-2) …
Setting up libpdfbox-java (1:1.8.16-2) …
Setting up doc-base (0.11.1) …
Registering 35 doc-base files…
Setting up libgvm21:amd64 (21.4.4-1) …
Setting up preview-latex-style (12.2-1) …
Setting up libcommons-parent-java (43-1) …
Setting up dvisvgm (2.13.4-1) …
Setting up libcommons-logging-java (1.2-3) …
Setting up libspreadsheet-writeexcel-perl (2.40-2) …
Setting up libbit-vector-perl:amd64 (7.4-2) …
Setting up libptexenc1:amd64 (2022.20220321.62855-4) …
Setting up redis-tools (5:6.0.16-4) …
Setting up libspreadsheet-parseexcel-perl (0.6500-3) …
Setting up texlive-binaries (2022.20220321.62855-4) …
update-alternatives: using /usr/bin/xdvi-xaw to provide /usr/bin/xdvi.bin (xdvi.bin) in auto mode
update-alternatives: using /usr/bin/bibtex.original to provide /usr/bin/bibtex (bibtex) in auto mode
Setting up lmodern (2.005-1) …
Setting up texlive-base (2022.20220722-1) …
mktexlsr: Updating /var/lib/texmf/ls-R-TEXLIVEDIST…
mktexlsr: Updating /var/lib/texmf/ls-R-TEXMFMAIN…
mktexlsr: Updating /var/lib/texmf/ls-R…
mktexlsr: Done.
tl-paper: setting paper size for dvips to a4: /var/lib/texmf/dvips/config/config-paper.ps
tl-paper: setting paper size for dvipdfmx to a4: /var/lib/texmf/dvipdfmx/dvipdfmx-paper.cfg
tl-paper: setting paper size for xdvi to a4: /var/lib/texmf/xdvi/XDvi-paper
tl-paper: setting paper size for pdftex to a4: /var/lib/texmf/tex/generic/tex-ini-files/pdftexconfig.tex
tl-paper: setting paper size for dvipdfmx to letter: /var/lib/texmf/dvipdfmx/dvipdfmx-paper.cfg
tl-paper: setting paper size for dvips to letter: /var/lib/texmf/dvips/config/config-paper.ps
tl-paper: setting paper size for pdftex to letter: /var/lib/texmf/tex/generic/tex-ini-files/pdftexconfig.tex
tl-paper: setting paper size for xdvi to letter: /var/lib/texmf/xdvi/XDvi-paper
Setting up gnutls-bin (3.7.7-2) …
Setting up gvmd-common (21.4.5-1) …
Setting up libdate-calc-perl (6.4-2) …
Setting up libdate-calc-xs-perl:amd64 (6.4-2) …
Setting up texlive-plain-generic (2022.20220722-2) …
Setting up redis-server (5:6.0.16-4) …
update-rc.d: We have no instructions for the redis-server init script.
update-rc.d: It looks like a non-network service, we enable it.
redis-server.service is a disabled or a static unit, not starting it.
Setting up texlive-latex-base (2022.20220722-1) …
Setting up texlive-latex-recommended (2022.20220722-1) …
Setting up texlive-pictures (2022.20220722-1) …
Setting up texlive-fonts-recommended (2022.20220722-1) …
Setting up tipa (2:1.3-21) …
Setting up texlive-latex-extra (2022.20220722-2) …
Setting up openvas-scanner (21.4.4-1) …
Setting up ospd-openvas (21.4.4-1) …
ospd-openvas.service is a disabled or a static unit, not starting it.
Setting up gvmd (21.4.5-1) …
Setting up python3-gvm (21.11.0-1) …
Setting up gsad (21.4.4-0kali4) …
gsad.service is a disabled or a static unit not running, not starting it.
Setting up gvm (21.4.4~kali1) …
Setting up gvm-tools (22.6.0-1) …
Processing triggers for kali-menu (2022.3.1) …
Processing triggers for desktop-file-utils (0.26-1) …
Processing triggers for libc-bin (2.33-8) …
Processing triggers for man-db (2.10.2-1) …
Processing triggers for install-info (6.8-6) …
Processing triggers for mailcap (3.70+nmu1) …
Processing triggers for fontconfig (2.13.1-4.4) …
Processing triggers for tex-common (6.17) …
Running updmap-sys. This may take some time… done.
Running mktexlsr /var/lib/texmf … done.
Building format(s) --all.
This may take some time… done.

                                                                                                                                                                                    ┌──(root㉿Vishnu)-[/home/a-non]

└─# sudo gvm-setup

[>] Starting PostgreSQL service

[>] Creating GVM’s certificate files

[>] Creating PostgreSQL database

[*] Creating database user

[*] Creating database

[*] Creating permissions
CREATE ROLE

[*] Applying permissions
GRANT ROLE

[*] Creating extension uuid-ossp
CREATE EXTENSION

[] Creating extension pgcrypto
CREATE EXTENSION
[>] Migrating database
[>] Checking for GVM admin user
[
] Creating user admin for gvm
[] Please note the generated admin password
[
] User created with password ‘ec4bf6a0-a77d-4c34-925c-32018e9203b0’.
[] Define Feed Import Owner
[>] Updating GVM feeds
[
] Updating NVT (Network Vulnerability Tests feed from Greenbone Security Feed/Community Feed)
Greenbone community feed server - http://feed.community.greenbone.net/
This service is hosted by Greenbone Networks - http://www.greenbone.net/

All transactions are logged.

If you have any questions, please use the Greenbone community portal.
See https://community.greenbone.net for details.

By using this service you agree to our terms and conditions.

Only one sync per time, otherwise the source ip will be temporarily blocked.

receiving incremental file list…

You know what? I tried gvm inside my VM and here’s the result

Seems good right? It isn’t broken at all? Nah. I have to fix it myself and the “fix” is really simple:

  • All libs belongs to package openvas-scanner
  • All libs are installed into /usr/lib64/ for amd64 package. I suppose it’s /usr/lib32 for i386?

Now it’s out of my knowledge because I haven’t worked on Linux library so much, therefore IDK if this is very old path that the system doesn’t include it into LD_PATH. Okay let go to the next direction.
From official build part of their readme (not from official build on their documentation), they use cmake.

That’s the funny part. cmake can generate installation and Debian build system manages it well. I’ve done 3 projects of Rizin project. Nothing to complain.
The whole build rules of Debian

The rules is to build with flag --prefix=/usr → set install location. The other parts are about create test build if header file exists

The only file that relates to installation direction in Debian packaging.
Okay is this good enough to debunk It's the Parrot fault that the admin on the forum blamed?
Here’s what I tried when grep the keyword lib64


The path was created by CMakeList, which means by the original’s author, not Parrot’s devs nor Debian’s des nor any distro maintainer.
First bunk: It’s not modified by maintainer
The only question: Why Parrot doesn’t have /usr/lib64 in LD_Path?
The answer is here /usr/lib64? Wait what? [LWN.net]

The second bunk: Too many distro (from their FAQ). Well… kinda… Unless the developer created if-else conditions to check some specific cases like this.

P/s: forgot the “fix” method: move all libs of openvas to /usr/lib/x86_64-linux-gnu/. Done

1 Like

I could follow that. LOL!

So using Cmake with the GVM “open-source code” generates a flawed checklist pointing to the directory /usr/lib64 which only exists on the Darwin project (macOS) so it fails on Linux. Except Kali has a $olution to fix this. {dramatic music plays}

Waiting for the feeds to all synchronize before testing against a target machine. It’s been months since my last screenshot here, please indulge. Puff, puff, pass. Pentest p0rn!

So after I found the walkthrough, i googled a bit and found this file-hierarchy(7) - Linux manual page. The current standard that Debian is using: Location for placing dynamic libraries into, also called $libdir. The architecture identifier to use is defined on Multiarch Architecture Specifiers (Tuples)[6] list. And the /usr/lib64 is Legacy locations of $libdir are /usr/lib/, /usr/lib64/. I suppose there are some distros are supporting / used to support both for software compatibility but well… gvm didn’t care about the Multiarch Architecture Specifiers clearly so you know what i mean here.

1 Like

Well I now have a working install of greenbone on my Parrot OS!

I first did this;
move all libs of openvas to `/usr/lib/x86_64-linux-gnu/
Thank you dmknight.

and then gvm-check-setup completed but it still didn’t run, kept saying I neded to install something that was already there, so then I sudo apt remove gvm and reinstalled it, sudo apt install gvm, and that pulled in whatever it thougfht was missing, and after that it was happy, and I didn’t have to build anything.

Still doesn’t launch the browser though, but it is running at local host, and can be used.

2 Likes

For me it work thanks @Fred_Sheehan
just do sudo cp /usr/lib64/libopenvas* /usr/lib and it is done