-
2022-03-01 01:00:46
漏洞扫描
漏洞扫描是指基于漏洞数据库,通过扫描等手段对指定的远程或者本地计算机系统的安全脆弱性进行检测,发现可利用漏洞的一种安全检测(渗透攻击)行为。
Web漏洞扫描器
针对于Web应用程序所开发的漏洞扫描器,例如SQL注入、XSS跨站脚本攻击等常见漏洞,进行主动式扫描探测是否存在漏洞。Web漏洞扫描器之间也有区别,例如对于XSS漏洞测试的扫描器,商业的漏洞扫描器和非商业性的漏洞扫描器。
通过扫描器能够快速的发现漏洞,来提升我们的效率,以及漏洞覆盖面。 Web扫描器也是在为我们做信息收集、为接下来的渗透测试做准备。
AWVS
Acunetix Web Vulnerability Scanner(简称AWVS)是一款知名的网络漏洞扫描工具,它通过网络爬虫测试你的网站安全,检测流行安全漏洞。
AWVS是一款Web漏洞扫描工具,通过网络爬虫测试网站安全,检测流行的Web应用攻击,如跨站脚本、sql 注入等。据统计,75% 的互联网攻击目标是基于Web的应用程序。
AWVS帮助我们快速发现漏洞并进行输出报告,来提升工作效率。
一、安装Linux AWVS
1、移动文件待kali
2、分配权限
安装文件:chmod 777 acunetix_trial.sh
激活脚本:chmod 777 patch_awvs
3、安装配置
Accept the license terms?[yes][no]:是否接受条款
Hostname:设置主机名
Email:登陆用户名
Password:密码
4、激活配置
1)把文件patch_awvs复制到/home/acunetix_trial/v_190325161/scanner/下cp patch_awvs/home/acunetix_trial/v_190325161/scanner/
2)激活:chmod 777 patch_awvs ./patch_awvs
安装教程:https://zhuanlan.zhihu.com/p/384677028
二、AWVS 使用教程
1、使用AWVS
2、添加扫描目标
3、漏洞扫描详情
4、漏洞报告
5、修改密码
链接地址:https://blog.csdn.net/ZripenYe/article/details/119334143
三、资料
Linux AWVS 官方版本:
https://www.acunetix.com/thank-you-for-downloading-wvs-onsite-linux/
52破解:
https://www.52pojie.cn/thread-922535-1-1.html
破解补丁:
https://mega.nz/#!mmRjiYZR!ev_oJ2MEbqchFoB7Tdjpr6UGW6R0d-vsj-g5nRkwrUg
Windows安装AWVS:
https://www.cnblogs.com/chun-xiaolin001/p/10060830.html
总结:
对于AWVS漏洞扫描工具共5点需要注意:
1、Web漏洞扫描工具
2、安装Linux AWVS
3、使用AWVS进行扫描
4、阅读AWVS扫描报告
5、AWVS常见问题
更多相关内容 -
Python脚本实现Web漏洞扫描工具
2020-09-21 12:28:04是去年毕设做的一个Web漏洞扫描小工具,主要针对简单的SQL注入漏洞、SQL盲注和XSS漏洞。下文给大家介绍了使用说明和源代码,一起看看吧 -
基于Python的Web漏洞扫描器.pdf
2021-06-28 16:30:09基于Python的Web漏洞扫描器.pdf -
web漏洞挖掘快速入门.pdf
2020-03-21 00:46:51web漏洞挖掘快速入门,涵盖完整的漏洞挖掘流程,从前期的信息搜集一直到后渗透测试,是新手入门挖洞的理想指南。 -
WEB漏洞检测项.xlsx
2020-01-16 12:47:49在渗透测试工作中,整理出来web渗透检测项,分别从注入漏洞、XSS、安全配置错误、登录认证缺陷、敏感信息泄露、权限控制不严格、跨站请求伪造、存在漏洞的组件、其他类型漏洞、其他漏洞、已公开高位漏洞等部分,对... -
web漏洞合集描述和修复建议.xlsx
2020-03-02 19:26:18企业对产品进行渗透测试时书面报告中的web漏洞描述,包含漏洞分类、漏洞名称、危险等级、漏洞描述、修复建议。 -
基于Python的自动代理Web漏洞扫描器的设计与实现.pdf
2021-06-28 17:33:05基于Python的自动代理Web漏洞扫描器的设计与实现.pdf -
常见WEB漏洞原理分析及防护
2018-08-22 18:31:03常见WEB漏洞原理分析及防护,如何防御web漏洞攻防技术 -
web漏洞挖掘经验.pdf
2021-12-12 11:34:50web漏洞挖掘经验.pdf -
web漏洞挖掘思维导图
2020-12-21 15:57:25适合想学习web知识的人 -
项目三 Web漏洞扫描检测.docx
2021-07-23 14:44:37项目三 Web漏洞扫描检测.docx -
超级Web漏洞扫描器.zip
2020-05-07 21:32:17WEB漏洞通常是指网站程序上的漏洞,可能是由于代码编写者在编写代码时考虑不周全等原因而造成的漏洞,常见的WEB漏洞有Sql注入、Xss漏洞、上传漏洞等。可以利用该扫描器来检查自己的网站是否有安全漏洞。 -
web漏洞知识库.pdf
2021-09-27 12:31:18web漏洞知识库.pdf -
Safe3 Web漏洞扫描系统企业版v10.1中文破解版
2018-07-15 22:50:34已经测试过了,的确是已经注册过的,可以放心下载,正在学怎么用,分享给大家一起学习。 -
识别常见Web漏洞有效防止入侵[3]
2021-03-23 16:22:03漏洞识别常见Web漏洞有效防止入侵[3]软件测试直接访问浏览直接访问浏览指直接访问应该需要验证的网页。没有正确配置的Web应用程序可以让恶意的用户直接访问包括有敏感信息的URL或者使提供收费网页的公司丧失收入。... -
安恒明鉴web漏洞扫描器
2022-01-20 18:55:22安恒明鉴web漏洞扫描器 -
Web漏洞扫描器
2021-06-19 21:37:43Web漏洞扫描器【实验目的】【实验环境】【实验预备知识点】【实验内容】【实验步骤】【实验思考题】 【实验目的】 1、掌握漏洞扫描的基本概念; 2、掌握漏洞扫描的工作原理; 3、掌握Web扫描器的使用。 【实验环境】...【实验目的】
1、掌握漏洞扫描的基本概念;
2、掌握漏洞扫描的工作原理;
3、掌握Web扫描器的使用。【实验环境】
图 1拓扑图备注:开启windows和linux靶机,连接linux靶机使用漏洞扫描器Nikto2,对windows靶机站点进行漏洞扫描,将其结果保存下进行分析,进而发现漏洞。(nikto2在linux靶机->root->gongfang->web漏洞扫描器)
【实验预备知识点】
Web漏洞扫描方法主要有两类:信息获取和模拟攻击。信息获取就是通过与目标主机TCP/IP的Http服务端口发送连接请求,记录目标主机的应答。通过目标主机应答信息中状态码和返回数据与Http协议相关状态码和预定义返回信息做匹配,如果匹配条件则视为漏洞存在。模拟攻击就是通过使用模拟黑客攻击的方法,对目标主机Web系统进行攻击性的安全漏洞扫描,比如认证与授权攻击、支持文件攻击、包含文件攻击、SQL注入攻击和利用编码技术攻击等对目标系统可能存在的已知漏洞进行逐项进行检查,从而发现系统的漏洞。远程字典攻击也是漏洞扫描中模拟攻击的一种,其原理与其他攻击相差较大,若攻击成功,可以直接得到登录目标主机系统的用户名和口令。
目前WEB服务器存在的主要漏洞有:
1.物理路径泄露:物理路径泄露一般是由于WEB服务器处理用户请求出错导致的,如通过提交一个超长的请求,或者是某个精心构造的特殊请求,或是请求一个WEB 服务器上不存在的文件。这些请求都有一个共同特点,那就是被请求的文件肯定属于CGI脚本,而不是静态HTML 页面。还有一种情况,就是WEB服务器的某些显示环境变量的程序错误的输出了WEB服务器的物理路径,这应该算是设计上的问题。2.CGI源代码泄露:CGI源代码泄露的原因比较多,例如大小写,编码解码,附加特殊字符或精心构造的特殊请求等都可能导致CGI源代码泄露。
3.目录遍历:目录遍历对于WEB服务器来说并不多见,通过对任意目录附加“…/”,或者是在有特殊意义的目录附加“…/”,或者是附加“…/”的一些变形,如“…”或“…//”甚至其编码,都可能导致目录遍历。前一种情况并不多见,但是后面的几种情况就常见得多,如IIS 二次解码漏洞和UNICODE 解码漏洞都可以看作是变形后的编码。
4.执行任意命令:执行任意命令即执行任意操作系统命令,主要包括两种情况。一是通过遍历目录,如前面提到的二次解码和UNICODE 解码漏洞,来执行系统命令。另外一种就是WEB服务器把用户提交的请求作为SSI 指令解析,因此导致执行任意命令。
5.缓冲区溢出:缓冲区溢出漏洞是WEB服务器没有对用户提交的超长请求进行合适的处理,这种请求可能包括超长URL,超长HTTP Header域,或者是其它超长的数据。这种漏洞可能导致执行任意命令或者是拒绝服务,这一般取决于构造的数据。
6.拒绝服务:拒绝服务产生的原因多种多样,主要包括超长URL,特殊目录,超长HTTP Header域,畸形HTTP Header域或者是DOS 设备文件等。由于WEB 服务器在处理这些特殊请求时不知所措或者是处理方式不当,因此出错终止或挂起。
7.条件竞争:这里的条件竞争主要针对一些管理服务器而言,这类服务器一般是以system或root身份运行的。当它们需要使用一些临时文件,而在对这些文件进行写操作之前,却没有对文件的属性进行检查,一般可能导致重要系统文件被重写,甚至获得系统控制权。
8.跨站脚本执行漏洞:由于网页可以包含由服务器生成的、并且由客户机浏览器解释的文本和HTML 标记。如果不可信的内容被引入到动态页面中,则无论是网站还是客户机都没有足够的信息识别这种情况并采取保护措施。攻击者如果知道某一网站上的应用程序接收跨站点脚本的提交,他就可以在网上提交可以完成攻击的脚本,如JavaScript、VBScript、ActiveX、HTML 或 Flash 等内容,普通用户一旦点击了网页上这些攻击者提交的脚本,那么就会在用户客户机上执行,完成从截获账户、更改用户设置、窃取和篡改cookie 到虚假广告在内的种种攻击行为。
9.SQL注入:对于和后台数据库产生交互的网页,如果没有对用户输入数据的合法性进行全面的判断,就会使应用程序存在安全隐患。用户可以在可以提交正常数据的URL 或者表单输入框中提交一段精心构造的数据库查询代码,使后台应用执行攻击者的SQL 代码,攻击者根据程序返回的结果,获得某些他想得知的敏感数据,如管理员密码,保密商业资料等。
Web漏洞扫描程序可以在帮助人们造就安全的Web站点上助一臂之力,也就是说在黑客入侵之前,先检测一下系统中的漏洞,巩固web服务器的安全。如下是典型的十个Web漏洞扫描程序。- Nikto。这是一个开源的Web服务器扫描程序,它可以对Web服务器的多种项目(包括3500个潜在的危险文件/CGI,以及超过900个服务器版本,还有250多个服务器上的版本特定问题)执行彻底的测试。其扫描项目和插件经常更新并且可以自动更新(如果需要的话)。Nikto可以在尽可能短的周期内测试Web服务器,这在其日志文件中相当明显。不过,并非每一次检查都可以找出一个安全问题,虽然多数情况下是这样的。有一些项目是仅提供信息(“info only” )类型的检查,这种检查可以查找一些并不存在安全漏洞的项目,不过Web管理员或安全工程师们并不知道。这些项目通常都可以恰当地标记出来,为人们省去不少麻烦。
- Paros proxy。这是一个对Web应用程序的漏洞执行评估的代理程序,即一个基于Java的web代理程序,可以评估Web应用程序的漏洞。它支持动态地编辑/查看HTTP/HTTPS,从而改动 cookies和表单字段等项目。它包括一个Web通信记录程序,Web圈套程序(spider),hash 计算器,还有一个可以测试常见的Web应用程序攻击(如SQL注入式攻击和跨站脚本攻击)的扫描器。
- WebScarab。它可以分析运用HTTP和HTTPS协议执行通信的应用程序,WebScarab可以用最基本地形式记录它观察的会话,并允许操作人员以各种方式观察会话。如果要观察一个基于HTTP(S)应用程序的运行状态,那么WebScarab就可以满足这种需要。不管是帮助开发人员调试其它方面的难题,还是允许安全专业人员识别漏洞,它都是一款不错的工具。
- WebInspect。这是一款强大的Web应用程序扫描程序。SPI Dynamics的这款应用程序安全评估工具有助于确认Web应用中已知的和未知的漏洞。它还可以检查一个Web服务器能不能正确配置,并会尝试一些常见的Web攻击,如参数注入、跨站脚本、目录遍历攻击(directory traversal)等等。
- Whisker/libwhisker。Libwhisker是一个Perla模块,适合于HTTP测试。它可以针对许多已知的安全漏洞,测试HTTP服务器,特别是检测危险CGI的存在。Whisker是一个运用 libwhisker的扫描程序。
- Burpsuite。这是一个可以用于攻击Web应用程序的集成平台。Burp套件允许一个攻击者将人工的和自动的技能结合起来,以列举、分析、攻击Web应用程序,或运用这些程序的漏洞。各种各样的burp工具协同工作,共享信息,并允许将一种工具发觉的漏洞形成另外一种工具的基础。
- Wikto。可以说这是一个Web服务器评估工具,它可以检查Web服务器中的漏洞,并提供与Nikto一样的很多功能,但增加了许多有趣的功能部分,如后端miner和紧密的Google集成。它为MS.NET环境编写,但用户须要注册才能下载其二进制文件和源代码。
- Acunetix Web Vulnerability Scanner。这是一款商业级的Web漏洞扫描程序,它可以检查Web应用程序中的漏洞,如SQL注入、跨站脚本攻击、身份验证页上的弱口令长度等。它拥有一个操作方便的图形用户界面,并且能够建立专业级的Web站点安全审核报告。
- Watchfire AppScan。这也是一款商业类的Web漏洞扫描程序。AppScan在应用程序的整个开发周期都提供安全测试,从而测试简化了部件测试和开发早期的安全保证。它可以扫描许多常见的漏洞,如跨站脚本攻击、HTTP响应拆分漏洞、参数篡改、隐式字段处理、后门/调试选项、缓冲区溢出等等。
- N-Stealth。N-Stealth是一款商业级的Web服务器安全扫描程序。它比一些免费的Web扫描程序,如Whisker/libwhisker、Nikto等的升级频率更高,据称其含有“30000个漏洞和漏洞程序”以及“每天增加大量的漏洞检查”。此外,实际上所有通用的VA工具,如Nessus, ISS Internet Scanner, Retina, SAINT, Sara等都包含Web 扫描部件。N-Stealth主要为Windows平台提供扫描,但并不提供源代码。
防御策略。由于Web的作用和特殊情况,web的安全管理一直是业界面临的难题。针对其安全管理,业界也提出了许多参考意见,如下是一些安全防御建议:
1.及时更新补丁程序;
2.合理配置web服务器安全策略;
3.合理配置用户的权限;
4.加强脚本安全的管理。
【实验内容】
WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。 WWW 是 Internet 的多媒体信息查询工具,是 Internet 上近年才发展起来的服务,也是发展最快和目前用的最广泛的服务。正是因为有了WWW工具,才使得近年来 Internet 迅速发展,且用户数量飞速增长。随着web 应用的日益增多,如电子商务,交流论坛,公司网站等等都使用web 作为应用的平台,如何保证web应用的安全性也成为当前日益重要、必须解决的问题。
由于网络技术的飞速发展,网络规模迅猛增长,据Netcraft公布的2010年2月份的全球Web服务器使用情况调查报告显示:目前全球web服务器的数量超过了2亿个,并且数量还在持续增长:2010年2月期间Apache主机名称数量增长了1600万个,排在增长趋势的第一位,增长第二位的是微软的Web服务器,主机名称增长数量为1100万个。迅猛增加的web服务器,导致新的系统漏洞不断增加。
另据瑞典互联网监测机构—Pingdom—2010年7月份发布的全球20大互联网国家排行数据显示:全球互联网用户数量已经达到了18亿,其中中国互联网用户数量为达到了4.2亿。许多互联网用户出于好奇或别有用心,针对web服务器漏洞,不停的窥视网上资源。由此导致的web安全事件数不胜数,web服务器安全的严峻形势迫使人们不得不严阵以待。【实验步骤】
1、登录linux靶机172.16.5.124,打开终端:cd gongfang/web-scaner/nikto-2.1.4。
2、在终端输入扫描命令:
perl nikto.pl –h 172.16.5.121 –o ./result.html(图2)
命令含义是:用nikto扫描IP为172.16.5.121的主机,并把结果储存在result.html里面。
图 2输入命令截图
3、由于扫描过程比较长,大概需要十分钟左右,请耐心等待。
4、得出扫描结果后,用浏览器打开result.html。(图3)
图 3输入命令截图
5、分析扫描的结果,找出是否有漏洞存在。(图4)
图 4report.html页面【实验思考题】
1.web漏洞扫描的作用.
答:目的是为了发现网站资产和关联资产存在的安全风险,避免遭受品牌形象和经济损失,同时满足内等保合规要容求,及时发现各类安全风险,包括资产漏洞、安全违法违规内容(如暴力恐怖、涉政、色情内容等)、网页篡改、挂马暗链、垃圾广告等。2.还有哪些优秀的web漏洞扫描器?
答:
(1) Nikto是一个开源的Web服务器扫描程序,它可以对Web服务器的多种项目(包括3500个潜在的危险文件/CGI,以及超过900个服务器版本,还有250多个服务器上的版本特定问题)进行全面的测试。其扫描项目和插件经常更新并且可以自动更新。
(2) Paros是一个对Web应用程序的漏洞进行评估的代理程序,即一个基于Java的web代理程序,可以评估Web应用程序的漏洞。
(3) WebScarab可以分析使用HTTP 和HTTPS协议进行通信的应用程序,WebScarab可以用最简单地形式记录它观察的会话,并允许操作人员以各种方式观查会话。如果你需要观察一个基于HTTP(S)应用程序的运行状态,那么WebScarabi就可以满足你这种需要。不管是帮助开发人员调试其它方面的难题,还是允许安全专业人员识别漏洞,它都是一款不错的工具。
(4) WebInspect是一款强大的Web应用程序扫描程序。SPI Dynamics的这款应用程序安全评估工具有助于确认Web应用中已知的和未知的漏洞。它还可以检查一个Web服务器是否正确配置,并会尝试一些常见的Web攻击,如参数注入、跨站脚本、目录遍历攻击(directory traversal)等。
(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是一款商业级的Web服务器安全扫描程序。它比一些免费的Web扫描程序,如Whisker/libwhisker、 Nikto等的升级频率更高,它宣称含有“30000个漏洞和漏洞程序”以及“每天增加大量的漏洞检查”,不过这种说法令人质疑。还要注意,实际上所有通用的VA工具,如Nessus, ISS Internet Scanner, Retina, SAINT, Sara等都包含Web 扫描部件。(虽然这些工具并非总能保持软件更新,也不一定很灵活。)N-Stealth主要为Windows平台提供扫描,但并不提供源代码。 -
识别常见Web漏洞有效防止入侵[1]
2021-03-23 16:21:59漏洞识别常见Web漏洞有效防止入侵[1]软件测试在Internet大众化及Web技术飞速演变的今天,在线安全所面临的挑战日益严峻。伴随着在线信息和服务的可用性的提升,以及基子Web的攻击和破坏的增长,安全风险达到了... -
一种基于渗透性测试的Web漏洞扫描系统设计与实现
2020-10-25 13:36:31提出一种基于渗透性测试的Web漏洞扫描系统,给出了Web漏洞扫描系统的总体结构设计,研究了描述Web攻击行为所需要的特征信息及其分类,给出了Web攻击行为特征信息在数据库中的存储表结构。 -
WEB漏洞挖掘——思路指南
2021-12-29 12:32:29本篇主要记录了WEB漏洞挖掘过程中的信息收集部分,web渗透最重要的便是信息收集,希望以下内容能够给予在漏洞挖掘中迷茫的小伙伴一些帮助。 目录 信息收集 子域名 注意是否存在WAF 工具类 边缘资产 ICP备案...本篇主要记录了WEB漏洞挖掘学习过程中的信息收集部分,web渗透最重要的便是信息收集,希望以下内容能够给予同在漏洞挖掘学习中的小伙伴一些帮助,若有不足之处可以告诉我,大家一起努力进步。大佬路过也请多多指点!
目录
信息收集
信息收集的目的是为了更多的收集目标资产,扩大我们的渗透范围。WEB漏洞更多的存在于一些边缘资产和隐蔽的资产中。
子域名
在其他信息收集的过程中也可以先将收集到的子域名放到文本中,最后进行去重
注意是否存在WAF
若检测存在WAF,扫描时需要降低线程,请求延时,使用代理池不断的更换IP等。
- 1、sqlmap工具进行检测:
python sqlmap.py -u "<UTL地址>" --identify-waf --batch
- 2、wafw00f
Kali Linux自带或者自行在linux上安装
wafw00f <URL地址> # WAF批量识别 wafw00f -i domains.txt -o output_waf.txt
- 3、手工检测
直接在主页插入SQL注入测试语句,看是否被waf拦截
aaa=1 union select 1,2,3
工具类
- OneForAll(推荐使用,功能性强)
使用前可以先完善api.py配置API信息,可以帮助我们收集到更多的子域名信息
GitHub - shmilylty/OneForAll: OneForAll是一款功能强大的子域收集工具
- 暴力枚举
subdomain
网上有许多类似的工具,可以根据自己的情况选择
GitHub - lijiejie/subDomainsBrute: A fast sub domain brute tool for pentesters
layer
Layer子域名挖掘机5.0.zip_子域名挖掘机,layer子域名挖掘机-网络攻防工具类资源-CSDN下载
边缘资产
通过域名搜索
https://securitytrails.com/list/apex_domain/
ICP备案查询
敏感信息收集
搜索引擎
- Google hack/bing
可以搭梯子访问 或者 谷歌镜像站
# 1、管理后台地址 intext:管理| intext:后台| intext:后台管理| intext:登陆| intext:登录| intext:用户名| intext:密码| intext:系统| intext:账号| intext:login | intext:system inurl:login |inurl:admin | inurl:manage | inurl:manager | inurl:admin_login | inurl:system |inurl:backend intitle:管理| intitle:后台| intitle:后台管理| intitle:登陆| intitle:登录 # 2、上传漏洞地址 inurl:file inurl:upload # 3、注入页面 inurl:php?id= # 4、编辑器页面 inurl:ewebeditor # 5、目录遍历漏洞 intitle:index.of # 6、SQL错误 intext:"sqlsyntax near" | intext:"syntax error has occurred" |intext:"incorrect syntax near" | intext:"unexpected end of SQLcommand" | intext:"Warning: mysql_connect()" | intext:”Warning:mysql_query()" | intext:”Warning: pg_connect()" # 7、phpinfo() ext:phpintitle:phpinfo "published by the PHP Group" #8、配置文件泄露 ext:xml | ext:conf |ext:cnf | ext:reg | ext:inf | ext:rdp | ext:cfg | ext:txt | ext:ora | ext:ini # 9、数据库文件泄露 ext:sql | ext:dbf |ext:mdb | ext:db # 10、日志文件泄露 ext:log # 11、备份和历史文件泄露 ext:bkf | ext:bkp |ext:old | ext:backup | ext:bak | ext:swp | ext:rar | ext:txt | ext:zip | ext:7z| ext:sql | ext:tar.gz | ext:tgz | ext:tar #12、公开文件泄露 filetype:doc |filetype:docx | filetype:xls | filetype:xlsx | filetype:ppt | filetype:pptx |filetype:odt | filetype:pdf | filetype:rtf | filetype:sxw | filetype:psw |filetype:csv # 13、邮箱信息 intext:@target.com # 邮件 email # 14、社工信息 intitle:账号| intitle:密码| intitle:工号| intitle:学号| intitle:身份证
- github
in:name test #仓库标题搜索含有关键字 SpringCloud in:descripton test #仓库描述搜索含有关键字 in:readme test #Readme文件搜素含有关键字 stars:>3000 test #stars数量大于3000的搜索关键字 stars:1000..3000 test #stars数量大于1000小于3000的搜索关键字 forks:>1000 test #forks数量大于1000的搜索关键字 forks:1000..3000 test #forks数量大于1000小于3000的搜索关键字 size:>=5000 test #指定仓库大于5000k(5M)的搜索关键字 pushed:>2019-02-12 test #发布时间大于2019-02-12的搜索关键字 created:>2019-02-12 test #创建时间大于2019-02-12的搜索关键字 user:test #用户名搜素 license:apache-2.0 test #明确仓库的 LICENSE 搜索关键字 language:java test #在java语言的代码中搜索关键字 user:test in:name test #组合搜索,用户名test的标题含有test的
- FOFA
网络空间测绘,网络空间安全搜索引擎,网络空间搜索引擎,安全态势感知 - FOFA网络空间测绘系统
小技巧:
1、可以找相同框架的网站
2、cert证书查找
将网站证书的序列号,从十六进制转换为十进制进行查询
3、网站图标搜索(需要FOFA高级会员)
通过icon hash查IP地址_Kevin's Blog-CSDN博客_icon_hash
header # 响应头中的关键词 body # 正文中的关键词 cert # 证书查询 ip # 旁站/C段 domain # 主域名 status_code # 响应状态码 host # URL中的关键词 title # 标题中的关键词 icon_hash # 查找icon的资产(网站图标的搜索) && # -- 表示逻辑与 || # -- 表示逻辑或
- Shodan
Shodan搜索引擎使用技巧_weixin_42299610的博客-CSDN博客_shodan搜索引擎
网盘引擎
搜索在网盘中发布过的敏感信息
中间件、组件等
- wappalyzer
谷歌插件,翻墙访问下载
- whatweb
kali自带whatweb
- bscan
https://github.com/broken5/bscan
真实IP
# 一、查询历史DNS解析记录 https://dnsdb.io/zh-cn/| https://x.threatbook.cn/ # 二、查询子域名的IP地址 # 三、网络空间引擎搜索法 FOFA、Shodan title && body # 四、通过外国服务器ping url地址 http://ping.chinaz.com/yungtay.com.cn # 五、邮件原文
C段
# FOAF IP="IP/24" # Nmap nmap -sS -O -P0 -oG - IP | awk '/open/{print $2}'
旁站
#旁站查询主要是通过各大站长平台,基于对以前的收录信息,通过IP进行分组划分,查找其目标的IP来查询相同IP的解释记录而得出的结果,主要的工具有: http://dns.aizhan.com http://s.tool.chinaz.com/same http://i.links.cn/sameip/ http://www.ip2hosts.com/
端口
- 端口扫描
# 批量扫描端口 nmap -O -Pn -oG result.txt -iL ips.txt # 精准扫描 nmap -sS -O -P0 IP -p3389,80,22,6379 # shodan
- 端口快速打点
小米范
- 爆破工具
hydra
针对开放端口进行账号密码的爆破破解
GitHub - vanhauser-thc/thc-hydra: hydra
- 各个端口可能存在的漏洞
Mssql [ 默认工作在tcp 1433端口, 弱口令, 敏感账号密码泄露, 提权, 远程执行, 后门植入 ] SMB [ 默认工作在tcp 445端口, 弱口令, 远程执行, 后门植入 ] WMI [ 默认工作在tcp 135端口, 弱口令, 远程执行, 后门植入 ] WinRM [ 默认工作在tcp 5985端口, 此项主要针对某些高版本Windows, 弱口令, 远程执行, 后门植入 ] RDP [ 默认工作在tcp 3389端口, 弱口令, 远程执行, 别人留的shift类后门 ] SSH [ 默认工作在tcp 22端口, 弱口令, 远程执行, 后门植入 ] ORACLE [ 默认工作在tcp 1521端口, 弱口令, 敏感账号密码泄露, 提权, 远程执行, 后门植入 ] Mysql [ 默认工作在tcp 3306端口, 弱口令, 敏感账号密码泄露, 提权(只适用于部分老系统) ] REDIS [ 默认工作在tcp 6379端口, 弱口令, 未授权访问, 写文件(webshell,启动项,计划任务), 提权 ] POSTGRESQL[ 默认工作在tcp 5432端口, 弱口令, 敏感信息泄露 ] LDAP [ 默认工作在tcp 389端口, 未授权访问, 弱口令, 敏感账号密码泄露 ] SMTP [ 默认工作在tcp 25端口, 服务错误配置导致的用户名枚举漏洞, 弱口令, 敏感信息泄露 ] POP3 [ 默认工作在tcp 110端口, 弱口令, 敏感信息泄露 ] IMAP [ 默认工作在tcp 143端口, 弱口令, 敏感信息泄露 ] Exchange [ 默认工作在tcp 443端口, 接口弱口令爆破 eg: Owa,ews,oab,AutoDiscover... pth脱邮件, 敏感信息泄露 ... ] VNC [ 默认工作在tcp 5900端口, 弱口令 ] FTP [ 默认工作在tcp 21端口, 弱口令, 匿名访问/可写, 敏感信息泄露 ] Rsync [ 默认工作在tcp 873端口, 未授权, 弱口令, 敏感信息泄露 ] Mongodb [ 默认工作在tcp 27017端口, 未授权, 弱口令 ] TELNET [ 默认工作在tcp 23端口, 弱口令, 后门植入 ] SVN [ 默认工作在tcp 3690端口, 弱口令, 敏感信息泄露 ] JAVA RMI [ 默认工作在tcp 1099端口, 可能存在反序列化利用 ] CouchDB [ 默认工作在tcp 5984端口, 未授权访问 ]
公众号
公司信息
天眼查/企信通
若对一个公司进行渗透测试,可以查询该公司的子公司等其他相关资产
APP
信息整理
- 去重子域名
对于收集到的子域名进行去重,可以自己编写脚本去重,下面提供一个简单的python去重脚本
使用方式:python xxx.py --target 文件名
import sys def run(file): f = open(file) b = f.readlines() f.close b = set(b) for x in b: x = x.strip('\n') f = open('.\\去重后.txt','a') f.write(x+'\n') f.close a = sys.argv[1] if(a=='--target'): file = sys.argv[2] run(file) else: print("提示:") print("python 去重.py --target 文件")
- 筛选存活子域名
通过Bscan批量子域名探测
https://github.com/broken5/bscan
最终,对于获取到的信息判断选择极大可能存在漏洞网站进行测试。
-
Web安全漏洞指导手册.pdf
2021-07-25 00:44:44Web安全漏洞指导手册 -
web漏洞攻击.doc
2020-03-31 14:00:43Web应用攻击是攻击者通过浏览器或攻击工具,在URL或者其它输入区域(如表单等),向Web服务器发送特殊请求,从中发现Web应用程序存在的漏洞,从而进一步操纵和控制网站,查看、修改未授权的信息。 -
Safe3 Web漏洞扫描系统企业版v10.1 破解版
2015-11-17 16:12:46Safe3 Web漏洞扫描系统企业版v10.1 破解版 -
web漏洞之XSS_TEST漏洞实践练习代码
2022-04-25 18:08:29web漏洞之XSS_TEST漏洞实践练习代码,下载解压后可直接使用。 -
web漏洞安全.ppt
2020-02-25 18:03:32web漏洞安全.ppt -
基于网络的Web漏洞检测系统的研究与实现
2013-09-07 14:45:56这是一篇关于互联网漏洞的检测与分析的,已经对一些主要漏洞的详细分析 -
十大常见web漏洞及防范
2018-07-29 12:37:33十大常见web漏洞 一、SQL注入漏洞 SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。在设计程序,忽略了对输入字符串中夹带的SQL...十大常见web漏洞
一、SQL注入漏洞
SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。在设计程序,忽略了对输入字符串中夹带的SQL指令的检查,被数据库误认为是正常的SQL指令而运行,从而使数据库受到攻击,可能导致数据被窃取、更改、删除,以及进一步导致网站被嵌入恶意代码、被植入后门程序等危害。
通常情况下,SQL注入的位置包括:
(1)表单提交,主要是POST请求,也包括GET请求;
(2)URL参数提交,主要为GET请求参数;
(3)Cookie参数提交;
(4)HTTP请求头部的一些可修改的值,比如Referer、User_Agent等;
(5)一些边缘的输入点,比如.mp3文件的一些文件信息等。
常见的防范方法
(1)所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。当前几乎所有的数据库系统都提供了参数化SQL语句执行接口,使用此接口可以非常有效的防止SQL注入攻击。
(2)对进入数据库的特殊字符(’”<>&*;等)进行转义处理,或编码转换。
(3)确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的存储字段必须对应为int型。
(4)数据长度应该严格规定,能在一定程度上防止比较长的SQL注入语句无法正确执行。
(5)网站每个数据层的编码统一,建议全部使用UTF-8编码,上下层编码不一致有可能导致一些过滤模型被绕过。
(6)严格限制网站用户的数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害。
(7)避免网站显示SQL错误信息,比如类型错误、字段不匹配等,防止攻击者利用这些错误信息进行一些判断。
(8)在网站发布之前建议使用一些专业的SQL注入检测工具进行检测,及时修补这些SQL注入漏洞。二、跨站脚本漏洞
跨站脚本攻击(Cross-site scripting,通常简称为XSS)发生在客户端,可被用于进行窃取隐私、钓鱼欺骗、窃取密码、传播恶意代码等攻击。
XSS攻击使用到的技术主要为HTML和Javascript,也包括VBScript和ActionScript等。XSS攻击对WEB服务器虽无直接危害,但是它借助网站进行传播,使网站的使用用户受到攻击,导致网站用户帐号被窃取,从而对网站也产生了较严重的危害。
XSS类型包括:
(1)非持久型跨站:即反射型跨站脚本漏洞,是目前最普遍的跨站类型。跨站代码一般存在于链接中,请求这样的链接时,跨站代码经过服务端反射回来,这类跨站的代码不存储到服务端(比如数据库中)。上面章节所举的例子就是这类情况。
(2)持久型跨站:这是危害最直接的跨站类型,跨站代码存储于服务端(比如数据库中)。常见情况是某用户在论坛发贴,如果论坛没有过滤用户输入的Javascript代码数据,就会导致其他浏览此贴的用户的浏览器会执行发贴人所嵌入的Javascript代码。
(3)DOM跨站(DOM XSS):是一种发生在客户端DOM(Document Object Model文档对象模型)中的跨站漏洞,很大原因是因为客户端脚本处理逻辑导致的安全问题。
常用的防止XSS技术包括:
(1)与SQL注入防护的建议一样,假定所有输入都是可疑的,必须对所有输入中的script、iframe等字样进行严格的检查。这里的输入不仅仅是用户可以直接交互的输入接口,也包括HTTP请求中的Cookie中的变量,HTTP请求头部中的变量等。
(2)不仅要验证数据的类型,还要验证其格式、长度、范围和内容。
(3)不要仅仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。
(4)对输出的数据也要检查,数据库里的值有可能会在一个大网站的多处都有输出,即使在输入做了编码等操作,在各处的输出点时也要进行安全检查。
(5)在发布应用程序之前测试所有已知的威胁。三、弱口令漏洞
弱口令(weak password) 没有严格和准确的定义,通常认为容易被别人(他们有可能对你很了解)猜测到或被破解工具破解的口令均为弱口令。设置密码通常遵循以下原则:
(1)不使用空口令或系统缺省的口令,这些口令众所周之,为典型的弱口令。
(2)口令长度不小于8个字符。
(3)口令不应该为连续的某个字符(例如:AAAAAAAA)或重复某些字符的组合(例如:tzf.tzf.)。
(4)口令应该为以下四类字符的组合,大写字母(A-Z)、小写字母(a-z)、数字(0-9)和特殊字符。每类字符至少包含一个。如果某类字符只包含一个,那么该字符不应为首字符或尾字符。
(5)口令中不应包含本人、父母、子女和配偶的姓名和出生日期、纪念日期、登录名、E-mail地址等等与本人有关的信息,以及字典中的单词。
(6)口令不应该为用数字或符号代替某些字母的单词。
(7)口令应该易记且可以快速输入,防止他人从你身后很容易看到你的输入。
(8)至少90天内更换一次口令,防止未被发现的入侵者继续使用该口令。四、HTTP报头追踪漏洞
HTTP/1.1(RFC2616)规范定义了HTTP TRACE方法,主要是用于客户端通过向Web服务器提交TRACE请求来进行测试或获得诊断信息。当Web服务器启用TRACE时,提交的请求头会在服务器响应的内容(Body)中完整的返回,其中HTTP头很可能包括Session Token、Cookies或其它认证信息。攻击者可以利用此漏洞来欺骗合法用户并得到他们的私人信息。该漏洞往往与其它方式配合来进行有效攻击,由于HTTP TRACE请求可以通过客户浏览器脚本发起(如XMLHttpRequest),并可以通过DOM接口来访问,因此很容易被攻击者利用。
防御HTTP报头追踪漏洞的方法通常禁用HTTP TRACE方法。五、Struts2远程命令执行漏洞
ApacheStruts是一款建立Java web应用程序的开放源代码架构。Apache Struts存在一个输入过滤错误,如果遇到转换错误可被利用注入和执行任意Java代码。
网站存在远程代码执行漏洞的大部分原因是由于网站采用了Apache Struts Xwork作为网站应用框架,由于该软件存在远程代码执高危漏洞,导致网站面临安全风险。CNVD处置过诸多此类漏洞,例如:“GPS车载卫星定位系统”网站存在远程命令执行漏洞(CNVD-2012-13934);Aspcms留言本远程代码执行漏洞(CNVD-2012-11590)等。
修复此类漏洞,只需到Apache官网升级Apache Struts到最新版本:http://struts.apache.org六、文件上传漏洞
文件上传漏洞通常由于网页代码中的文件上传路径变量过滤不严造成的,如果文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,攻击者可通过 Web 访问的目录上传任意文件,包括网站后门文件(webshell),进而远程控制网站服务器。
因此,在开发网站及应用程序过程中,需严格限制和校验上传的文件,禁止上传恶意代码的文件。同时限制相关目录的执行权限,防范webshell攻击。七、私有IP地址泄露漏洞
IP地址是网络用户的重要标示,是攻击者进行攻击前需要了解的。获取的方法较多,攻击者也会因不同的网络情况采取不同的方法,如:在局域网内使用Ping指令,Ping对方在网络中的名称而获得IP;在Internet上使用IP版的QQ直接显示。最有效的办法是截获并分析对方的网络数据包。攻击者可以找到并直接通过软件解析截获后的数据包的IP包头信息,再根据这些信息了解具体的IP。
针对最有效的“数据包分析方法”而言,就可以安装能够自动去掉发送数据包包头IP信息的一些软件。不过使用这些软件有些缺点,譬如:耗费资源严重,降低计算机性能;访问一些论坛或者网站时会受影响;不适合网吧用户使用等等。现在的个人用户采用最普及隐藏IP的方法应该是使用代理,由于使用代理服务器后,“转址服务”会对发送出去的数据包有所修改,致使“数据包分析”的方法失效。一些容易泄漏用户IP的网络软件(QQ、MSN、IE等)都支持使用代理方式连接Internet,特别是QQ使用“ezProxy”等代理软件连接后,IP版的QQ都无法显示该IP地址。虽然代理可以有效地隐藏用户IP,但攻击者亦可以绕过代理,查找到对方的真实IP地址,用户在何种情况下使用何种方法隐藏IP,也要因情况而论。八、未加密登录请求
由于Web配置不安全,登陆请求把诸如用户名和密码等敏感字段未加密进行传输,攻击者可以窃听网络以劫获这些敏感信息。建议进行例如SSH等的加密后再传输。
九、敏感信息泄露漏洞
SQL注入、XSS、目录遍历、弱口令等均可导致敏感信息泄露,攻击者可以通过漏洞获得敏感信息。针对不同成因,防御方式不同
十、CSRF
http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html
Web应用是指采用B/S架构、通过HTTP/HTTPS协议提供服务的统称。随着互联网的广泛使用,Web应用已经融入到日常生活中的各个方面:网上购物、网络银行应用、证券股票交易、政府行政审批等等。在这些Web访问中,大多数应用不是静态的网页浏览,而是涉及到服务器侧的动态处理。此时,如果Java、PHP、ASP等程序语言的编程人员的安全意识不足,对程序参数输入等检查不严格等,会导致Web应用安全问题层出不穷。
本文根据当前Web应用的安全情况,列举了Web应用程序常见的攻击原理及危害,并给出如何避免遭受Web攻击的建议。
Web应用漏洞原理
Web应用攻击是攻击者通过浏览器或攻击工具,在URL或者其它输入区域(如表单等),向Web服务器发送特殊请求,从中发现Web应用程序存在的漏洞,从而进一步操纵和控制网站,查看、修改未授权的信息。
1.1 Web应用的漏洞分类
1、信息泄露漏洞
信息泄露漏洞是由于Web服务器或应用程序没有正确处理一些特殊请求,泄露Web服务器的一些敏感信息,如用户名、密码、源代码、服务器信息、配置信息等。
造成信息泄露主要有以下三种原因:
–Web服务器配置存在问题,导致一些系统文件或者配置文件暴露在互联网中;
–Web服务器本身存在漏洞,在浏览器中输入一些特殊的字符,可以访问未授权的文件或者动态脚本文件源码;
–Web网站的程序编写存在问题,对用户提交请求没有进行适当的过滤,直接使用用户提交上来的数据。
2、目录遍历漏洞
目录遍历漏洞是攻击者向Web服务器发送请求,通过在URL中或在有特殊意义的目录中附加“../”、或者附加“../”的一些变形(如“..\”或“..//”甚至其编码),导致攻击者能够访问未授权的目录,以及在Web服务器的根目录以外执行命令。
3、命令执行漏洞
命令执行漏洞是通过URL发起请求,在Web服务器端执行未授权的命令,获取系统信息,篡改系统配置,控制整个系统,使系统瘫痪等。
命令执行漏洞主要有两种情况:
–通过目录遍历漏洞,访问系统文件夹,执行指定的系统命令;
–攻击者提交特殊的字符或者命令,Web程序没有进行检测或者绕过Web应用程序过滤,把用户提交的请求作为指令进行解析,导致执行任意命令。
4、文件包含漏洞
文件包含漏洞是由攻击者向Web服务器发送请求时,在URL添加非法参数,Web服务器端程序变量过滤不严,把非法的文件名作为参数处理。这些非法的文件名可以是服务器本地的某个文件,也可以是远端的某个恶意文件。由于这种漏洞是由PHP变量过滤不严导致的,所以只有基于PHP开发的Web应用程序才有可能存在文件包含漏洞。
5、SQL注入漏洞
SQL注入漏洞是由于Web应用程序没有对用户输入数据的合法性进行判断,攻击者通过Web页面的输入区域(如URL、表单等) ,用精心构造的SQL语句插入特殊字符和指令,通过和数据库交互获得私密信息或者篡改数据库信息。SQL注入攻击在Web攻击中非常流行,攻击者可以利用SQL注入漏洞获得管理员权限,在网页上加挂木马和各种恶意程序,盗取企业和用户敏感信息。
6、跨站脚本漏洞
跨站脚本漏洞是因为Web应用程序时没有对用户提交的语句和变量进行过滤或限制,攻击者通过Web页面的输入区域向数据库或HTML页面中提交恶意代码,当用户打开有恶意代码的链接或页面时,恶意代码通过浏览器自动执行,从而达到攻击的目的。跨站脚本漏洞危害很大,尤其是目前被广泛使用的网络银行,通过跨站脚本漏洞攻击者可以冒充受害者访问用户重要账户,盗窃企业重要信息。
根据前期各个漏洞研究机构的调查显示,SQL注入漏洞和跨站脚本漏洞的普遍程度排名前两位,造成的危害也更加巨大。
1.2 SQL注入攻击原理
SQL注入攻击是通过构造巧妙的SQL语句,同网页提交的内容结合起来进行注入攻击。比较常用的手段有使用注释符号、恒等式(如1=1)、使用union语句进行联合查询、使用insert或update语句插入或修改数据等,此外还可以利用一些内置函数辅助攻击。
通过SQL注入漏洞攻击网站的步骤一般如下:
第一步:探测网站是否存在SQL注入漏洞。
第二步:探测后台数据库的类型。
第三步:根据后台数据库的类型,探测系统表的信息。
第四步:探测存在的表信息。
第五步:探测表中存在的列信息。
第六步:探测表中的数据信息。
1.3 跨站脚本攻击原理
跨站脚本攻击的目的是盗走客户端敏感信息,冒充受害者访问用户的重要账户。跨站脚本攻击主要有以下三种形式:
1、本地跨站脚本攻击
B给A发送一个恶意构造的Web URL,A点击查看了这个URL,并将该页面保存到本地硬盘(或B构造的网页中存在这样的功能)。A在本地运行该网页,网页中嵌入的恶意脚本可以A电脑上执行A持有的权限下的所有命令。
2、反射跨站脚本攻击
A经常浏览某个网站,此网站为B所拥有。A使用用户名/密码登录B网站,B网站存储下A的敏感信息(如银行帐户信息等)。C发现B的站点包含反射跨站脚本漏洞,编写一个利用漏洞的URL,域名为B网站,在URL后面嵌入了恶意脚本(如获取A的cookie文件),并通过邮件或社会工程学等方式欺骗A访问存在恶意的URL。当A使用C提供的URL访问B网站时,由于B网站存在反射跨站脚本漏洞,嵌入到URL中的恶意脚本通过Web服务器返回给A,并在A浏览器中执行,A的敏感信息在完全不知情的情况下将发送给了C。
3、持久跨站脚本攻击
B拥有一个Web站点,该站点允许用户发布和浏览已发布的信息。C注意到B的站点具有持久跨站脚本漏洞,C发布一个热点信息,吸引用户阅读。A一旦浏览该信息,其会话cookies或者其它信息将被C盗走。持久性跨站脚本攻击一般出现在论坛、留言簿等网页,攻击者通过留言,将攻击数据写入服务器数据库中,浏览该留言的用户的信息都会被泄漏。
Web应用漏洞的防御实现
对于以上常见的Web应用漏洞漏洞,可以从如下几个方面入手进行防御:
1)对 Web应用开发者而言
大部分Web应用常见漏洞,都是在Web应用开发中,开发者没有对用户输入的参数进行检测或者检测不严格造成的。所以,Web应用开发者应该树立很强的安全意识,开发中编写安全代码;对用户提交的URL、查询关键字、HTTP头、POST数据等进行严格的检测和限制,只接受一定长度范围内、采用适当格式及编码的字符,阻塞、过滤或者忽略其它的任何字符。通过编写安全的Web应用代码,可以消除绝大部分的Web应用安全问题。
2) 对Web网站管理员而言
作为负责网站日常维护管理工作Web管理员,应该及时跟踪并安装最新的、支撑Web网站运行的各种软件的安全补丁,确保攻击者无法通过软件漏洞对网站进行攻击。
除了软件本身的漏洞外,Web服务器、数据库等不正确的配置也可能导致Web应用安全问题。Web网站管理员应该对网站各种软件配置进行仔细检测,降低安全问题的出现可能。
此外,Web管理员还应该定期审计Web服务器日志,检测是否存在异常访问,及早发现潜在的安全问题。
3)使用网络防攻击设备
前两种为事前预防方式,是比较理想化的情况。然而在现实中,Web应用系统的漏洞还是不可避免的存在:部分Web网站已经存在大量的安全漏洞,而Web开发者和网站管理员并没有意识到或发现这些安全漏洞。由于Web应用是采用HTTP协议,普通的防火墙设备无法对Web类攻击进行防御,因此可以使用IPS入侵防御设备来实现安全防护。
H3C IPS Web攻击防御
H3C IPS入侵防御设备有一套完整的Web攻击防御框架,能够及时发现各种已经暴露的和潜在的Web攻击。下图为对于Web攻击的总体防御框架。
图1:Web攻击防御框架,参见:http://blog.csdn.net/moshenglv/article/details/53439579
H3C IPS采用基于特征识别的方式识别并阻断各种攻击。IPS设备有一个完整的特征库,并可定期以手工与自动的方式对特征库进行升级。当网络流量进入IPS后,IPS首先对报文进行预处理,检测报文是否正确,即满足协议定义要求,没有错误字段;如果报文正确,则进入深度检测引擎。该引擎是IPS检测的核心模块,对通过IPS设备的Web流量进行深层次的分析,并与IPS攻击库中的特征进行匹配,检测Web流量是否存在异常;如果发现流量匹配了攻击特征,IPS则阻断网络流量并上报日志;否则,网络流量顺利通过。
此Web攻击防御框架有如下几个特点:
1) 构造完整的Web攻击检测模型,准确识别各种Web攻击
针对Web攻击的特点,考虑到各种Web攻击的原理和形态,在不同漏洞模型之上开发出通用的、层次化的Web攻击检测模型,并融合到特征库中。这些模型抽象出Web攻击的一般形态,对主流的攻击能够准确识别,使得模型通用化。
2) 检测方式灵活,可以准确识别变形的Web攻击
在实际攻击中,攻击者为了逃避防攻击设备的检测,经常对Web攻击进行变形,如采用URL编码技术、修改参数等。H3C根据Web应用漏洞发生的原理、攻击方式和攻击目标,对攻击特征进行了扩展。即使攻击者修改攻击参数、格式、语句等内容,相同漏洞原理下各种变形的攻击同样能够被有效阻断。这使得IPS的防御范围扩大,防御的灵活性也显著增强,极大的减少了漏报情况的出现。
3) 确保对最新漏洞及技术的跟踪,有效阻止最新的攻击
随着Web攻击出现的频率日益增高,其危害有逐步扩展的趋势。这对IPS设备在防御的深度和广度上提出了更高的要求,不仅要能够防御已有的Web攻击,更要有效的阻止最新出现的、未公布的攻击。目前,H3C已经建立起一套完整的攻防试验环境,可以及时发现潜在Web安全漏洞。同时还在继续跟踪最新的Web攻击技术和工具,及时更新Web攻击的特征库,第一时间发布最新的Web漏洞应对措施,确保用户的网络不受到攻击。
4) 保证正常业务的高效运行
检测引擎是IPS整个设备运行的关键,该引擎使用了高效、准确的检测算法,对通过设备的流量进行深层次的分析,并通过和攻击特征进行匹配,检测流量是否存在异常。如果流量没有匹配到攻击特征,则允许流量通过,不会妨碍正常的网络业务,在准确防御的同时保证了正常业务的高效运行。
结束语
互联网和Web技术广泛使用,使Web应用安全所面临的挑战日益严峻,Web系统时时刻刻都在遭受各种攻击的威胁,在这种情况下,需要制定一个完整的Web攻击防御解决方案,通过安全的Web应用程序、Web服务器软件、Web防攻击设备共同配合,确保整个网站的安全。任何一个简单的漏洞、疏忽都会造成整个网站受到攻击,造成巨大损失。此外 ,Web攻击防御是一个长期持续的工作,随着Web技术的发展和更新,Web攻击手段也不断发展,针对这些最新的安全威胁,需要及时调整Web安全防护策略,确保Web攻击防御的主动性,使Web网站在一个安全的环境中为企业和客户服务。
-
Web漏洞的挖掘与利用
2022-04-04 14:29:47如果判断出来存在sql注入漏洞,则进判断sql注入的闭合字符 ?id=1’and 1=1 ?id=1’and 1=2 判断列数 ,采用二分法进行判断 order by 10 判断显示位,假设显示位为3,则order by 1,2,3 爆数据库,在爆数据库的前提... -
常见WEB漏洞原理分析
2019-08-09 11:47:05一、SQL注入漏洞 SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。在设计程序,忽略了对输入字符串中夹带的SQL指令的检查,被数据库... -
简单总结一些常见Web漏洞
2022-04-10 19:42:59该漏洞属于用户配置不当产生的漏洞,与具体中间件版本无关。 .htaccess文件 前提:mod_rewrite 模块开启、AllowOverride All 这个.htaccess的意思就是把所有名字里面含有shell的文件当成php脚本来执行 SetHandler ...