一般项目在验收之前都会有专业的机构进行安全漏洞扫描,下面是这些天碰到的几个常见的中高危漏洞安全。
1、跨站点脚本编制
漏洞描述: |
“跨站点脚本编制”攻击是一种隐私违例,可让攻击者获取合法用户的凭证,并在与特定 Web 站点交互时假冒这位用户。 这个攻击立足于下列事实:Web 站点中所包含的脚本直接将用户在 HTML 页面中的输入(通常是参数值)返回,而不预先加以清理。 如果脚本在响应页面中返回由 JavaScript 代码组成的输入,浏览器便可以执行此输入。 因此,有可能形成指向站点的若干链接,且其中一个参数包含恶意的 JavaScript 代码。 该代码将在站点上下文中(由用户浏览器)执行,这使得该代码有权访问用户在该站点中具有访问权的 cookie,以及站点中其他可通过用户浏览器访问的窗口。 攻击依照下列方式继续进行:攻击者诱惑合法用户单击攻击者生成的链接。 用户单击该链接时,便会生成对于 Web 站点的请求,其中的参数值含有恶意的 JavaScript 代码。 如果 Web 站点将这个参数值嵌入在响应的 HTML 页面中(这正是站点问题的本质所在),恶意代码便会在用户浏览器中运行。 脚本可能执行的操作如下: [1] 将用户的 cookie(针对合法站点)发送给攻击者。 [2] 将可通过 DOM(URL、表单字段等)访问的信息发送给攻击者。
结果是在易受攻击的站点上,受害用户的安全和隐私受到侵害。 |
修复建议: |
若干问题的补救方法在于对用户输入进行清理。 通过验证用户输入未包含危险字符,便可能防止恶意的用户导致应用程序执行计划外的任务,例如:启动任意 SQL 查询、嵌入将在客户端执行的 Javascript 代码、运行各种操作系统命令,等等。 建议过滤出所有以下字符: [1] |(竖线符号) [2] & (& 符号) [3];(分号) [4] $(美元符号) [5] %(百分比符号) [6] @(at 符号) [7] '(单引号) [8] "(引号) [9] \'(反斜杠转义单引号) [10] \"(反斜杠转义引号) [11] <>(尖括号) [12] ()(括号) [13] +(加号) [14] CR(回车符,ASCII 0x0d) [15] LF(换行,ASCII 0x0a) [16] ,(逗号) [17] \(反斜杠) |
修复方式: |
对传递的参数进行验证,可使用正则表达式来处理, Pattern pattern = Pattern .compile("[`~!@#$%^&*()+=|{}':;',\"\\[\\].<>/~!@?#¥%……&*()——+|{}【】‘;:”“’。,、SELECT]"); 还有,一般像这种xss漏洞,喜欢窃取别人的cookie,这个也可以检测一下url中是否存在cookie字样 |
2、目录列表
漏洞描述: |
Web 服务器通常配置成不允许目录列表含有脚本和文本内容。不过,如果 Web 服务器配置不当,便有可能发送对于特定目录(而不是文件)的请求来检索目录列表。名称为“some_dir”的目录,其目录列表的检索请求示例如下:http://TARGET/some_dir/ 利用 Web 服务器和 Web 应用程序中会强迫 Web 服务器返回目录列表的特定问题,例如“URL 诡计”攻击,或形态异常的 HTTP 请求,是另一个获取目录列表的可能方式。您应该从应用程序或服务器供应商下载补丁,以解决这些安全漏洞。 在某些运行于 Win32 操作系统的 Web 服务器中,使用短文件名(8.3 DOS 格式)可以略过访问控制。 例如,Web 服务器会拒绝浏览 /longdirname/ 目录,但它的 DOS 8.3 对等名称 /LONGDI~1/ 却开放浏览。 注意:攻击者使用目录列表来查找 Web 目录中,通常不通过 Web 站点上的链接显现出来的文件。配置文件及可能含有敏感信息的 Web 应用程序其他组件,都可以利用这个方式来查看。 |
修复建议: |
1. 将 Web 服务器配置成拒绝列出目录。 2. 根据 Web 服务器或 Web 应用程序上现有的问题来下载特定安全补丁。部分已知的目录列表问题列在这个咨询的“引用”字段中。 |
修复方式: |
此处我采用的容器是jetty,所以可以直接修改一下配置,在webdefault.xml文件中,将dirAllowed属性值由true设置为false即可 <init-param> <param-name>dirAllowed</param-name> <param-value>false</param-value> </init-param> |
3、启用了不安全的 HTTP 方法
漏洞描述: |
可能原因 Web 服务器或应用程序服务器是以不安全的方式配置的 技术描述
似乎 Web 服务器配置成允许下列其中一个(或多个)HTTP 方法(动词) - DELETE - SEARCH - COPY - MOVE - PROPFIND - PROPPATCH - MKCOL - LOCK - UNLOCK - PUT 这些方法可能表示在服务器上启用了 WebDAV,可能允许未授权的用户对其进行利用。 |
修复建议: |
如果服务器不需要支持 WebDAV,请务必禁用它,或禁止不必要的 HTTP 方法(动词)。 |
修复方式: |
在nginx中 关闭WebDav,只允许GET 和 POST请求 location / { proxy_pass http://127.0.0.1:8080; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; limit_except GET POST { deny all; } } |
相关推荐
PHP网站常见安全漏洞及防范措施.pdf
本套课程主要为学员介绍了网站常见的安全漏洞及其利用方式您将获得简单了解网站安全漏洞的类型、概念及危害。深入了解sql注入漏洞、文件上传漏洞以及图片木马的形式等。掌握各种漏洞的利用方式,并在靶场中进行手操...
本套课程主要为学员介绍了网站常见的安全漏洞及其利用方式您将获得简单了解网站安全漏洞的类型、概念及危害。深入了解sql注入漏洞、文件上传漏洞以及图片木马的形式等。掌握各种漏洞的利用方式,并在靶场中进行手操...
常见网站漏洞及其防御 网站安全技术 常见网站漏洞及其防御 常见网站漏洞及其防御 常见网站漏洞及其防御
本文档主要总结了常见的web的安全漏洞及处理办法,这些基本上都是我们做项目过程中发现并处理过得,希望能帮助到大家!
ASP的漏洞已经算很少的了,想要找到数据库的实际位置也不简单,但这不表明黑客无孔可入,也正是这个观点,一般的程序设计员常常忘记仔细...在这里和大家谈谈ASP常见的安全漏洞,以引起大家的重视及采取有效的防范措施。
ASP.NET常见安全问题 一、SQL语句漏洞 二、HTML语法漏洞 对新手有帮助吧
不是固若金汤,随着PHP的广泛运用,一些黑客们也在无时不想找PHP的麻烦,通过PHP程序漏洞进行攻击就是其中一种。在节,我们将从全局变量,远程文件,文件上载,库文件,Session文件,数据类型和容易出错的函数这几个...
样本数据包括了675家网站,其中有财富500强公司的网站和另外175家著 JavaScript常见安全漏洞 2010年12月份,IBM发布了关于Web应用中客户端JavaScript安全漏洞的白皮书,其中介绍了IBM安全研究机构曾做过的...
之前在比赛里撸下来的网站源码,有前端常见的漏洞,可以复现找bug,都是漏洞很基础的网站,比赛中很常见的网站。
网站漏洞模板(42个常见漏洞),内含42种常见网站漏洞,让你水得快速,水得专业 -- 注:碰瓷类型漏洞脚本WaterExp.Py请关注公众号”黑客start”回复:”碰瓷“ 进行获取
包含了常见的128种网站漏洞类型,每项包含详细的描述以及整改建议。
据 IBM X-Force 2011 年中期趋势报告揭示,世界五百强的网站及常见知名网站中有 40% 存在 JavaScript 安全漏洞。本文将结合代码向读者展示常见 JavaScript 安全漏洞,旨在帮助读者能够在日常编码工作中规避这些安全...
该软件主要是为了测试网站的安全性 可以对常见的网站漏洞进行扫描
很多中小型的购物网站都存在这个漏洞。在提交订单的时候抓取数据包或者直接修改前端代码,然后对订单的金额任意修改。如下图所示:经常见到的参数大多为关于支付的逻辑漏洞这一块还有很多种思路,比如相同价格增加...
常见网站漏洞及解决方案 一、 典型网站漏洞分类 根据风险等级,网站漏洞通常可分为高风险、中风险和低风险三种。其中高风险漏洞是必须封堵的。中、低风险漏洞中有一部分是必须封堵的。还有一部分中低风险漏洞,由于...
XSS全称(Cross Site Scripting)跨站脚本攻击,是Web程序中最常见的漏洞。指攻击者在网页中嵌入客户端脚本(例如JavaScript),当用户浏览此网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的。比如获取...
实战远程服务型软件的漏洞发掘第5章 浏览器软件的漏洞发掘第6章 实战ActiveX控件的安全漏洞发掘第7章 实战开源软件的安全漏洞发掘第8章 安全防护软件漏洞攻防第9章 系统内核里发掘漏洞第10章 全面防范软件漏洞附录A ...
告诉你网站是如何被架构的,进而为后面分析脚本程序漏洞时,测试漏洞所用。 2、常见的各种脚本攻击技术。全面、细致的介绍脚本环境下的各种黑客技术,如coookie欺骗、注入、跨站、文件包含、获取webshell及提权等等...