Nessus不错的笔记.docx
《Nessus不错的笔记.docx》由会员分享,可在线阅读,更多相关《Nessus不错的笔记.docx(39页珍藏版)》请在冰豆网上搜索。
![Nessus不错的笔记.docx](https://file1.bdocx.com/fileroot1/2023-1/29/9dad691d-88f8-4ec8-a2ce-9318b8b3e6ad/9dad691d-88f8-4ec8-a2ce-9318b8b3e6ad1.gif)
Nessus不错的笔记
Nessus使用笔记
连接Nessus图形用户界面
IP:
8834/
1.策略
配置策略
点击“Policies”,添加策略,点击“Add”
一个Nessus“策略”包括有关使用漏洞扫描配置选项。
这些选项包括但不限于:
控制扫描的技术方面参数,包括超时,主机数目,端口扫描器的类型及更多。
本地扫描证书(例如:
Windows,SSL),认证的Oracle数据库扫描HTTP,FTP,POP,IMAP或者基于Kerberos的身份验证。
基于粒度族或者插件的扫描说明。
数据库符合策略检查,报告冗长,服务检测扫描设置,Unix符合检查及更多。
General
“Basic”组用来界定策略本身。
选项
描述
Name
设置将在NessusUI显示的名字以用来标识策略
Visibility
控制策略是否和其他用户共享,或者自己私用,只有管理员用户可以共享策略。
Description
用来对扫描策略进行简单的描述,好的典型是概括总体目标(例如:
没有本地检查或者没有HTTP服务的web服务器扫描)
“Scan”组规定了扫描行为的有关选项。
选项
描述
Name
设置将在NessusUI显示的名字以用来标识策略
Visibility
控制策略是否和其他用户共享,或者自己私用,只有管理员用户可以共享策略。
Description
用来对扫描策略进行简单的描述,好的典型是概括总体目标(例如:
没有本地检查或者没有HTTP服务的web服务器扫描)
SaveKnowledgeBase
Nessus扫描器可以把扫描信息保存到Nessus服务器知识库中,以便将来使用。
包括开放的端口,成功匹配的插件,发现的服务等等。
SafeChecks
使对远程主机造成破坏的插件失效。
SilentDependencies
如果这个选项被选上,报告中将不会包括依赖列表。
若想在报告中包括依赖列表,请不要选择。
LogScanDetailstoServer
保存扫描的更多的细节到服务器日志(.nessusd信息)。
包括:
已使用的插件,完成的插件,被终止的插件。
结果日志可以被用来确认特定的插件被使用,特定的主机被扫描。
StopHostScanonDisconnect
如果选上,若主机没有反应Nessus将会停止扫描,在一个扫描过程中,如果用户关掉PCs,将会发生这种情况。
在拒绝服务插件或一个安全机制开始对服务器阻塞之后,主机停止反应(例如:
IDS)。
继续对这些主机扫描将会通过网络发送不必要的流量并延迟扫描。
AvoidSequentialScans
默认情况下,Nessus按次序扫描IP地址列表。
如果选上,Nessus将会随机扫描主机列表。
在一个大规模扫中,分配特定子网的网络流量,将会非常有用。
ConsiderUnscannedPortsas
Closed
如果一个端口没有被端口扫描器(例如:
超出指定范围)发现,就认为这个端口是关闭的。
DesignateHostsbytheirDNSName
输出的报告使用主机名而不是IP地址。
“Network”组给出了基于被扫描目标网络的更好的控制扫描的选项。
选项
描述
ReduceParallelConnectionsonCongestion
当Nessus发送大量的数据包并使网络通道达到最大时,使Nessus能够检测出来。
如果检测,Nessus将会控制扫描来适应和减小拥塞。
一旦拥塞变小,Nessus将会自动的尝试使用网络通道中可用的空间。
UseKernelCongestionDetection(Linuxonly)
能够使Nessus监视CPU和其他内部运行的程序来拥塞控制,相应规模变小。
Nessus将会尝试使用更多的可用资源。
这个特征仅仅适用于部署在Linux上的Nessus扫描器
“PortsScanners”组控制扫描中将会使用哪些端口扫描方法。
选项
描述
TCPScan
使用Nessus内置的TCP扫描器来识别目标开放的TCP端口。
这个扫描器是最优的同时有很多self-tuning特征。
在一些平台(例如:
Windows和MACOSX),如果使用TCP扫描器引起严重的性能事件,Nessus将会启用SYN扫描器。
UDPScan
使用Nessus内置的DUP扫描器来识别目标开放的TCP端口。
UDP是“无连接”的协议,意味着通信不使用握手对话。
基于UDP的通信通常是不可靠
的,由于UDP服务的特征和screeningdevices,它们常常不能被远程发现。
SYNScan
使用Nessus内置的SYN扫描器来识别目标开放的TCP端口。
SYN扫描器是一个流行的端口扫描方法,通常被认为比TCP扫描更为intrusive(打扰),扫描器向端口发送一个SYN数据包,等待SYN-ACK回复,通过是否回复决定端口的状态。
SNMPScan
使Nessus用于扫描目标的SNMP服务,在一个扫描中,Nessus将会猜测相关的SNMP设置。
如果这个设置在“Preferences”下通过用户提供,将允许Nessus更好的检查远程主机,提供更细致的审计结果。
例如,很多思科路由器通过检查返回的SNMP字符串的版本来确认漏洞。
这个信息对于那些审计更有必要。
NetstatSSHScan
这个选项使用本地主机的netstat来检查开放的端口。
它依赖于netstat命令通过SSH连接到目标。
这个扫描为基于Unix的系统做准备,并需要认证证书。
NetstatWMIScan
这个选项使用本地主机的netstat来检查开放的端口。
它依赖于netstat命令通过WMI连接到目标。
这个扫描为基于Windows的系统做准备,并需要认证证书。
一个基于WMI的扫描使用netstat来确认开放的端口,所以忽略了所有特定端口范围。
PingHost
这个选项使远程主机在多个端口ping来确认他们是否活动。
“PortsScanOptions”组指引扫描器确定一个特定端口范围。
以下几个值被用于“PortScanRange”选项。
选项
描述
“Default”
使用“Default”关键字,Nessus大约扫描4790个常规端口。
“all”
使用“all”关键字,Nessus扫描65535个端口。
CustomList
可以通过选择使用逗号来界定端口列表或者端口范围来定制端口范围。
例如,“21,25,80,110”或“1-1024,8080,9000-9200”都是允许的。
“1-65535”将会扫描所有端口。
指定的端口扫描范围将被用于TCP和UDP扫描。
“Performance”组给出两个选项来控制将会使用多少个扫描。
当配置的一个扫描对扫描时间和网络活动有重要影响,这些选项将会非常有用。
选项
描述
MaxChecksPerHost
设置限制Nessus扫描器一次攻击单个主机检查的最大个数。
MaxChecksPerScan
设置限制Nessus扫描器同时扫描的最大主机个数。
NetworkReceiveTimeout(seconds)
默认设置为5。
这个时间是Nessus将会等待主机响应的时间直到使用其他指定的插件。
如果在低连通下扫描,最好把它设置为更大值。
MaxSimultaneousTCPSessionsPerHost
设置限制对单一主机建立的TCP会话的最大个数。
MaxSimultaneousTCPSessionsPerScan
设置限制对整个扫描建立的TCP会话的最大个数,而不管被扫描的主机数。
Credentials
下面的证书选项卡允许你在扫描中配置Nessus扫描器使用认证的证书。
通过配置证书,保证Nessus执行更多种类的检查,从而确保扫描结果的准确性。
“Windowscredentials”
“Windowscredentials”下拉菜单为Nessus设置提供的信息,如SMB账户名字、密码、域名。
ServerMessageBlock(SMB)是文件共享协议,允许计算机通过网络透明的共享信息。
给Nessus提供这方面的信息,保证它从一个远程Windows主机找到本地信息。
例如,使用证书使Nessus确定重要的安全补丁是否已经应用。
修改其他SMB参数的默认设置是没有必要的。
如果维护的SMB账户是权限受限的管理员创建的,Nessus可以轻松可靠的扫描多重域。
更详细的配置介绍在:
Tenable公司建议网络管理员考虑创建一个特有的域账号以便于测试。
如果提供一个域账户,Nessus为WindowsNT,2000,Server2003,XP,Vista,Windows7,Windows2008采取一系列的安全检查将会更准确。
如果没有提供域账户,在大多数情况下,Nessus不尝试使用几种检查。
WindowsRemoteRegistry服务允许远程计算机使用证书访问被审计的注册表。
如果没有开启这个服务,阅读注册表的关键字和值是不可能的。
请参阅题目为“DynamicRemoteRegistryAuditing-Nowyouseeit,nowyoudon’t!
”的博客以获取更多信息。
“SSHsettings”
用户可以从下拉菜单中选择“SSHsettings”,输入证书来扫描Unix系统。
这些证书用来获取远程Unix系统的本地信息来审查补丁和合规性。
输入账户的SSH用户名将在目标Unix系统上执行检查,同时需要SSH密码或者SSH公钥和私钥对。
如果需要,还有一个键入SSH密钥的密码。
Nessus4支持blowfish-cbc,aes-cbc,aes-ctr密码算法。
最有效的证书扫描是有“root”权限的证书。
由于许多网站不容许以root远程登录,Nessus的用户可以用一个独立的密码调用账户的“su”或“sudo”,这个账户有“su”或“sudo”权限。
Nessus可以利用基于关键字的SSH验证到一个远程服务器。
如果一个SSH的known_hosts文件可以作为扫描的策略的一部分提供,Nessus的只尝试用这个文件登陆主机。
这可以确保相同的用户名和密码被用来审计你所知道的SSH服务器,而不是用来尝试登陆不在你控制下的系统。
最后,“PreferredSSHport”可以设置为Nessus连接到SSH,如果它在一个除了22以为的端口运行。
“Kerberosconfiguration”
“Kerberosconfiguration”允许你从远程主机上指定使用Kerberos密钥的证书。
“Cleartextprotocolsettings”
如果执行证书检查的安全方法不可用,用户可以配置下拉菜单中的“Cleartextprotocolsettings”强制Nessus尝试在不安全的协议上执行检查。
Cleartext协议支持telnet,rsh,rexec。
默认情况下,与策略相关的所有密码都是加密的。
如果策略保存到.nesses文件,然后把这个文件拷贝到一个不同的Nessus安装中,由于第二个Nessus扫描器不能解密,策略中的所有密码都不能使用。
为了解决这个问题,提供“Savecredentialsascleartextinpolicy”选项。
选择后,如果一个策略保存到.nessus文件,所有的密码将以明文的形式保存到文件。
这个策略可能被拷贝到第二个Nessus安装中,然后使用“Savecredentials”选项从新保存,所以再次加密他们。
如果你不希望策略以任何方式存储证书,选择“Donotsavecredentials”选项。
不推荐以任何形式使用明文证书。
如果证书被远程发送,通过Nessus扫描或者e-mailing策略到另外一个管理员,证书能被访问网络中的任何人截获。
只要有可能,使用加密证书机制。
Plugins
PluginSelection选项卡使用户能够通过插架族或者个人检查选择特定的安全检查。
点击插件族前面的黄色圆圈启用或者禁用整个族。
选择一个族会在右侧窗口中列出插件列表。
为建立一个特定的扫描策略,可以启用或者禁用单个插件。
一旦做出调整,族和插件的总数将会显示在底部。
如果一个插件族前面的圆圈半黄半灰,就意味着一些插件被禁用。
选择一个特定的插件将会显示插件的输出,同时可以在报告中查看。
该大纲和说明将提供更详细的正在检测的漏洞。
如果存在,滚动“PluginDescription”面板可以看到解决信息,更多的参考以及CVSSv2提供的基本风险概率。
在插件族选项卡的顶端,你可以通过name或者ID搜索一个特定的插件。
在“Filter”框的后面,输入一些文本查找并点击回车键:
当创建并保存一个策略,它记录所有被初始选择的插件。
通过插件源更新,接收到新的插件,如果他们所在的族被启用,更新的插件会被自动启用。
如果族被禁用或者部分启用,族内新的插件将会被自动禁用。
“DenialofService”族包括会在一个公司网络引起outages的一些插件,如果“SafeChecks”没有禁用,但包括一些不会引起任何危害的有用检查。
“DenialofService”族可以和“SafeChecks”一块使用,确保任何潜在有危险的插件没有运行。
但建议不在一个production网络中使用“DenialofService”。
在显示插件窗口的下端,你将会发现两个帮助你选择插件的选项。
选项
描述
Enableall
检查并启用所有插件和它们的族。
在创建一个一些族或者插件被禁用的策略后,这是一个简单的重新启用所有插件的方法。
注意到一些插件可能需要更多的配置选项。
Disableall
不检查不启用所有的插件和他们的族。
运行一个没有启用任何插件的扫描不会有任何结果。
Preference
“Preferences”选项卡包括在扫描设置之上的精确控制方法。
从下拉菜单中选择项目将会显示更多的配置条目。
注意到这是一个动态的取决于插件源的参数配置列表,Nessus扫描器可以访问审计策略和额外功能。
一个有professionalFeed的扫描器比一个有HomeFeed的扫描器会有更高级的配置选项。
这个列表可能会随插件的增多或修改而改变。
“Databasesettings”
选项
描述
Login
数据库的用户名
Password
提供的用户名的密码
DBType
支持Oracle,SQLServer,MySQL,DB2,Informix/DRDA,PostgreSQL
DatabaseSID
审计的数据库系统ID
Databaseporttouse
数据库监听的端口
Oracleauthtype
支持NORMAL,SYSOPER,SYSDBA
SQLServerauthtype
支持Windows或者SQL
“Donotscanfragiledevices”
“Donotscanfragiledevices”指示Nessus扫描器不扫描打印机或者Novell网络主机。
由于这些技术更容易满足拒绝服务的条件,Nessus可以忽略扫描他们。
建议在工作时间内扫描选择此项。
“Gobalvariablesettings”
选项
描述
Probeservicesoneveryport
尝试匹配每一个开放端口上运行的服务。
请注意,在一些罕见的情况下,这可能会破坏某些服务,造成不可预见的副作用。
Donotloginwithuseraccountsnotspecifiedinthepolicy
如果你的密码策略被设置为几次不合法的登陆就会锁定,此选项防止账号被锁定。
EnableCGIscanning
激活CGI检测。
禁用此选项将会大大加速本地网络的审计。
Networktype
如果你使用公共可路由IPs,此选项允许你指定私有非internet可路由IPs或他们中的最大者。
如果你正在使用RFC1918地址同时你所在网络有多个路由器,请选择“Mixed”。
Enableexperimentalscripts
在扫描中,原因插件被认为是实验性的。
如果要扫描一个正常网络,请禁用此选项。
Tenable没有在任何插件源中公布标有“experimental”的脚本。
Thoroughtests(slow)
照成各种插件“更慢的运行”。
例如,当检查SMB文件共享时,一个插件进行等级为3而不是1的分析。
在某些情况下,这可能会引起更多的网络流量和分析。
请注意,通过更彻底,更深入的扫描更有可能破坏网络,而可能获得更好的审计结果。
Reportverbosity
在报告中,较高的设置会或多或少的提拱有关插件活动的信息。
Reportparanoia
在某些情况下,Nessus不能远程确定是否存在缺陷。
如果reportparanoia被设置为“Paranoid”,缺陷每次都会报告,即使一个远程主机毋庸置疑受到影响。
相反,reportparanoia被设置为“Avoidfalsealarm”,将会导致Nessus不会报告任何缺陷,即便对远程主机不确定。
默认选项“Normal”的效果处于两者之间。
Debuglevel
设置此选项为“1”将会启用日志的调试信息来协助排查Nessus的扫描。
HTTPUser-Agent
在扫描中,指定能模拟哪些类型的web浏览器。
SSLcertificatetouse
允许Nessus使用一个clientsideSSL证书与远程主机通信。
SSLCAtotrust
指定Nessus信任的CA。
SSLkeytouse
指定使用一个本地SSL密钥与远程主机通信。
SSLpasswordforSSLkey
指定管理SSL密钥的密码。
“HTTPcookiesimport”
通过“HTTPcookiesimport”设置,Nessus可以从其他软件(例如,web浏览器,web代理)导入HTTPcookies。
一个cookies文件可以上传,因此当Nessus尝试访问一个web应用时,使用cookies。
cookie文件必须是Netscape格式。
“HTTPloginpage”
“HTTPloginpage”提供了控制自定义的基于web的应用可靠测试。
选项
描述
Loginpage
登陆应用程序页面的URL
Loginform
表单方法的“action”参数。
例如,的登陆表单为””
Loginformfields
指定认证参数(例如,login=%USER%&password=%PASS%)。
如果使用%USER%和%PASS%关键字,他们将会取代“Loginconfigurations“下拉菜单中的值。
Re-authenticatedelay(seconds)
认证尝试的时间延迟。
这可以有效的避免触发强制的锁定机制。
Checkauthenticationonpage
需要认证受保护web页面的URL,更好的帮助Nessus确定认证状态。
Follow30xredirections(#oflevels)
如果从一个web服务器上接收到30x重定向代码,将会使Nessus是否跟踪提供的链接。
Authenticatedregex
登陆页面用于查找的正则表达式。
简单的收到200个响应代码不足以确定会话状态。
Nessus尝试匹配形如“Authentaicationsuccessful”的字符串。
Inverttest(disconnectedifregexmatches)
登陆页面用于查找的正则表达式,如果找到,通知Nessus认证失败(例如,“Authenticationfailed!
”)
MatchregexonHTTPheaders
对于一个给定的正则表达式,Nessus搜索HTTP响应头而不是搜索响应的内容来确定认证状态。
Caseinsensitiveregex
默认情况下,正则表达式搜索大小写敏感,这个选项可以让Nessus忽略大小写。
“Loginconfigurations”
“Loginconfigurations”允许Nessus扫描器检测HTTP、NNTP、FTP、POP2、POP3、IMAP时使用证书。
通过提供证书,Nessus可能会有能力更准确的检测漏洞。
这里的HTTP证书仅仅用来Basic和Digest认证。
对于定制的web服务,请使用“HTTPloginpage”下拉菜单配置证书。
“NessusSYNscanner”和“NessusTCPscanner”
“NessusSYNscanner”和“NessusTCPscanner”选项允许你更好的调整本机的SYN扫描器来检测存在的防火墙。
选项
描述
Automatic(normal)
这个选项帮助识别出位于扫描器和目标之间的防火墙。
Disabled(softer)
禁用防火墙检测特征。
DonotdetectRSTratelimitation(soft)
禁用监视重置频率的能力,确定下游的网络设备是否有限制配置。
Ignoreclosedports(aggressive)
即使端口关闭,仍然尝试运行插件。
建议这个选项不要在正常网络中使用。
“NewsServer(NNTP)InformationDisclosure”
“NewsServer(NNTP)InformationDisclosure”可用于确定是否有消息服务器可以发送垃圾邮件。
Nessus尝试向NNTP(NetworkNewsTransportProtocol)发布新闻消息,并测试是否可能向上游新闻服务器发送消息。
选项
描述
Fromaddress
Nessus尝试向一个新闻服务器发送消息使用的地址。
这个消息将会在一段时间被自动删除。
Testgroupnameregex
新闻组将会接受一个特定地址的测试消息的名字。
这个名字可以用正则表达式标示,因此这个消息可以同时向多个新闻组发送。
例如,默认值
“f[a-z]\.test?
”将会向所有名字以任何字母开头(从“a”到“z”)以“.tests”结尾的新闻组广播一个邮件消息。
问号作为一个可选的通配符。
Maxcrosspost
接受发送测试的最大新闻服务器数目,不管名字匹配的个数。
例如,如果Maxcrosspost是“7”,测试消息只发向七个新闻服务器,即使有2000个新闻服务器匹配这个正则表达式。
Localdistribution
如果这个选项被选择,Nessus仅仅尝试向本地新闻服务器发送消息。
否则,尝试向上游转发消息。
Noarchive
如果这个选项被选择,Nessus将不存档向新闻服务器发送的测试消