常见的安全扫描漏洞的工具漏洞分类及处理(代码片段)

你头发掉啦 你头发掉啦     2023-04-13     380

关键词:

一、扫描网站漏洞是要用专业的扫描工具,下面就是介绍几种工具

  1. Nikto
    这是一个开源的Web服务器扫描程序,它可以对Web服务器的多种项目进行全面的测试。其扫描项目和插件经常更新并且可以自动更新。Nikto可以在尽可能短的周期内测试你的Web服务器,这在其日志文件中相当明显。不过,如果你想试验一下,它也可以支持 LibWhisker的反IDS方法。不过,并非每一次检查都可以找出一个安全问题,虽然多数情况下是这样的。有一些项目是仅提供信息类型的检查,这种检查可以查找一些并不存在安全漏洞的项目,不过Web管理员或安全工程师们并不知道。
  2. Paros proxy
    这是一个对Web应用程序的漏洞进行评估的代理程序,即一个基于Java的web代理程序,可以评估Web应用程序的漏洞。它支持动态地编辑/查看 HTTP/HTTPS,从而改变cookies和表单字段等项目。它包括一个Web通信记录程序,Web圈套程序,hash 计算器,还有一个可以测试常见的Web应用程序攻击的扫描器。
  3. WebScarab:
    它可以分析使用HTTP和HTTPS协议进行通信的应用程序,WebScarab可以用最简单地形式记录它观察的会话,并允许操作人员以各种方式观查会话。如果你需要观察一个基于HTTP(S)应用程序的运行状态,那么WebScarabi就可以满足你这种需要。不管是帮助开发人员调试其它方面的难题,还是允许安全专业人员识别漏洞,它都是一款不错的工具。
  4. WebInspect:
    这是一款强大的Web应用程序扫描程序。SPI Dynamics的这款应用程序安全评估工具有助于确认Web应用中已知的和未知的漏洞。它还可以检查一个Web服务器是否正确配置,并会尝试一些常见的 Web攻击,如参数注入、跨站脚本、目录遍历攻击等等。
  5. Whisker/libwhisker :
    Libwhisker是一个Perla模块,适合于HTTP测试。它可以针对许多已知的安全漏洞,测试HTTP服务器,特别是检测危险CGI的存在。 Whisker是一个使用libwhisker的扫描程序。
  6. Burpsuite:
    这是一个可以用于攻击Web应用程序的集成平台。Burp套件允许一个攻击者将人工的和自动的技术结合起来,以列举、分析、攻击Web应用程序,或利用这些程序的漏洞。各种各样的burp工具协同工作,共享信息,并允许将一种工具发现的漏洞形成另外一种工具的基础。
  7. Wikto:
    可以说这是一个Web服务器评估工具,它可以检查Web服务器中的漏洞,并提供与Nikto一样的很多功能,但增加了许多有趣的功能部分,如后端 miner和紧密的Google集成。它为MS.NET环境编写,但用户需要注册才能下载其二进制文件和源代码。
  8. Acunetix Web Vulnerability Scanner :
    这是一款商业级的Web漏洞扫描程序,它可以检查Web应用程序中的漏洞,如SQL注入、跨站脚本攻击、身份验证页上的弱口令长度等。它拥有一个操作方便的图形用户界面,并且能够创建专业级的Web站点安全审核报告。
  9. Watchfire AppScan:
    这也是一款商业类的Web漏洞扫描程序。AppScan在应用程序的整个开发周期都提供安全测试,从而测试简化了部件测试和开发早期的安全保证。它可以扫描许多常见的漏洞,如跨站脚本攻击、HTTP响应拆分漏洞、参数篡改、隐式字段处理、后门/调试选项、缓冲区溢出等等。
  10. N-Stealth:
    N-Stealth是一款商业级的Web服务器安全扫描程序。它比一些免费的Web扫描程序,如Whisker/libwhisker、 Nikto等的升级频率更高。还要注意,实际上所有通用的VA工具,如Nessus, ISS Internet Scanner, Retina, SAINT, Sara等都包含Web 扫描部件。N-Stealth主要为Windows平台提供扫描,但并不提供源代码。

二、漏洞类型及解决方法

1.1. Unix/Linux漏洞
升级相应产商的系统版本或查找对应漏洞的补丁文件

1.2. OpenSSH漏洞
OpenSSH 输入验证错误漏洞(CVE-2019-16905)
OpenSSH 命令注入漏洞(CVE-2020-15778)
OpenSSH 安全漏洞(CVE-2021-28041)
修复建议:
一般也是升级相应的OpenSSH版本

1.3Nginx漏洞
1.3.1导致拒绝服务漏洞
HTTP/2是超文本传输协议的第二版,主要用于保证客户机与服务器之间的通信。HTTP/2中存在资源管理错误漏洞。攻击者可利用该漏洞导致拒绝服务
修复建议:
目前厂商已发布升级补丁以修复漏洞,详情请关注厂商主页: https://http2.github.io/
1.3.2SSL证书漏洞
SSL/TLS协议信息泄露漏洞(CVE-2016-2183)
TLS是安全传输层协议,用于在两个通信应用程序之间提供保密性和数据完整性。
TLS, SSH, IPSec协商及其他产品中使用的DES及Triple DES密码存在大约四十亿块的生日界,这可使远程攻击者通过Sweet32攻击,获取纯文本数据
修复建议:
对于nginx、apache、lighttpd等服务器禁止使用DES加密算法,主要是修改conf文件。

SSL/TLS 受诫礼(BAR-MITZVAH)攻击漏洞(CVE-2015-2808)
SSL/TLS协议是一个被广泛使用的加密协议,Bar Mitzvah攻击实际上是利用了"不变性漏洞",这是RC4算法中的一个缺陷,它能够在某些情况下泄露SSL/TLS加密流量中的密文,从而将账户用户名密码,信用卡数据和其他敏感信息泄露给黑客
修复方法:
禁止使用RC4算法
1、 Windows禁用RC4算法
(1)首先更新微软发布的补丁
https://support.microsoft.com/en-us/topic/microsoft-security-advisory-update-for-disabling-rc4-479fd6f0-c7b5-0671-975b-c45c3f2c0540
(2)修改注册表
使用regedit命令打开注册表,添加以下内容进行限制RC4
[HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Control \\ SecurityProviders \\ SCHANNEL \\ Ciphers \\ RC4 128/128]
“Enabled”= dword:00000000
[HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Control \\ SecurityProviders \\ SCHANNEL \\ Ciphers \\ RC4 40/128]
“Enabled”= dword:00000000
[HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Control \\ SecurityProviders \\ SCHANNEL \\ Ciphers \\ RC4 56/128]
“Enabled”= dword:00000000
[HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Control \\ SecurityProviders \\ SCHANNEL \\ Ciphers \\ RC4 64/128]
“Enabled”= dword:00000000

2、 禁止apache服务器使用RC4加密算法
vi /etc/httpd/conf.d/ssl.conf
修改为如下配置
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!RC4
重启apache服务

3、 关于nginx加密算法
1.0.5及以后版本,默认SSL密码算法是HIGH:!aNULL:!MD5
0.7.65、0.8.20及以后版本,默认SSL密码算法是HIGH:!ADH:!MD5
0.8.19版本,默认SSL密码算法是 ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM
0.7.64、0.8.18及以前版本,默认SSL密码算法是ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
低版本的nginx或没注释的可以直接修改域名下ssl相关配置为
ssl_ciphers “ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES
256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GC
M-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4”;
ssl_prefer_server_ciphers on;
需要nginx重新加载服务

4、 关于lighttpd加密算法

在配置文件lighttpd.conf中禁用RC4算法,例如:
ssl.cipher-list = “EECDH+AESGCM:EDH+AESGCM:ECDHE-RSA-AES128-GCM-SHA256:AES256+EECDH:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4”
重启lighttpd 服务。

5、 tomcat参考:
https://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html
https://tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html

SSL/TLS RC4 信息泄露漏洞(CVE-2013-2566)
安全套接层(Secure Sockets Layer,SSL),一种安全协议,是网景公司(Netscape)在推出Web浏览器首版的同时提出的,目的是为网络通信提供安全及数据完整性。SSL在传输层对网络连接进行加密。传输层安全(Transport Layer Security),IETF对SSL协议标准化(RFC 2246)后的产物,与SSL 3.0差异很小。
SSL/TLS内使用的RC4算法存在单字节偏差安全漏洞,可允许远程攻击者通过分析统计使用的大量相同的明文会话,利用此漏洞恢复纯文本信息。
修复建议:
禁用RC4算法,参考上一漏洞处理方法

1.3.3 弱密码套件漏洞
解决方法:修改Nginx配置
ssl_protocols TLSv1.1 TLSv1.2;

ssl_ciphers ECDHE-RSA-AES128-GCSHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE;
ssl_prefer_server_ciphers on;


1.3.4 TLS协议漏洞
.解决方法:
把协议版本升高,意味不兼容老的套件协议,根据扫描出来的说明修改TLSv版本

1.4 API参数漏洞
1、在请求地址后拼接参数

2、请求方式修改

.解决方法:
API接口参数签名(MD5摘要算法),请求所有的参数进行加密生成小于32位的摘要。前端程序在发送请求前首先对请求参数进行MD5加密形成摘要(约定规则),后端收到请求后对请求参数进行同前端相同的操作(MD5摘要),之后进行前端形成的加密串与后端形成的加密串进行比对,如果相等则是合法请求,反之则非法请求。

1.5 应用漏洞
1.5.1.盲LDAP注入(Blind LDAP Injection)
表现形式是将参数篡改成sql或其它的值,导致在执行真实业务sql被注入了存在风险的sql
修复方式:
建议的修复方式是在sql拼接是尽量是采用占位符的形式设置sql的参数,避免风险sql注入

1.5.2API 成批分配
表现形式:篡改了接口参数的key或值,并且接口成功响应了
修复方式:
在参数传递时加上一个加密的摘要信息,后端通过统一的方法对摘要信息进行验证

1.5.3.SQL注入 (Blind SQL Injection)
Veb程序中对于用户提交的参数未做过滤直接拼接到sL语句中执行,导致参数中的特殊字符破坏了SL语句原有逻辑,攻击者可以利用该漏洞执行任意sQL语句,如查询数据、下载数据、写入webshell、执行系统命令以及绕过登录限制等。
修复方式:
在sql查询的过程中不能采用sql字符拼接的方式,而应该采用占位符的方式进行sql查询等操作

1.5.4反射式跨站点脚本(Reflected Cross Site Scripting)
表现形式:
在接口传参中注入一段html或js脚本

修复方式:
此种问题在修复的时候无法大规模的采用参数校验的方式进行修复,我们选择在过滤中集中处理,利用工具类对html标签或js的标签进行转义(HtmlUtils.htmlEscape(data)),具体实现可参考平台1.0中的com.szjz.common.utils.filter.NonlicetFilter。

1.5.5.链接注入(促进跨站点请求伪造)
表现形式:
篡改接口传参的值,进行链接注入
修复方式:
此种问题在修复的时候无法大规模的采用参数校验的方式进行修复,我们选择在过滤中集中处理,利用工具类对html标签或js的标签进行转义(HtmlUtils.htmlEscape(data))

web安全漏洞扫描与处理(上)——安全漏洞扫描工具appscan的安装使用

...进行了说明,是一个简易的操作描述很多公司对软件会有安全的要求,一般测试公司会使用安全漏洞扫描工具对软件进行漏扫,然后给出安全报告,然后软件开发人员会根据提供的安全报告进行漏洞的处理。我们接触到的测评公... 查看详情

wpscan扫描wordpress漏洞的工具使用教程(代码片段)

...can是一个扫描Wordpress漏洞的工具,普通在Kali/Parrot/Cyborg等常见浸透测试Linux系统中自带,这里念书一下常见的command常见command使用之前,先到官方Github下载data.zip放到软件根目录/usr/share/wpscan/下并解压wpscan–update//更新漏洞库(已... 查看详情

安全扫描处理问题心得(代码片段)

安全扫描处理问题心得在安全扫描中处理了一些问题,现在来总结一下1.mysql漏洞(CVE-2022-21595CVE-2022-21617CVE-2022-21608CVE-2022-2097CVE-2022-21592CVE-2022-21589)解决过程我们公司安扫文档中的解决办法如下:目前厂商已发布... 查看详情

常见安全漏洞及修复方案(代码片段)

1.1跨站脚本(XSS)漏洞漏洞描述跨站脚本攻击(CrossSiteScripting,XSS)发生在客户端,可被用于进行窃取隐私、钓鱼欺骗、偷取密码、传播恶意代码等攻击行为。恶意的攻击者将对客户端有危害的代码放到服务器上作为一个... 查看详情

nginx漏洞扫描及修复方案(代码片段)

...漏洞扫描结果漏洞扫描OSS2.0物联网创新业务系统进行web类安全扫描发现1类安全问题,本次发现“缓慢的HTTP拒绝服务攻击”漏洞问题, 查看详情

web漏洞扫描工具awvs使用(代码片段)

...知名的网络漏洞扫描工具,它通过网络爬虫测试你的网站安全,检测流行安全漏洞,如交叉站点脚本,sql注入等。在被黑客攻击前扫描购物车,表格、安全区域和其他Web应用程序。75%的互联网攻击目标是基于Web的应用程序。因为... 查看详情

简单实用的漏洞扫描工具!(如何给单位做一个渗透测试/网络安全测试)?(๑•̀ㅂ•́)و✧演示篇(代码片段)

...,而很多单位使用的系统都是缺少维护的老系统,存在很多安全隐患。我介绍的这两款工具对非专业人士也非常友好,因为他们都具有下面几个特征。完善的可视化界面全面的本地化(全中文)有好的报告生成系统简单的操作较为简单... 查看详情

复试-网络安全问答

...络侦察的常用手段和方法2.ping、nslookup、tracert(traceroute)等常见命令的作用3.针对网络侦察常用手段会描述网络侦察的防御措施 三、网络扫描1.网络扫描的四个目的2.主机发现的技术分类及具体做法3.端口扫描的技术分类及具体做... 查看详情

安全测试工具metasploit与漏洞扫描(上)

...须要了解当前计算机系统及其安全问题的最新发展动态。常见的漏洞包括缓冲区溢出漏洞、跨站脚本漏洞(XSS)、SQL注入漏洞、数据库漏洞以及WEB应用漏洞等。  常见的漏洞发掘方法分为以下几种。  ·  黑盒攻击(Fuzzing&... 查看详情

运维安全-注入分类(代码片段)

如何去发现SQL注入?1.通过Web漏洞扫描工具:APPScan、AWVS、2.在参数后面添加特殊字符,比如单引号,各种各样的字符,通过提交字符,是否有报错的行为,来判断是否有注入漏洞。3.通过工具大量的模糊测试。数字型注入:id是... 查看详情

nginx漏洞扫描及修复方案(代码片段)

...漏洞扫描结果漏洞扫描OSS2.0物联网创新业务系统进行web类安全扫描发现1类安全问题,本次发现“缓慢的HTTP拒绝服务攻击”漏洞问题,综合评定网络安全等级处于中风险状态。缓慢的HTTP拒绝服务攻击http://172.25.5.13:10056漏... 查看详情

互联网企业安全高级指南读书笔记之漏洞扫描

...用nmap去识别端口的协议及应用程序版本信息弱口令扫描常见支持弱口令扫描功能的扫描器Nessusx-scanh-scanHydra系统及应用服务漏洞扫描常见的系统及应用服务漏洞扫描器有Nessus以及开源的OpenVAS,服务器数量巨大时,需要部... 查看详情

web安全之sql注入漏洞(代码片段)

...、被删除、甚至整个服务器权限沦陷)。Sql查询过程常见分类根据注入点类型分类:1.数字型注入2.字符 查看详情

web系统常见安全漏洞介绍及解决方案-sql注入(代码片段)

先看一下目录一、常见漏洞类型二、SQL注入1、SQL注入危险性、可能原因2、场景重现3、sql盲注4、检测⽅法5、防护⽅案三、使用ORM框架一、常见漏洞类型关于web安全测试,目前主要有以下几种攻击方法:XSS跨站脚本攻击CSR... 查看详情

漏洞扫描工具都有哪些

...具也有扫描漏洞的功能,比如X-scan如果你要做的是网站的安全漏洞检测,网上都有那些漏洞的检测平台(比如360)参考技术A第一款:TrivyTrivy是一个开源漏洞扫描程序,能够检测开源软件中的CVE。这款工具针对风险提供了及时的... 查看详情

linux相关安全漏洞处理(代码片段)

...本号或者banner信息通过防火墙封禁不相关的外部访问二、常见漏洞处理1、ftp服务1.1、漏洞信息漏洞名称FTP服务器版本信息可被获取(CVE-1999-0614)解决办法建议您采取以下措施以降低威胁:修改源代码或者配置文件改变缺省banner... 查看详情

常见漏洞总结(代码片段)

...)爆破数据库其他类型注入(以pikachu为例)常见绕过方式危害解决方式XSS(跨站脚本攻击)原理分类跨站脚本攻击出现 查看详情

几种安全工具库的简介及部分相关使用教程(代码片段)

...络封包分析软件之一。 MetasploitMetasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,提供真正的安全风险情报。这些功能包括智能... 查看详情