web安全风险

2024-04-26

web安全风险(精选8篇)

篇1:web安全风险

对Web服务器的攻击可以说是层次不穷,即使防范措施做的最好,但是一不小心仍然会被 惦记。不过根据笔者的经验,其实大部分攻击都是可以防止的。而之所以还有这么多的网站被黑,主要的原因在于管理员忽视了一些基本的安全选项。

一、不要使用缺省的WEB站点

在IISWeb服务器安装部署完成之后,系统会建立一个默认的Web站点。有些用户就会直接使用这个站点进行网站的开发。这是一个非常不理智的做法,可能会带来很大的安全隐患。因为很多攻击都是针对默认的Web站点所展开的。

如在默认的Web站点中,有一个inetpub文件夹。有些攻击者喜欢在这个文件夹中放置一些 工具,如窃取密码、Dos攻击等等。从而使得他们可以远程遥控这些工具,造成服务器的瘫痪。由于默认的站点与文件夹的相关配置信息基本上是相同的,这就方便了攻击者对服务器进行工具。连信息搜集这一个步骤都可以省了。一些通过IP地址与服务扫描的 工具,其使用的就是默认站点这个空子。

防范措施:

其实这一个风险还是很容易避免的。最简单的方法就是在建立网站的时候,不要使用这个默认的站点。而且需要将这个站点禁用掉。其实这个方法是一个最基本的安全措施。如在路由器等网络设备上,出于安全需要,也要求管理员禁用掉默认的用户名。这是同样的道理。然后也不要使用原有的文件夹。用户可以将真实的Web站点指向一个特定的位置。如果要进一步提高安全性的话,还可以对这个文件夹设置NTFS权限等措施。可见要预防这个安全风险是轻而易举的事情。但是现实中,可能用户就是觉得其小,而没有引起足够的重视。从而给攻击者有机可乘。

二、严格控制服务器的写访问权限

在一些内容比较多、结构比较复杂的Web服务器,往往多个用户都对服务器具有写入的权限。如sina网站,有专门人员负责新闻板块,有专门人员负责博客,有专门人员负责论坛等等。由于有众多的用户对网站服务器具有写入的权限,就可能会带来一定的安全隐患。如某个用户的密码泄露的话,就会乘机对服务器进行破坏。其实虽然他们都具有对服务器的写入权限,但是他们的分工是不同的。每个人都有自己的领域,

再如一个大学校园的校园网,一个Web服务器实际上可能拥有多个网站,多个管理员。如各个学院有自己的网站等等。此时管理员都有对服务器修改的权限。权限控制不严格的话,那么服务器上的文件夹就可能会处于非常危险的境地。

防范措施:

这个防范措施也比较简单,其基本的原理就是给与用户最小的权限。如可以根据网站板块的不同,将相关的内容放置到对应的文件夹中。然后每个特定的用户只能够访问自己负责内容的文件夹。如此的话,即使某个管理员用户的密码泄露了,那么其影响的也只是一个文件夹。而不会对其他用户的文件夹产生不利影响。

其次就是最好不要讲Web服务器同其他的应用服务放置在一起。特别对于企业来说,可能为了节省成本,喜欢将Web服务器与文件服务器等部署在同一个服务器上。这是一种非常危险的方式。因为对于文件服务器来说,可能每个用户都具有往服务器上写入的权限。而这就会给木马、病毒等提供机会。从而也会影响到Web服务器的安全。

总之管理员需要严格限制Web服务器的写入权限。在分配用户权限的时候,如果要给用户写的权限,那么最好能够结合NTFS权限管理,只提供用户特定文件夹的写入权限。其次就是最好将Web服务器同文件服务器等分开,争取只有少量的用户具有对服务器写入的权限。

三、不定时的检查服务器上的bat与exe文件

大部分攻击者都系统使用bat或者exe文件来进行攻击。如有些攻击者会利用操作系统的任务管理器。让系统每天或者每隔一段固定的时间调用某个程序。这些程序就是以bat或者exe结尾的,或则是以reg文件结尾的。这些文件具有非常大的破坏性。如 可以利用这些文件更改注册表、建立隐形帐户、发送文件给 等等。

防范措施:

有时候即使管理员采用了病毒防火墙等措施,或者每天对服务器进行杀毒,也很难找到这些文件。此时管理员可以采用一个比较原始的方法,就是通过扩展名来搜索这些文件。然后查看是否有可疑的。笔者的做法是,Web服务器部署完成之后,先利用扩展名exe、bat、reg等作为查找条件,查找相关的文件。然后将文件名存放到一个表格中。以后每天或者每周再查找一次,然后跟原有的表格进行对比,看看是否增加了一些文件。如果有增加的话,那么这些增加的文件就可能是问题文件。用户可以使用记事本(注意千万不能够直接双击打开)这些文件,看看其代码。或者直接将这些文件删除掉,免除后患。

篇2:web安全风险

1、authentication节点

基于窗体(Forms)的身份验证配置站点,当没有登陆的用户访问需要身份验证的网页,网页自动跳转到登陆网页。其中元素loginUrl表示登陆网页的名称,name表示Cookie名称

2、authorization 节点

allow向授权规则映射添加一个规则,该规则允许对资源进行访问。

deny向授权规则映射添加一条拒绝对资源的访问的授权规则。

users=“*” 是指任何用户users=“?” 是指经身份验证的用户

注意: 运行时,授权模块从最本地的配置文件开始,循环访问 allow 和 deny 元素,直到它找到适合特定用户帐户的第一个访问规则。然后,该授权模块根据找到的第一个访问规则是 allow 还是 deny 规则来允许或拒绝对 URL 资源的访问。默认的授权规则为 。因此,默认情况下允许访问,除非另外配置。

如果在根目录下的web.config配置太繁琐,可以配置到相应目录下,例如User目录下的web.config文件

3、customErrors 节点

mode=“On|Off|RemoteOnly”>

defaultRedirect 可选的属性。指定出错时将浏览器定向到的默认 URL。如果未指定该属性,则显示一般性错误。

Mode 必选的属性。指定是启用或禁用自定义错误,还是仅向远程客户端显示自定义错误。

此属性可以为下列值之一。

值 说明

On 指定启用自定义错误。如果未指定 defaultRedirect,用户将看到一般性错误。

Off 指定禁用自定义错误。这允许显示标准的详细错误。

RemoteOnly 指定仅向远程客户端显示自定义错误并且向本地主机显示 ASP.NET 错误。这是默认值。

默认值为 RemoteOnly。

error 可选的元素。指定给定 HTTP 状态代码的自定义错误页。错误标记可以出现多次。子标记的每一次出现均定义一个自定义错误条件。

例如:

这里可以让用户自定义出错页。

4、pages 节点

validateRequest=“true”

该值确定 ASP.NET 是否针对危险值检查来自浏览器的输入。如果 ASP.NET 针对危险值检查来自浏览器的输入,则为 true;否则为 false。默认值为 true。

这个功能是为了防止跨站脚本等危险代码。使全局默认为true。只有小数页面,如搜索页面

Search.aspx设为 : ValidateRequest=“false” 。为了可以搜索类似 等内容,如果只是文字性的输入,可修改页 search.aspx 的设置,以增强系统安全性。

Security.config 配置说明

文件位于config目录

1、后台页面访问配置

noCheckAdminLogOn

后台不检查权限的页面

2、检查外站链接的后台页面配置

noCheckUrlReferrer

后台不检查来源页的列表,即管理员用户可以直接访问的文件列表,

后台设置是默认不允许直接访问,这样可以保护后页页面不被非法方式访问和外站链接访问,有效防止跨站请求伪造。

如果文件不在列表中,直接在URL 里访问,将出现错误提示:

产生错误的可能原因:

对不起,为了系统安全,不允许直接输入地址访问本系统的后台管理页面。

如需要,用户可以加上自定义的内容。

3、防止跨站请求伪造追加安全码的页面配置

checkSecurityCode

页面提交时检查安全码。

防止不正常操作(恶意操作)造成系统重大损失。也是对一些重要操作的保护,防止跨站请求伪造。

如:

4、页面操作权限码的配置

checkPermissions

页面操作权限码的配置,检查后台管理员是否有相关操作码的权限。

operateCode 为操作码 根据操作码判断是否存在此操作的权限。

checkType权限判断类型, or and

or操作码中的权限进行或运算,即有其中任何一种权限,就返回true

这个默认值是or 而且对于单一权限码的,可以不用配置

and 操作码中的权限进行与运算,即要求有全部权限才返回true 否则返回false.

AjaxLabel.config 配置说明

是对AJAX.aspx 的文件访问权限控制配置文件。

由于前台AJAX标签过于强大,会致使 AJAX标签 会出现一些危险性,对此我们做了一个XML安全文件来配置那些AJAX标签可以直接引用。这个AjaxLabel.config 文件是在 网站根目录的Config 目录下。如果标签没有记录,就会出现 本标签禁止访问!

例如:

是指标签名 为 “内容评论PK标签” 的标签可以被ajas.aspx调用,而且参数param只能为 “generalid”,类型为Int,这样能有效防止恶意攻击。

如果用户需自定义标签,而且需要ajax.aspx 文件调用,那就在AjaxLabel.config 中配置

app_offlineX.htm 文件作用

如果你要COPY站点,进行站点维护,部署,和进行大量修改,有可能要停掉你的WEB应用程序了,而以一个友好的方式提示给用户,比如什么“本网站正在更新”等等的信息,你可以把文件app_offlineX.htm 改名为app_offline.htm(大小写没关系)的静态HTM页面文件,其中修改成你要临时显示的内容,将其放在你的应用的根目录下。这样,任何外部的请求的话,都会马上被转移到该页面了。

网站维护完成后记得将文件名app_offline.htm改回。

AllowString.xml 文件配置

文件位于Common目录下

文件的作用是:会员发表信息时启用防XSS(跨站攻击)设置时,让用户设置允许会员提交部份特殊js 代码。

XSS是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。

例如:

功能是: 允许保留 nmousewheel=“return bbimg(this)” 和 nload=“resizepic(this)” 代码。这是对FCK上传图片功能的一个保留。

篇3:Web应用风险扫描的研究与应用

1.1 Web应用安全现状

随着互联网的发展, 金融网上交易、政府电子政务、企业门户网站、社区论坛、电子商务等各类基于HTML文件格式的信息共享平台 (Web应用系统) 越发完善, 深入到人们生活中的点点滴滴。

然而, Web应用共享平台为我们的生活带来便利的同时, 也面临着前所未有的挑战:Web应用系统直接面向Internet, 以Web应用系统为跳板入侵服务器甚至控制整个内网系统的攻击行为已成为最普遍的攻击手段。

据Gartner的最新调查, 目前75%以上的攻击行为都基于Web应用层面而非网络层面;同时数据显示, 三分之二的Web站点都相当脆弱, 易受攻击。

据中国互联网应急中心最新统计显示, 2009年我国大陆地区政府网页遭篡改事件呈大幅增长趋势, 被篡改网站的数量就达到52225个。2009年8月份, 公安部对国内政府网站的进行安全大检查, 发现40%存在严重安全漏洞, 包括SQL注入、跨站脚本漏洞等。

由此导致的网页篡改、网页挂马、机密数据外泄等安全事件频繁发生, 不但严重地影响了对外形象, 有时甚至会造成巨大的经济损失, 或者严重的社会问题, 严重危及国家安全和人民利益。

网页篡改:一些不法分子的重点攻击对象。组织门户网站一旦被篡改 (加入一些敏感的显性内容) , 引发较大的影响, 严重甚至造成政治事件。

网页挂马:网页内容表面上没有任何异常, 实际被偷偷的挂上了木马程序。网页挂马未必会给网站带来直接损害, 但却会给浏览网站的用户带来巨大损失。网站一旦被挂马, 其权威性和公信力将会受到打击。

机密数据外泄:在线业务系统中, 总是需要保存一些企业、公众的相关资料, 这些资料往往涉及到企业秘密和个人隐私, 一旦泄露, 会造成企业或个人的利益受损, 可能会给单位带来严重的法律纠纷。

1.2传统安全防护方法

企业Web应用的各个层面, 都已使用不同的技术来确保安全性。为了保护客户端机器的安全, 用户会安装防病毒软件;为了保证用户数据传输到企业Web服务器的传输安全, 通信层通常会使用SSL技术加密数据;防火墙和IDS/IPS来保证仅允许特定的访问, 不必要暴露的端口和非法的访问, 在这里都会被阻止;同时企业采用一定的身份认证机制授权用户访问Web应用。

但是, 即便有防病毒保护、防火墙和IDS/IPS, 很多企业仍然不得不允许一部分的通讯经过防火墙, 保护措施可以关闭不必要暴露的端口, 但是Web应用所必须的端口, 必须开放。顺利通过的这部分通讯, 可能是善意的, 也可能是恶意的, 很难辨别。

同时, Web应用是由软件构成的, 那么, 它一定会包含漏洞, 这些漏洞可能会被恶意的用户利用, 他们通过执行各种恶意的操作, 或者偷窃、或者操控、或者破坏Web应用中的重要信息。

1.3研究观点

网站是否存在Web应用程序漏洞, 往往是被入侵后才能察觉;如何在攻击发动之前主动发现Web应用程序漏洞?答案就是:主动防御, 即利用Web应用弱点扫描技术, 主动实现对Web应用的安全防护。

本文主要针对B/S架构Web应用系统中典型漏洞、流行的攻击技术、AJAX的隐藏资源获取、验证码图片识别等进行研究, 提出了一种新的面向Web的漏洞检测技术, 能够较完整得提取出AJAX的资源, 有效识别验证码。

2. Web应用风险扫描架构

Web应用风险扫描技术架构主要分为URL获取层、检测层、取证与深度评估层三个层次。

URL获取层:主要通过网络爬虫方式获取需要检测的所有URL, 并提交至检测层进行风险检测。

风险检测层:对URL获取层所提交的所有URL页面进行SQL注入、跨站脚本、文件上传等主流Web应用安全漏洞进行检测, 并将存在安全漏洞的页面和漏洞类型提交至取证与深度评估层。

取证与深度评估层:针对存在安全漏洞的页面, 进行深度测试, 获取所对应安全漏洞的显性表现, (如风险检测层检测出该网站存在SQL注入漏洞, 则至少需可获取该网站的数据库类型) ;作为该漏洞存在的证据。

3. 网络爬虫技术—URL获取

网络爬虫是一个自动提取网页的程序, 它通过指定的域名, 从一个或若干初始网页的URL开始, 获得初始网页上的URL, 在抓取网页的过程中, 不断从当前页面上抽取新的URL放入队列, 直到满足系统的一定停止条件。

网络爬虫的工作流程较为复杂, 首先根据一定的网页分析算法过滤与主题无关的链接, 保留有用的链接并将其放入等待抓取的URL队列。然后, 根据搜索策略从队列中选择下一步要抓取的网页URL, 并重复, 直到达到预设的停止条件。另外, 所有被爬虫抓取的网页将会被系统存贮, 进行一定的分析、过滤, 并建立索引, 以便之后的查询、检索和取证及报表生成时做为源数据。

为了更加高速、有效地获取网站中所有的URL链接, 在本Web应用风险扫描技术研究中, 所采用的网络爬虫技术着重解决三个问题:

(1) 对抓取目标的描述或定义;

(2) 对网页和数据的分析与过滤;

(3) 对URL的搜索策略。

3.1网页抓取目标

网页弱点爬虫对抓取目标的描述或定义基于目标网页特征抓取、存储并索引, 对象是网站的网页;通过用户行为确定的抓取目标样例, 其中, 网页特征可以是网页的内容特征, 也可以是网页的链接结构特征, 以及网页代码的结构特征等。

3.2网页分析算法

基于网页内容的分析算法指的是利用网页内容 (文本、数据等资源) 特征进行的网页评价。该算法从原来的较为单纯的文本检索方法, 发展为涵盖网页数据抽取、机器学习、数据挖掘、语义理解等多种方法的综合应用。

根据网页数据形式的不同, 将基于网页内容的分析算法, 归纳以下三类:

第一种针对以文本和超链接为主的无结构或结构很简单的网页;

第二种针对从结构化的数据源动态生成的页面, 其数据不能直接批量访问;

第三种针对的数据界于第一和第二类数据之间, 具有较好的结构, 显示遵循一定模式或风格, 且可以直接访问。

3.3网页抓取策略

爬虫的抓取策略目前普遍的采用的方法有:深度优先、广度优先、最佳优先三种。由于深度优先在很多情况下会导致爬虫的陷入 (Trapped) 问题, 网页弱点爬虫目前采用的是深度优先和最佳优先方法组合方法。

深度优先搜索策略:指在抓取过程中, 在完成当前层次的搜索后, 才进行下一层次的搜索。网页弱点爬虫采用深度优先搜索方法为覆盖指定网站存在弱点的网页。其基本思想是认为与初始URL在一定链接距离内的网页具有弱点相关性的概率很大;并采用将深度优先搜索与网页过滤技术结合使用, 先用深度优先策略抓取网页, 再将其中无关的网页过滤掉。这些方法的缺点在于, 随着抓取网页的增多, 大量的无关网页将被下载并过滤, 算法的效率将变低, 因此网页弱点爬虫采用了最佳优先搜索策略来弥补这个缺点。

最佳优先搜索策略:最佳优先搜索策略采用基于网页内容的网页分析算法, 预测候选URL与目标网页的相似度, 或与主题的相关性, 并选取评价最好的一个或几个URL进行抓取。它只访问经过网页分析算法预测为“有用”的网页。

4. 漏洞检测技术—风险检测

4.1主要Web应用漏洞

4.1.1 OWASP十大安全威胁

开放式Web应用程序安全项目 (OWASP, Open Web Application Security Project) 是一个组织, 它提供有关计算机和互联网应用程序的公正、实际、有成本效益的信息。其目的是协助个人、企业和机构来发现和使用可信赖软件。美国联邦贸易委员会 (FTC) 强烈建议所有企业需遵循OWASP所发布的十大Web弱点防护守则、美国国防部亦列为最佳实务, 国际信用卡资料安全技术PCI标准更将其列为必须采用有效措施进行针对性防范。

4.1.2 CWE/SANS 25大危险编程错误

一般弱点列举 (Common Weakness Enumeration CWE) 是由美国国家安全局首先倡议的战略行动, 该行动的组织最近发布了《2010年CWE/SANS最危险的程序设计错误 (PDF) 》一文, 其中列举了作者认为最严重的25种代码错误, 同时也是软件最容易受到攻击的点。

OWASP Top 10, 所关注的是Web应用程序的安全风险, 而CWE的Top 25的覆盖范围更广, 包括著名的缓冲区溢出缺陷。CWE还为程序员提供了编写更安全的代码所需要的更详细的内容。

4.2 Web应用漏洞规则库

我们经过多年Web应用安全领域的研究, 结合国内外优秀组织的经典总结、描述以及验证, 建立起一套几乎涵盖所有可能带来安全威胁的Web应用安全漏洞的丰富的Web应用漏洞规则库, 包括各个安全漏洞的产生原理、检测规则、可能危害、漏洞验证等, 通过自动化手段, 对网络爬虫所获取到的网站页面进行逐一检测。

随着安全漏洞的不断产生、攻击手段的不断演变, Web应用漏洞规则库也不断获得充实和改进。

5. 模拟渗透测试—取证与深度评估

5.1模拟渗透测试

通常我们所理解的渗透测试, 是指具有丰富安全经验的安全专家, 在对目标系统一无所知的情况下, 通过收集系统信息, 进行具有针对性的安全攻击和入侵, 获取系统管理权限、敏感信息的一个过程。这包括三个要素:丰富安全经验的安全专家 (人) 、系统漏洞 (漏洞检测) 、权限获取或信息获取 (取证) 。由于组织内部一般并不具备具有专业渗透技术的安全专家, 所以通常依靠于第三方安全公司。渗透测试的过程中, 虽然签署了一系列的保密协议, 但是不可避免地会发生组织内部信息泄露的风险。

结合大量优秀安全专家的渗透测试经验, 以及对各类WWeb应用安全漏洞的显性分析 (即如果存在该漏洞, 其具体表现是什么) , 在完成网站中各个页面的漏洞检测后, 对所存在的安全漏洞进行验证, 即获取相应的权限或信息, 达到模拟渗透测试的效果, 不仅可以大大降低漏洞检测的误报率, 准确呈现该漏洞的存在和取证;而且可以在一定程度上替代第三方的渗透测试人员, 自主进行安全扫描, 降低信息泄露的风险。

5.2安全漏洞取证分析

对安全漏洞的取证分析, 在此以SQL注入漏洞为例进行简要描述。

SQL注入类型根据原理可以分为以下几类:数值型、字符型、搜索型、错误型、杂项型。在检测出相关注入漏洞后, 根据不同后台数据库, 采用不同的数据库注入策略包来进行进一步的取证和渗透。图2讲述了SQL注入检测的流程:通过网络爬虫获取的URL, 成为SQL注入检测的输入, 通过图2流程完成SQL注入、渗透和审计。

摘要:面对信息安全攻击从网络层和系统层向应用层转变, Web应用系统作为组织对外服务门户, 面临巨大威胁。Web应用漏洞扫描技术是一类重要的信息安全技术, 与防火墙、入侵检测系统互相配合, 能够有效提高信息系统Web应用层的安全性。通过对Web应用的深度扫描, Web应用的管理员或开发商可以快速了解Web应用存在的安全漏洞, 客观评估Web应用的风险等级, 在黑客攻击前进行有效防范。

关键词:Web应用,信息安全,漏洞扫描,网络爬虫

参考文献

[1]胡勇.网络信息系统风险评估方法研究.四川大学, 2007.

[2]程建华.信息安全风险管理、评估与控制研究.吉林大学2008.

[3]陈光.信息系统信息安全风险管理方法研究.国防科学技术大学2006.

[4]安永新.基于风险的Web应用测试研究.重庆大学2002.

[5]黄明, 梁旭.ASP信息系统设计与开发实例.机械工业出版社2004.

[6]启明工作室.ASP网络应用系统实用开发技术.人民邮电出版社2004.

[7]S.Raghavan and H.Garcia-Molina.Crawling the hidden web[C].Proceedings of the27th International Conference on Very Large DataBases (VLDB) , 2001.

[8]L.Barbosa and J.Freire.Anadaptive crawler for locating hidden-web entry points[C].Proc.of the16th international conference on World Wide Web, 2007:441-450.

[9]Improving Web Application Security Using New2010OWASP Top10Risk Model:Best Practices for Mitigating Online Vulnerabilities and Threats.

篇4:Web安全呼唤“新型”安全网关

“目前针对大型企业、中小型企业用户的安全解决方案还有很多地方需要完善。”在思科工作13年、新任安启华研发副总裁郑国权告诉记者,统一的威胁管理系统(UTM)只能提供非常有限的反病毒和反恶意软件保护,而新型高端安全网关对于规模较小的企业组织而言又价格不菲。因此,一个能对付各种安全威胁、兼具优良性能的安全解决方案,对于企业用户的经营行为来说至关重要。

作为一种新型的、可以保护Web系统免遭攻击的网络安全设备,Web安全网关成为确保用户系统安全的重要途径。在当前国内市场上的Web安全产品中,Web安全网关是比较受厂商青睐的产品。而作为一家成立于2004年、专注于Web安全网关的公司,李松表示,安启华为企业提供的SWG安全网关,集成了Anti-malware、URL-Filtering、Internet应用控制、带宽管理和Web服务器保护等功能,产品功能架构在专门为内容安全而设计的并行处理操作系统Anchiva OS之上,同时在自主研发高性能安全芯片的驱动下,打破了Internet应用安全性能瓶颈,在不影响性能的情况下,为企业提供实时、动态的应用防护。

篇5:web安全风险

web安全工程师这个职位在甲方和乙方公司都有,在安全这块,甲方指提出安全需求的公司,而乙方公司则是指提供安全服务的公司,一般的中小型公司没有安全岗位,甲方的安全部大多都挂在运维部下面。另外在大公司和小公司web安全工程师做的事情也不一样,大公司工作分的相对细,一般做渗透测试的就只做渗透测试,在[正规小公司]就不一样了,一般本职工作就比较多,可能安全服务、安全研究以及安全开发都会放一部分在身上,这对工程师的要求比较高,也非常难招到。这也就是平时经常跟朋友开玩笑说的[招个会搞运维、又懂安全、又懂开发的,打灯笼都难找],当然这也是我对公司安全team成员的要求。

回到正题,如何做一名好的web安全工程师?主要是[职业操守]和[技术]两大方面。

职业操守是为人处世最基本的东西,职业操守好的人就比较靠谱,我非常讨厌的三种人就是

1.经常莫名其妙联系不上,不注重沟通。

2.经常无故失约,放鸽子。

3.工作没有积极性,非本职工作怨天尤人。

这三点都有一个共同点就是[尊重]。从这三点就可以看出一个人靠谱不靠谱,靠谱的人往往注重交流,不管是工作还是生活,他能随时把最新情况通知出来,有非常强的合作精神,能让你有搭档的感觉,

态度决定一切,这是非常好的一句话,做任何事之前首先要看的就是态度,在资源这么丰富的互联网时代,如果有心做一件事,技术不好网上都可以找,做事态度不好,能力再强也没用。

技术这块,方向不同需要的技术也不一样,不过既然是做安全工作,必须要知道的更全面,就算不做到熟练,熟悉还是得要。

我之前说过一句话[没有安全研究能力的公司不能叫安全公司],研究能力是一家公司创新的根本,所以web安全工程师一定要具备[安全研究能力]。如果一个web安全工程师做渗透测试,没有安全研究能力,就永远跨不过脚本小子的坎,只会使用别人的研究成果,从来不去思考原理性的东西,就算经验再多再熟练也只是做重复的事情,没有创新性,不能对现有资源进行改进。

我还说过一句话[编程和运维是安全的基础],为什么这么说?代码写多了,思维逻辑就能转的很快,对安全问题也能看的更仔细,理解的更通透,能让你在技术的任何领域都能快速成长,所谓一通百通。运维能力在安全中也非常重要,举个最简单的例子,如果跑去别人公司做应急响应,连别人的设备、环境、架构这些都不懂,那后面的应急响应是非常困难的,另外具备运维能力,也能让自己快速的搭建各种环境,快速学习。

下面我总结出来一个好的web安全工程师应该具备的素质,用人单位在招人的时候可以参考下:

1.靠谱的职业操守。

2.有积极进取的心,能够不断强化自己。

3.安全研究能力,创新能力,能够对现有资源进行改进。

篇6:web安全风险

让我们来看看到底发生了什么。

一个名为Goatse Security的 团伙发现了AT&T网站的一个安全漏洞,窃取了用户的ICC-ID(Integrated Circuit Card ID,IC卡识别码)并取得了与之相连的电子邮件地址。接下来,他们利用一段PHP代码反复向AT&T网站提供大量ICC-ID,然后取得相关电子邮件地址。就这样,他们得到了预计11.4万ICC-ID及其相关电子邮件地址。

我觉得大家都会觉得这是个问题,而且是个普遍存在的问题。在我们Foundstone的安全顾问服务中,经常会遇到我们称之为“信息公开”漏洞的问题。通过搜集用户或企业的这些信息,可以全面了解其正在使用的技术或用户行为。同时借助社会工程技术,就可以有效的获取一些原本无法得到的企业资源。

然而,这样的漏洞根本不算是最严重的漏洞。我们发现主要问题在于在Web应用程序的身份认证系统存在故障。也就是说,用户会话需要避免横向权限升级,因为横向权限升级将允许攻击者得到另一用户信息。所以,与其说这是iPad的漏洞问题,不如说是我们在进行应用安全评估时经常遇到的普通问题。

鉴于这个漏洞利用了一个Web应用程序缺陷,我认为应该总结一下在应用安全评估时最常见的5个问题。

授权失败

恶意认证用户可以接触它本无权接触的信息。通常这样会导致权限升级。如果权限升级发生在同级别的用户中,则被称为“横向权限升级”。如果用户可以将权限升级至更高级别用户,即为“纵向权限升级”。在AT&T事件里,结果只是信息泄露,而没有权限升级。

跨站点脚本 (XSS)

跨站点脚本攻击需要攻击者在应用程序的数据领域中输入恶意代码(通常是Java脚本),而这些数据领域对该应用程序的其他用户而言也是可见的。当受害用户浏览该数据领域时,该Java脚本就在该用户浏览器中运行,并执行一些对攻击者有用的功能。反向XSS攻击通常用来进行钓鱼攻击。

跨站点请求伪造 (XSRF)

跨站点请求伪造攻击(也叫XSRF,CSRF,或者会话控制)允许恶意用户执行对攻击者选定的用户会话的操作,从而泄露用户信息。这类攻击利用了HTTP无状态的弱点。

密码重置功能

通常来说,应用程序允许用户在忘记密码的情况下重置密码。密码提醒/重置程序通常很容易成为被攻击的对象。很多情况下,攻击者首先列出所有具有同样特征的有效用户名。一旦这些用户名中有一个被辨认出来,那么密码问题的答案都可以猜出来。一般情况下,在密码重设页面没有输入次数的限制。而且用户在社交网站上设置的一些问题的答案也可能被攻击者猜中。

SQL注入

SQL注入允许攻击者在关系数据库里执行任意SQL语句。通常,漏洞出现通常都是源于应用程序SQL查询的不安全构造。即使在数据验证很少或没有的情况下,应用程序也会信任攻击者提供输入的信息,执行任意的恶意SQL语句。成功的SQL注入攻击可以泄露基础操作系统信息。

建议

尽管现在是“应用程序101”,我们仍然可以在每一份应用程序安全测评报告中看到几乎所有的5个问题。下面是几条建议:

授权失败

会话应该使用基础框架提供的会话容器。为了避免横向权限升级,应用程序需要对以下三点进行三次确认:

需确认的授权内容:

主体:例如用户或群组

操作:例如CRUD —— 创建、读取、更新、删除

客体:例如数据因素(账号、购物卡ID等)

跨站点脚本 (XSS)

为了避免诸如跨站点脚本等数据验证攻击,我们建议采取“深层防御”策略,包括输入验证和输出消毒,

阻止数据验证攻击的第一步就是要验证输入来防止接受任何在该应用程序中或数据终端(也就是浏览器)中有特殊意义的语句。我们推荐的输入验证方式是“默认拒绝”,只接受含有预期值(也就是白名单)的输入。日常输入验证必须始终检查数据长度、范围、类型和格式。

消毒应用程序HTML中的恶意语句与防止跨站点脚本攻击(XSS)同等重要。比如,“<”应编码为“<”;尽管对于用户来说,这是“少于”的意思,但是它不会被用户浏览器解释为HTML标签的起始点。

跨站点请求伪造 (XSRF)

要防止XSRF攻击,一种有效而又不唐突的方法就是在每一个可以改变某些外在状态的表格中引入一个“随机数”,或者一次性口令。每次用户加载表格,一个不同的“随机数”就 入表格中的一个隐藏区域内。当表格提交后,应用程序检查该随机数是否有效,然后再运行所请求的操作。“随机数”可以是现有会话的标识信息,这种信息一般都会附加在每个请求之后。不过,只有当目标应用程序不存在任何XSS漏洞的情况下,这种方法才能有效。

另外一些更加不唐突的避免XSRF的方法包括使用“Captchas”、对重要操作重新授权、或使用独立授权密码。这些方法很有效,但也会给用户带来额外负担。从用户界面角度来看,这些方法并不常用。

密码重置功能

密码重置功能的推荐方法是:

1.这种方法需要用户输入用户名。把下面信息传递给终端用户,“如果用户名与系统中的现有账户吻合,一封写有下一步说明的电子邮件将发至账户所有者的注册电子邮件地址。”

2.这封电子邮件必须含有唯一的、带有时间限制的链接(比如,24小时内有效),而且只能由用户点击一次。

3.点击链接后,用户将看到几个问题。

4.成功回答问题后,用户将被允许修改其密码,同时对应用程序进行授权。

SQL注入

防止SQL注入攻击需要采取“深层防御”策略。第一步是使用阻止XSS攻击中提到的白名单方法进行输入验证。

除此之外,还需要使用与动态SQL相反的参数查询用。参数查询可以将查询与数据分离,支持数据库引擎在数据缺失情况下决定运行查询的最佳方法。数据将由查询执行计划在运行时间内使用,保证查询执行计划不会被恶意数据修改。

结束语

我猜这个应用程序漏洞之所以得到如此关注,是因为,毕竟我们所谈论的是苹果。围绕苹果产品的炒作,比如对iPhone和iPad的炒作,令人震惊。然而事实是,这种漏洞其实并不是什么新闻,而是每天都在我们身边发生。

现在,很多应用程序并没有经过全面测试便推向市场。考虑到很多企业目前面临的市场压力,这种现象就变得一点都不奇怪。所以,尽管我认为这个漏洞并不像媒体渲染的那样严重,但是它还是让我们看到一个好的安全程序和生命周期研发操作是成功的关键。

在上面提到的最常见的5种Web应用程序漏洞中,很多都可以通过计划和安全测试来消除。你所面临的最大挑战就是说服你的老板,让他相信这些漏洞确实存在。不过我想现在你又多了一种有力武器来达到目的。

注释:作者George Kurtz,现为迈克菲首席技术官。

篇7:web安全风险

XX公司网站首页被做了搜索引擎劫持,跳转到 网站,XX公司技术负责人早上9点10分发现情况,联系到我们公司,希望给他们做一次远程应急,需求是[清除web后门,分析出入侵的漏洞和过程,以及提出安全建议],

首先根据场景需要想到的东西,XX公司网站现在的现象,发现问题的时间以及他们的需求。

已经知道XX公司网站首页被做了搜索引擎劫持,一般有三种方式:

1.js跳转,用js来识别搜索引擎做跳转。

2.php/asp等脚本代码,用来识别搜索引擎做跳转。

3.webserver配置文件代码识别搜索引擎做跳转。

这三种情况是比较常见的,我做的应急响应中都遇到过不少,第一点我们需要的是 是通过什么方式做的劫持,我们这里假设是第一种,那么 有两种方式,第一是直接修改网页文件插入代码,第二种是通过在数据库里面写入代码,然后网站正常读取显示在网页上。这里我们假设是通过修改文件的方式,因为这种最常见,这里我们可以收到一个信息,首页文件的最后修改时间,这个时间是 入侵后的时间A,当然这个文件时间也可能被改。如果这个时间被改,我们还有早上9点10分这个时间B。

第一件事先查web后门,可以从几个方面入手,

1.web后门查杀软件

在我博客都找的到,windows上推荐D盾,linux上我有个小脚本,不过写的很简单,效果一般,另外我给公司写了一个比较满意的,不过不能放出来,哈哈。

2.文件最后修改时间

可以通过命令检查某个时间点后被修改过的脚本文件,再检查是不是web后门。

3.根据大概时间慢慢分析日志

最笨的方法,不到迫不得已不要用这个方法,比较费时间,而且不直接。因为一般的websever不记录POST、COOKIE这些,光从URL需要有经验的人才能看出来。

第二件事查找入侵的漏洞。

假设我们找到了后门seay.php和action.php等等,然后查看后门的最后修改时间,如果这个时间不是入侵者后期修改过的,那么这个时间就是入侵时间,直接去日志里面找这个时间附近的日志就行。就算被修改过也没事,直接把这个web后门的文件名到web日志里面搜索,就可以高效的定位到入侵时间和IP。

那么现在已经找到入侵者的入侵时间和IP,接下来的一个技巧,怎么快速提取入侵者的行为日志,那就是通过入侵者IP检索出所有这个IP的日志,然后就可以很顺利的找到漏洞所在了。

这是比较简单的一个例子,关于系统安全和一般大型网络架构的东西以后有时间再写吧。最近想多写点工作经验的东西,喜欢就来个赞,不喜勿喷。

篇8:Web服务安全机制和安全技术

Web服务是一种松耦合分布式计算模型,是下一代分布式系统的核心部分,它将业务逻辑封装Internet 的软件组件——服务,并发布该服务供其它异构分布式环境下的用户远程调用。Web服务的松散耦合性、语言中立性、平台无关性和开放性使得它将成为下一代电子商务的架构,然而Web服务要被广泛地接受,要取得成功,其安全性是一个重要因素。

Web服务的安全性是指不同角色(如服务提供者、请求者与中介等)之间相互发送的各种消息、Web 服务的接口描述、URI 和数据内容以及 Web 服务绑定与调用过程中消息内容的安全性。

Web服务是采用传输层协议(如HTTP)之上的SOAP作为其传输协议的。以下分别介绍传输层和SOAP层的安全问题。

1 Web服务安全机制

目前Web服务安全在不同层次上已经有许多有效的安全技术。其安全技术主要可以在两个方面上实现:传输级(点到点)安全、消息级(端到端)安全。

1.1 传输级安全机制

两个端节点(Web服务客户和Web服务)之间的传输渠道可以保证传输级(点到点)的安全通信。传输级的安全协议主要有两个,一个是IPSec,另一个是SSL。传输级安全机制IPSec是指运行在网络层上的一系列协议,它提供的安全服务包括:身份认证、加密、完整性和不可否认等。SSL(安全套接字层)是一组运行在传输层和应用层之间的协议,它提供的安全服务与IPSec相同,但专用性更强。它不是通过对网络层数据报进行签名或加密的方式来保护所有TCP/IP信息的安全性,而是只保护特定应用程序生成的TCP信息的安全性。传输级安全机制有如下的局限性:1)传输级安全机制紧密耦合并依赖于下层平台、传输机制等;2)在传输级不能实现跨多跳网络拓扑和过中介体的端到端的安全服务。

1.2 消息级安全机制

创建Web服务的核心目的是提供异质语言与平台的集成与交互,而传输级安全机制与传输平台密切相关。在传输层外部,当数据被一个中介体收到并向前转发时,中介体可能会执行路由消息甚至是修改消息的操作,如添加报头、加密或解密消息片段等。这样数据的完整性和任何随数据流动的安全信息都可能会丢失。因此,我们需要一种异质平台与体系架构之间端到端的安全通信机制。

为此IBM和Microsoft发布了Security in a Web Services World:A Proposed Architecture and Roadmap的发展规划[1],描述了Web服务环境的安全发展策略。根据这个发展规划,将开发一系列Web服务安全技术规范来确保端消息级安全,这些规范包括WS-Security, WS-Policy, WS-Trust, WS-Privacy, WS-SecureConversation,WS-Federation和WS-Authorization。

2 Web服务安全技术

针对Web服务端到端的安全问题,各大计算机组织和公司正在努力研究,制订一系列的标准,开发相应的技术和解决方案。现阶段已经取得了一些成果,提出了一系列的规范和草案。

2.1 XML Signature和XML Encryption

数字签名是保证数据完整性和一致性的手段。XML-Signature Syntax and Processing (XML签名语法与处理)规范描述了数字签名的XML表示以及计算、验证XML表示的数字签名过程。 XML Signature提供了灵活的数字签名机制,不仅支持对网络资源和消息整体的签名,也支持对XML文档或消息的部分进行签名;既支持公钥数字签名,也支持对称密钥的密钥散列验证码。

数据的机密性是通过对数据加密来实现的。XML Encryption Syntax and Processing(XML加密语法与处理)规范描述了对数据的加密过程以及加密结果的XML表示。数据可以是XML文档、XML元素或者是XML元素的内容甚至是任意的数据。

2.2 WS-Security[2]

WS-Security规范是由IBM,Microsoft,VeriSign公司联合发布的,规范实质上是对SOAP协议的扩展,在SOAP中引入现有的XML Signature和XML Encryption标准,根据这些标准,它定义了一系列的SOAP头消息以包含数字签名、加密信息和安全令牌等安全信息。

WS-Security定义的所有元素都包含在<Security>报头块中,<Security>报头块提供了向SOAP报头中附加安全相关信息的机制。WS-Security描述了对SOAP消息的增强以提供对消息的完整性、机密性的质量保证和单一消息验证,即在Web服务的环境下,如何利用XML Signature和XML Encryption来对SOAP消息进行签名和加密,保证端到端消息的一致性和机密性。

WS-Security安全机制本身并不提供完整的安全性解决方案。相反,WS-Security是一种构件,它被设计成用来构建多种安全性模型(包括PKI、Kerberos和SSL)的基础,还可以与其它Web服务扩展和更高级的特定于应用程序的协议联合使用,以适应多种安全模型和加密技术。

2.3 XKMS& SAML& XACML& SPML

XML Key Management Specification(XML密钥管理规范)是W3C的XML Key Management Working Group制订的。XMKS与XML Signature和XML Encryption结合,对密钥、证书进行管理,包括注册、分发、撤销等等,它还允许客户通Web服务取得密钥信息。

Security Assertion Markup Language(安全断言标记语言)是交换验证和授权信息的XML框架,它定义了对验证、属性和授权信息进行XML编码的语法和语义以及这些安全信息的传输协议。SAML的一个主要目的就是“一次签到”(Single Sign-On) ,就是说用户只需要在一个域中通过验证,就可以使用其他域中的资源,而不需要重新验证身份。

eXtensible Access Control Markup Language(可扩展访问控制标识语言)是一种基于XML的开放标准语言,它是一个描述(访问控制)策略语言,同时也是一个描述访问控制判断请求/应答(request/response)的语言。它设计用于描述安全策略以及对网络服务、数字版权管理以及企业安全应用信息进行访问的权限,使得可以简化企业的访问控制。

Service Provisioning Markup Language (服务配置标记语言)是一个XML框架,用于在不同组织使用的网络和应用程序间管理诸如用户帐户和权限的资源。它允许组织之间安全快速地建立起Web服务和应用程序的用户接口。让用户或系统自动接入使用不同底层信息技术的电子服务,使客户不必受困于所有权问题。该标准与已获得批准的OASIS标准,例如SAML和WS-Security一起将使运行在一个企业中的服务和应用程序与运行在不同企业的组织架构中的服务和应用程序交换信息和互通更为容易。

2.4 WS-Policy[3]

Web Services Policy Framework(Web服务策略框架)提供了一种通用模型及相应的语法,以便描述 Web 服务的策略。WS-Policy 将策略定义为一组策略替换选项,其中每个策略替换选项又是一组策略断言。某些策略断言指定了一些传统的要求和功能,这些要求和功能最终将出现在网络中(如身份验证方案、传输协议选择)。另一些策略断言并不直接表现在网络中,但却对正确地选择和使用服务至关重要(如隐私策略、QoS 特性)。WS-Policy 的目标是提供使 Web 服务应用程序能够指定策略信息所需的机制。

2.5 WS-Trust[4]

Web Services Trust Language (Web服务信任语言)在WS-Security的基础上提供了安全令牌的请求和处理以及信任关系的管理,描述了Web服务的信任模型和处理流程,安全令牌颁发、验证和交换的消息语法,信任关系的评估方法。通过WS-Trust,应用系统可以参与Web服务框架包括WSDL服务描述、UDDI businessServices和bindingTemplates,以及SOAP消息等等的安全通信。在WS-Trust的信任模型中,安全令牌的颁发、验证和交换由安全令牌服务提供。一个服务请求者发送请求,如果策略允许而且满足接收者的需求,那么请求者就得到安全令牌响应。

2.6 WS-Privacy

描述Web服务提供者和请求者如何声明主题隐私权首选项和组织隐私权实践声明的模型。通过使用WS-Policy、WS-Security和WS-Trust的组合,商业机构可以声明并指出遵守声明的隐私权策略。此规范描述一个关于如何把隐私权语言嵌入到WS-Policy的描述,以及如何使用WS-Security把隐私权声明与消息关联起来的模型,它还描述如何使用WS-Trust机制,同时为用户首选项和组织实践声明评价这些隐私权声明。

此规范还在开发中,尚未正式发布。

2.7 WS-SecureConversation[5]

Web Services Secure Conversation Language(Web服务安全会话语言)在WS-Security的基础上定义了构建和共享安全上下文,并从安全上下文中派生会话密钥的机制。

WS-Security提供了基本的消息验证机制,但是只适用于简单和单向的消息,当通信方需要多次交换消息时,就需要建立安全上下文。这个安全上下文在整个会话的过程中由通信各方共享。WS-SecureConversation定义了用于表示安全上下文的<SecurityContextToken>元素以及建立安全上下文的三种方式,包括由安全令牌服务建立,由通信的一方建立并通过消息传播,通过协商建立。

2.8 WS-Federation[6]

Web Services Federation Language(Web服务联盟语言)定义了一种联合不同信任领域间的身份、身份验证和授权的集成模型。它旨在把企业在不同身份验证和授权系统中共享用户和机器身份信息的方式标准化。该规范描述了如何将联合模型应用于活动请求方(如SOAP应用程序)。规范的主要目标是定义对那些应用于活动请求方的身份、身份验证和授权信息进行联合的机制。WS-Federation中描述的联合模型构建与WS-Security 和 WS-Trust 建立的基础之上。因此,此模型定义了在活动请求方上下文内请求、交换及颁发安全性令牌的机制。

2.9 WS-Authorization

WS-Authorization定义了Web服务如何管理授权数据和策略。和WS-Privacy一样,此规范还在开发中,尚未正式发布。

3 总结和分层安全模型的提出

保证Web服务安全通信的机制有两种,传输级安全机制紧密耦合于下层平台,只能保证点到点的安全通信;而消息级安全机制能够提供异质环境的端到端安全保证。整个Web服务安全层次结构如图1所示。

其中XML Signature和XML Encryption是比较成熟的WK推荐规范,定义了数字签名和加密的XML编码格式。XKMS、SAML、XACML、SPML、WS-Security、WS-Policy、WS-Trust、WS-SecureConversation、WS-Federation等规范都是定义消息格式,大多只是定义了一个框架。这些协议自身并不为Web服务提供一个完整的安全解决方案。

根据Web服务安全规范的分层特性,本文提出了如图2所示的Web服务分层安全模型。

根据此模型,按照预先定义的安全策略文件,服务请求方的SOAP消息首先根据XML Signature和XML Encryption规范进行签名和加密处理,其中密钥管理依赖于XKMS;其次,基于SAML 和XACML 技术实现认证和访问控制;根据WS-Policy和WS-Trust规范可以明确消息的信任关系和指明隐私策略;最后通过WS-SecureConversation构建安全上下文,并从安全上下文中派生会话密钥。由以上步骤构建的安全SOAP消息通过传统传输层安全机制发送到服务提供方,服务提供方按照相应的顺序对SOAP消息进行处理。

综上所述,此模型使用了多个Web服务安全协议,通过他们之间的组合合作构筑了一个多层的安全模型。

摘要:Web服务安全问题是近年来信息安全的研究热点之一。介绍两种Web服务安全机制,即传输级安全机制和消息级安全机制,随后详细介绍实现Web服务消息级安全所用到的安全技术,最后对Web服务安全性进行总结并提出了一种新的Web服务分层安全模型。

关键词:Web服务,安全,规范,消息级

参考文献

[1]IBM,Microsoft.Security in a Web Services World:A Proposed Archi-tecture and Roadmap.http://www.ibm.com/developerworks/ibrary/ws-secmap/,2002,4.

[2]IBM,Micosoft,VeriSign.Web Services Security(WS-Security)Version1.0.http://www.ibm.com/developerworks/library/ws-secure/,2002,4.

[3]IBM,Microsoft,BEA,SAP AG.Web Services Policy Framework(WS-Policy)Version 1.0.http://www.ibm.com/developerworks/library/ws-polfam/,2006,4.

[4]IBM,Microsoft,RSA Security,VeriSign.Web Services Trust Language(WS-Trust)Version 1.0.http://www.ibm.com/developerworks/li-brary/ws-trust/,2005,2.

[5]IBM,Microsoft,RSASecurity,VeriSign.Web Services Secure Conversa-tion Language(WS-SecureConversation)Version 1.0.http://www.ibm.com/developerworks/library/ws-secon/,2002,12.

本文来自 360文秘网(www.360wenmi.com),转载请保留网址和出处

【web安全风险】相关文章:

安全风险提示05-24

患者安全风险04-16

安全风险责任05-16

安全风险评价05-03

风险和安全05-17

油田安全风险05-21

安全风险管控论文05-12

安全风险抵押范文05-23

安全风险管控免费06-22

安全风险管控方案06-22

上一篇:【求职宝典】英语面试如何符合外企口味?必备学习下一篇:山西中南部铁路通道工程列车运输安全管理办法