OPENVAS源码编译解析 - 推酷
OPENVAS源码编译解析
本文原创作者:大仁哥@千里目安全实验室
一直以来对OPENVAS这个开放式风险评估系统的使用都是通过 KALI 虚拟机, KALI 中按照步骤配置即可。但这些步骤我从来都记不住,出了问题也只好求助网络,所以就有了自己编译***的想法,一方面是满足自己的完美心理,另一方面就是加深对各模块的理解。废话不多说,来看一下我的 OPENVAS 源码编译之路吧。
1. 系统环境
Ubuntu 14.04.3 LTS
2. 软件下载
Libraries : OPENVAS 库文件
Scanner:扫描代理
Manager:调度中心
GSA :前端 Web UI
本次编译以 ROOT 身份进行,所以在 ROOT 家目录建立了 openvas 目录,并依次执行 wget 命令下载上述库和软件到 openvas 目录。
OPENVAS 使用 CMAKE 进行编译,不熟悉 CMAKE 的童鞋可以移步
进行学习。
***库文件
1. 解压库包,***依赖
在库 INSTALL ***指南中开头就提示我们“大部分开发者使用的是 Debian 7 代号为 Wheezy 的系统,在其他系统上编译可能会失败”。我使用了 Ubuntu ,不是因为 Ubuntu 与 Debian 有很深的渊源关系,纯粹个人 Ubuntu 更习惯一些。
继续阅读 INSTALL ,可看到有对***前提条件的说明,基本是依赖库及其版本的说明,最后给出了 Debian 7 Wheezy 的依赖库***指令,如下图:
我本着“出现问题后再解决问题”的思路,执行上图的依赖库***指令,没有任何问题,顺利完成依赖的升级下载。
2. 外部编译、***
创建一个 build 目录,用于进行 CMAKE 外部编译,并通过 -DCMAKE_INSTALL_PREFIX 指定***路径前缀为“ /root/openvas/tool ”,如下图:
顺利生成编译文件后,运行 make 进行编译,如下图:
编译顺利通过后,运行 make install 进行***,如下图:
***结果可以到 /root/openvas/tool 查看,如下图:
我们可以看到在库文件***过程中,生成两个可执行程序 openvas-nasl 、 openvas-nasl-lint ,我们可以查看资料了解他们的作用,并且对源码分析工作也有一定的帮助。
*** Scanner
1. 解压 Scanner 软件包,***依赖
在 Scanner INSTALL ***指南中可看到存在***的前提条件,***有其依赖库和版本约束,但并未像***库文件时那样给出 Debian 7 Wheezy 的依赖***指令,我继续本着“在出现编译问题后再解决问题”的思路,不去关心这些依赖并进行了忽略。
Scanner 依赖***过的库文件,但是我们并没有将库文件***到系统标准路径( /usr , /usr/local ),而是指定了***前缀,这样 Scanner ***的时候是找不到这些库文件的,我们必须告知其***时库文件的路径,而这一切只需运行一条命令,如下图:
pkg-config工具是在***库文件前作为依赖最先被***,不懂为什么运行这样一简单一条指令就可以明确库查找路径的童鞋可移步自行了解。
2. 外部编译、***
创建一个 build 目录,用于进行 CMAKE 外部编译,并通过 -DCMAKE_INSTALL_PREFIX 指定***路径前缀为“ /root/openvas/tool ”,如下图:
可以看到在生成编译文件时有一个警告信息,信息的大致内容是“没有发现 Doxygen ,它在编译 HTML 文档时是需要的”,其实 Doxygen 在 INSTALL ***指南前提条件中列出来了,被我们忽略了(看来有一些不能忽略 ^_^ ),运行“ apt-get install doxygen ”后重新生成编译文件就不会产生这个警告信息了,顺利生成编译文件后,运行 make 进行编译,如下图:
完成编译后,运行 make install 命令进行***,如下图:
***结果可以到 /root/openvas/tool 查看,如下图:
通过与库文件的***对比,就可以知道 Scanner ***了哪些可执行文件,我们通过查资料可以知道这些文件的作用,帮助我们理解源码。
3. 配置与启动
n Scanner 启动后以服务形式运行于 9391 端口,与 Scanner 通信需要建立 SSL 连接,这就需要为 Scanner 生成连接建立所需要的***,过程如下图:
按照步骤填写信息,最后生成了两份***,每一份都包含一个公钥和一个私钥,为什么是两份?不是所有的 SSL 加密都需要向 CA ***签发机构提出申请的,这需要花钱的,所以 OPENVAS 自己会建立一个小型的***认证系统,第一份***就是小型认证系统 CA 的***(这里是我的主观判断,有不同意见,欢迎交流)。 openvas-mkcert 生成***后会自动把***放到合适的位置。
n Scanner 进行漏扫,必须有插件,也叫 NVTs ( Network Vulnerability Tests ),每个插件是以 NASL ( Nessus Attack Scripting Language )写的,开始 NVTs 是空的,实际扫描前必须进行同步下载,同步脚本在 /root/openvas/tool/sbin 路径下,执行如下图:
执行报错了,用 vim 查看同步脚本如下图:
上图截取了同步脚本的前 9 行,可以很明显的看到错误的原因,因为我们没有将 openvas ***到标准目录 /usr ,而是指定了***前缀 /root/openvas/tool/ ,所以 which openvassd 肯定是没值,这样就产生了我们看到的错误提示了。另上图倒数第三行, openvassd -s 会输出默认配置,脚本从默认配置中提取了插件的存放位置。理解了这些,修改重新配置,如下图:
修改后,执行脚本如下图:
成功开始同步,剩下的就是耐心等待同步结束(网络不同,时间大不同),同步结束后,插件的保存路径为 /root/openvas/tool/var/lib/openvas/plugins ,在该路径下可以看到 NASL 插件。
n Scanner 启动前还需要运行一个 redis 服务,用于临时存储每个主机扫描收集的信息。 redis 是一个可内存可持久化的键值形式的数据库,我们通过 apt-get install redis-server 进行***,***后自动启动服务,可通过 netstat -lntp | grep “6379”查看服务在 6379 端口进行***,可通过 redis-cli shutdown 停掉服务,或者 kill -9 PID 停掉。不理解如何使用 redis 的童鞋可以移步了解一下其用法。在 INSTLL ***指南中已经明确指出支持 redis 2.4 和 2.6 版本,并给出了两个版本快速启动的命令,如下图:
我们***的是 redis2.8 版本,不管那么多,继续本着“出现问题后再解决问题”的思路,执行上图第二条指令,但因为***路径的问题,执行命令实际如下:
执行命令后通过 netstat -lntp | grep “6379”发现服务并没有*** 6379 端口,难道我们执行错了?实际不然,打开 example_redis_2_6.conf ,找到下面图片所示位置就明白原因所在了。
redis在本地,不在网络,所以这里不需要设置端口。
n 运行 openvassd 运行 scanner ,很不幸,遇到错误了,如下:
错误信息提示没有找到库文件,我们编译过程没有遇到问题,库文件的也确实***成功了,那么问题在哪里呢?有过 Linux 开发经验的同学一定遇到过这种问题,解决办法有两种:第一种是执行 export LD_LIBRARY_PATH=/root/openvas/tool/lib:$LD_LIBRARY_PATH 命令,设置环境变量解决,但这种方式适合测试,是一种临时解决方案。第二种是更新动态库缓存文件,我们采用的就是这种方法,在 /etc/ld.so.conf.d 目录下建立 openvas.conf 文件,写入内容如下:
然后执行 ldconfig 命令,更新 /etc/ld.so.cache 文件内容,如下图:
现在是时候启动Scanner了,如下图:
没有问题,启动成功, Scanner 在 9391 端口***,需要说明的是 Scanner 启动成功后, Manager 可以扮演客户端的角色与 Scanner 交互,对 Scanner 进行控制,真正的客户端如命令行 CLI 、 WEBUI ( GSA )只能与 Manager 进行交互,不能越过 Manager 操作 Scanner 。
*** Manager
1. 解压 Manager 软件包,***依赖
在 Manager INSTALL ***指南中也可以看到存在***的前提条件,***有其依赖库和版本约束,但前面库文件以及 Scanner 的***已经满足了 Manager ***需求了。但 PKG_CONFIG_PATH 环境变量的设置少不了,如下图:
2. 外部编译、***
创建一个 build 目录,用于进行 CMAKE 外部编译,并通过 -DCMAKE_INSTALL_PREFIX 指定***路径前缀为“ /root/openvas/tool ”,过程可能会提示缺少 sqlite3 、 xmltoman ,通过 apt-get ***相应的软件包即可,最终顺利生成编译文件,如下图:
运行 make 进行编译如下图:
完成编译后,运行 make install 命令进行***,如下图:
***结果可以到 /root/openvas/tool 查看,如下图:
通过与 Scanner 的***对比,就可以知道 Manager ***了哪些可执行文件,我们通过查资料可以知道这些文件的作用,帮助我们理解源码。
3. 配置与启动
n Manager 启动后需要与 Scanner 通信, Scanner 是服务端, Manager 是客户端,在 Scanner 的“配置与启动”阶段,我们已经为 Scanner 生成了 SSL 相关的***和私钥文件,说明 Manager 可以进行服务端验证,但是 Scanner 也要求对 Manager 进行客户端验证,所以也需要为 Mananger 生成 SSL 相关的***和私钥文件。首先执行 openvas-mkcert-client 生成***和私钥:
然后将***和私钥从临时目录拷贝到相应目录下,如下:
上述两步也可以通过执行openvas-mkcert-client -n -i自动完成。
n 创建一个管理员账户,如下:
n 启动 Manager ,如下图:
1. 解压库包,***依赖
在 GSA 的 INSTALL ***指南中,明确指出了安全了前提条件,***相关依赖包如下图:
2. 外部编译、***
创建一个 build 目录,用于进行 CMAKE 外部编译,并通过 -DCMAKE_INSTALL_PREFIX 指定***路径前缀为“ /root/openvas/tool ”,如下图:
运行 make 进行编译如下图:
完成编译后,运行 make install 命令进行***,如下图:
***结果可以到 /root/openvas/tool 查看,如下图:
3. 配置与启动
执行 gsad 进行启动,如下图:
通过设置 IP 地址为 0.0.0.0 使服务可以通过其他机器进行访问。
OPENVAS 提供了一个检查***是否成功的脚本,脚本位置
,下载运行可检测,但因为我们不是***在标准路径,所以要设置一下PATH 环境变量,如下图:
运行脚本如下:
WARNING 我们就不管了,看一下错误,缺少 SCAP 库,有关这个库的研究就是另一个话题了,我们这里按照给出的 FIX 修改就是,如下图:
完成 SCAP 库的创建和更新后,继续运行检测脚本,如下:
提示没有 OpenVAS CERT 数据库被发现,按照 FIX 提示创建即可,如下图:
再次运行检查脚本,没有 ERROR 了,到此*** OK 。
,如下图:
输入Manager创建的用户名密码,登录如下图:
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(336)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_095',
blogTitle:'发包工具介绍',
blogAbstract:'在从事网络产品尤其是网络安全产品开发时,我们一直面临着一个问题,就是对产品的TCP/IP 协议栈进行稳定性或安全性测试,确保开发产品在遇到各种不规则的错误的IP 包时仍可正常稳定高效地工作,我们知道,在正常的网络环境中,很难产生错误的IP 包,也很难产生我们想要的错误的IP 包,为此,要完成对产品的测试,我们必须自己来制造各种各样错误的IP 包,本篇的目的就是介绍如何利用各种发包工具来制造自己想要的错误的IP 包。2. IP 发包工具介绍目前,有很多常用的产生IP 包的工具,如sendip、nessus、ipsend、ippacket、sniffer 等,下面我们介绍三种比较常用的工具sendip、nessus 和sniffer。2.1. SENDIP 工具SENDIP 是一个LINUX 下的命令行工具,可以通过命令行',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:4,
publishTime:8,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}5.2.1 配置OpenVAS
root@kali:~# cd /usr/share/openvas/
root@kali:/usr/share/openvas# openvas-mkcert
-----------------------------------------------
Creation of the OpenVAS SSL Certificate
-----------------------------------------------
Congratulations. Your server certificate was properly created.
The following files were created:
. Certification authority:
Certificate = /var/lib/openvas/CA/cacert.pem
Private key = /var/lib/openvas/private/CA/cakey.pem
. OpenVAS Server :
Certificate = /var/lib/openvas/CA/servercert.pem
Private key = /var/lib/openvas/private/CA/serverkey.pem
Press [ENTER] to exit
root@kali:/usr/share/openvas# openvas-nvt-sync
[i] This script synchronizes an NVT collection with the 'OpenVAS NVT Feed'.
[i] The 'OpenVAS NVT Feed' is provided by 'The OpenVAS Project'.
[i] Online information about this feed: 'http://www.openvas.org/openvas-nvt-feed.html'.
[i] NVT dir: /var/lib/openvas/plugins
[i] rsync is not recommended for the initial sync. Falling back on http.
[i] Will use wget
[i] Using GNU wget: /usr/bin/wget
[i] Configured NVT http feed: http://www.openvas.org/openvas-nvt-feed-current.tar.bz2
[i] Downloading to: /tmp/openvas-nvt-sync.xAKyyzYVdT/openvas-feed--8214.tar.bz2
-- 14:35:48-- http://www.openvas.org/openvas-nvt-feed-current.tar.bz2
正在解析主机 www.openvas.org (www.openvas.org)& 5.9.98.186
正在连接 www.openvas.org (www.openvas.org)|5.9.98.186|:80& 已连接。
已发出 HTTP 请求,正在等待回应& 200 OK
长度:M) [application/x-bzip2]
正在保存至:&/tmp/openvas-nvt-sync.xAKyyzYVdT/openvas-feed--8214.tar.bz2&
100%[===============================================================&] 14,771,061 54.0K/s 用时 7m 16s
14:43:07 (33.1 KB/s) - 已保存&/tmp/openvas-nvt-sync.xAKyyzYVdT/openvas- feed-
-8214.tar.bz2& [71061])
12planet_chat_server_xss.nasl
12planet_chat_server_xss.nasl.asc
2013/secpod_ms13-005.nasl.asc
2013/gb_astium_voip_pbx_51273.nasl
2013/secpod_ms13-001.nasl
2013/deb_2597.nasl
2013/gb_astium_voip_pbx_51273.nasl.asc
2013/secpod_ms13-006.nasl
2013/gb_edirectory_57038.nasl
2013/secpod_ms13-006.nasl.asc
&省略部分内容&
zope_zclass.nasl.asc
zyxel_http_pwd.nasl
zyxel_http_pwd.nasl.asc
zyxel_pwd.nasl
zyxel_pwd.nasl.asc
[i] Download complete
[i] Checking dir: ok
[i] Checking MD5 checksum: ok
root@kali:/usr/share/openvas# openvas-mkcert-client -n om -i
Generating RSA private key, 1024 bit long modulus
&&&&&&&&&&&&++++++
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) [DE]:State or Province Name (full name) [Some-State]:Locality Name (eg, city) []:Organization Name (eg, company) [Internet Widgits Pty Ltd]:Organizational Unit Name (eg, section) []:Common Name (eg, your name or your server's hostname) []:Email Address []:Using configuration from /tmp/openvas-mkcert-client.f
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName
:PRINTABLE:'DE'
localityName
:PRINTABLE:'Berlin'
commonName
:PRINTABLE:'om'
Certificate is to be certified until Apr 25 06:55:05 2015 GMT (365 days)
Write out database with 1 new entries
Data Base Updated
User om added to OpenVAS.
root@kali:/usr/share/openvas# openvasmd &rebuild
root@kali:/usr/share/openvas# openvassd
Loading the OpenVAS plugins&base gpgme-Message: Setting GnuPG homedir to '/etc/openvas/ gnupg'
base gpgme-Message: Using OpenPGP engine version '1.4.12'
All plugins loaded
root@kali:/usr/share/openvas# openvasmd --rebuild
root@kali:/usr/share/openvas# openvasmd &backup
root@kali:/usr/share/openvas# openvasad -c 'add_user' -n openvasadmin -r Admin
Enter password:
main:MESSAGE:-25 15h25.35 CST: No rules file provided, the new user will have no restrictions.
main:MESSAGE:-25 15h25.35 CST: User openvasadmin has been successfully created.
root@kali:/usr/share/openvas# openvasmd -p 9390 -a 127.0.0.1
root@kali:/usr/share/openvas# openvasad -a 127.0.0.1 -p 9393
root@kali:/usr/share/openvas# gsad --http-only --listen=127.0.0.1 -p 9392
同步NVT Feed(当新的漏洞被发现时,该记录将改变);
启动OpenVAS扫描器;
重建数据库;
备份数据库;
配置端口。
#!/bin/bash
openvas-nvt-sync
openvasmd --rebuild
openvasmd --backup
openvasmd -p 9390 -a 127.0.0.1
openvasad -a 127.0.0.1 -p 9393
gsad --http-only --listen=127.0.0.1 -p 9392
5.2.2 创建Scan Config和扫描任务
5.2.3 扫描本地漏洞
Compliance扫描Compliance漏洞
Default Accounts
扫描默认账号漏洞
Denial of Service
扫描拒绝服务漏洞
扫描FTP服务器漏洞
Ubuntu Local Security Checks
扫描Ubuntu系统的本地安全漏洞
5.2.4 扫描网络漏洞
Brute force attacks暴力攻击
Buffer overflow
扫描缓存溢出漏洞
扫描CISCO路由器
Compliance
扫描Compliance漏洞
扫描数据库漏洞
Default Accounts
扫描默认账号漏洞
Denial of Service
扫描拒绝服务漏洞
扫描FTP服务器漏洞
Finger abuses
扫描Finger滥用漏洞
扫描防火墙漏洞
Gain a shell remotelly
扫描获取远程Shell的漏洞
扫描恶意软件
扫描网络操作系统
扫描NMAP NSE漏洞
Peer-To-Peer File Sharing
扫描共享文件漏洞
Port Scanners
扫描端口漏洞
Privilege Escalation
扫描提升特权漏洞
Product Detection
扫描产品侦察
扫描RPC漏洞
Remote File Access
扫描远程文件访问漏洞
SMTP Problems
扫描SMTP问题
扫描SNMP漏洞
Service detection
扫描服务侦察
扫描基本设置漏洞
5.2.5 扫描指定Linux系统漏洞
Brute force attacks暴力攻击
Buffer overflow
扫描缓存溢出漏洞
Compliance
扫描Compliance漏洞
扫描数据库漏洞
Default Accounts
扫描默认用户账号漏洞
Denial of Service
扫描拒绝服务的漏洞
扫描FTP服务器漏洞
Finger abuses
扫描Finger滥用漏洞
Gain a shell remotely
扫描获取远程Shell漏洞
扫描General漏洞
扫描恶意软件漏洞
扫描网络操作系统
扫描NMAP NSE漏洞
Port Scanners
扫描端口漏洞
Privilege Escalation
扫描提升特权漏洞
Product Detection
扫描产品侦察漏洞
扫描RPC漏洞
Remote File Access
扫描远程文件访问漏洞
SMTP Porblems
扫描SMTP问题
扫描SNMP漏洞
Service detection
扫描服务侦察漏洞
扫描基本设置漏洞
Web Servers
扫描Web服务漏洞
5.2.6 扫描指定Windows系统漏洞
Brute force attacks暴力攻击
Buffer overflow
扫描缓存溢出漏洞
Compliance
扫描Compliance漏洞
扫描数据库漏洞
Default Accounts
扫描默认用户账号漏洞
Denial of Service
扫描拒绝服务漏洞
扫描FTP服务器漏洞
Gain a shell remotely
扫描获取远程Shell的漏洞
扫描General漏洞
扫描网络操作系统漏洞
扫描NMAP NSE漏洞
Port Scanners
扫描端口漏洞
Privilege Escalation
扫描提升特权漏洞
Product Detection
扫描产品侦察漏洞
扫描RPC漏洞
Remote File Access
扫描远程文件访问漏洞
SMTP Problems
扫描SMTP问题漏洞
扫描SNMP漏洞
Service detection
扫描服务侦察漏洞
Web Servers
扫描Web服务漏洞
扫描Windows系统漏洞
Windows:Microsoft Bulletins
扫描Windows系统微软公告漏洞
阅读(...) 评论() &本文原创作者:大仁哥@千里目安全实验室一直以来对OPENVAS这个开放式风险评估系统的使用都是通过KALI虚拟机,KALI中按照步骤配置即可。但这些步骤我从来都记不住,出了问题也只好求助网络,所以就有了自己编译***…
本文原创作者:大仁哥@千里目安全实验室
一直以来对OPENVAS这个开放式风险评估系统的使用都是通过KALI虚拟机,KALI中按照步骤配置即可。但这些步骤我从来都记不住,出了问题也只好求助网络,所以就有了自己***的想法,一方面是满足自己的完美心理,另一方面就是加深对各模块的理解。废话不多说,来看一下我的OPENVAS之路吧。
1. 系统环境
Ubuntu 14.04.3 LTS
2. 软件下载
Libraries:OPENVAS库文件
Scanner:扫描代理
Manager:调度中心
GSA:前端Web UI
本次编译以ROOT身份进行,所以在ROOT家目录建立了openvas目录,并依次执行wget命令下载上述库和软件到openvas目录。
OPENVAS使用CMAKE进行编译,不熟悉CMAKE的童鞋可以移步进行学习。
***库文件
1. 解压库包,***依赖
在库INSTALL***指南中开头就提示我们“大部分开发者使用的是Debian 7代号为Wheezy的系统,在其他系统上编译可能会失败”。我使用了Ubuntu,不是因为Ubuntu与Debian有很深的渊源关系,纯粹个人Ubuntu更习惯一些。
继续阅读INSTALL,可看到有对***前提条件的说明,基本是依赖库及其版本的说明,最后给出了Debian 7 Wheezy的依赖库***指令,如下图:
我本着“出现问题后再解决问题”的思路,执行上图的依赖库***指令,没有任何问题,顺利完成依赖的升级下载。
2. 外部编译、***
创建一个build目录,用于进行CMAKE外部编译,并通过-DCMAKE_INSTALL_PREFIX指定***路径前缀为“/root/openvas/tool”,如下图:
顺利生成编译文件后,运行make进行编译,如下图:
编译顺利通过后,运行make install进行***,如下图:
***结果可以到/root/openvas/tool查看,如下图:
我们可以看到在库文件***过程中,生成两个可执行程序openvas-nasl、openvas-nasl-lint,我们可以查看资料了解他们的作用,并且对分析工作也有一定的帮助。
***Scanner
1. 解压Scanner软件包,***依赖
在Scanner INSTALL***指南中可看到存在***的前提条件,***有其依赖库和版本约束,但并未像***库文件时那样给出Debian 7 Wheezy的依赖***指令,我继续本着“在出现编译问题后再解决问题”的思路,不去关心这些依赖并进行了忽略。
Scanner依赖***过的库文件,但是我们并没有将库文件***到系统标准路径(/usr,/usr/local),而是指定了***前缀,这样Scanner***的时候是找不到这些库文件的,我们必须告知其***时库文件的路径,而这一切只需运行一条命令,如下图:
pkg-config工具是在***库文件前作为依赖最先被***,不懂为什么运行这样一简单一条指令就可以明确库查找路径的童鞋可移步自行了解。
2. 外部编译、***
OPENVAS源码编译解析
本文由 IT学习网 整理,转载请注明“转自IT学习网”,并附上链接。
原文链接:
标签分类:
上一篇:上一篇:
下一篇: 下一篇: