nasl脚本编写指南

最近参与到一个漏扫项目当中,针对nessus和openvas比对后,发现基于openvas开发的扫描器更有优势,主要体现在openvas的命令行可以直接添加扫描ip、扫描方式和最后的报告导出,这就会帮助开发公司将openvas给集成到一个程序里,然后外面留一个ip的接口,通过ip来开启扫描任务,然后导出最后的扫描报告。openvas的插件一共是4.6w个,nessus则超过10万个,这里插件并不是越多越好,因为扫描时长其实也是考验扫描器的一个很重要的指标。

这里由于需要做后续插件库的维护和开发,因此去研究了下整个openvas的调用逻辑,下面就以mini-httpd作为示例,来讲解下我是怎么开发对应的poc插件的

总的来说,web漏洞插件其实还是相对好写一点的,这里稍微讲下怎么使用openvas-nasl编译的,写完之后其实一开始是需要编译一下看看有没有语法错误的,这里的openvas-nasl是需要安装,不是自带工具

这里给个参考链接:http://blog.chinaunix.net/uid-28818752-id-3923299.html

第一种不使用自带证书和签名,由于openvas的插件库都有签名和认证,你想要使用自编的插件库,openvas其实是不会调用的,所以这里需要首先对自己编写的插件库进行签名和认证。当然openvas-nasl也带了不使用认证来编译的参数,不过效果不是很好,自己测试的时候都没有收到回显。

第二种按照上面链接的流程对脚本进行签名后,既可以编译调用(这里签名很玄学,大概率会失败,失败原因千奇百怪)

这里-p参数其实就是编译nasl脚本,如果有语法错误,就会输出语法错误

这个就是对某个ip进行测试,如果调用了openvas的自带函数,可能还需要使用-i参数来包含openvas的插件库目录

上面的display函数其实就类似于print函数,主要是为了调试方便。

最后给下我搭建环境使用的docker镜像(atomicorp/openvas)

相关推荐: python小脚本之页面标题的爬取

突然心血来潮,想要好好研究下python的正则表达式,每次遇到正则总是百度这个.*?什么意思,感觉好烦。。不如来好好研究下具体的符号,但是研究了总要有个用途,于是我决定配合requests库,来进行页面的爬取,然后利用正则表达式,来对页面的标题进行一个匹配,从…

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论