笔记-Web安全与漏洞

这个有一个权威的排行榜。也就是传说中的-----OWASP TOP10

http://www.owasp.org.cn/

这个会不定时的更新,而且里面说例子和原理都挺全面的,

大家可以去这里看到最新的威胁排行

OWASP:

开放式Web应用程序安全项目(OWASP)是一个非营利组织,不附属于任何企业或财团。因此,由OWASP提供和开发的所有设施和文件都不受商业因素的影响。OWASP支持商业安全技术的合理使用,它有一个论坛,在论坛里信息技术专业人员可以发表和传授专业知识和技能。

什么是漏洞?

漏洞就是一个系统存在的弱点或者缺陷。

漏洞有可能是来自应用软件或者操作系统设计时的缺陷或者编码的时候产生的错误,也可能是来自于数据交互过程中设计的缺陷或者逻辑流程上的问题。这些漏洞有可能被有意或者无意的利用,从而造成一些意外的后果。比如信息泄露,资料被修改,系统被他人控制等等。

常见的一些漏洞

1.注入

其中最常见的就是SQL注入

SQL注入就是把一个SQL语句添加到用户输入的参数中,并且把这个参数发送到后台SQL服务器进行解析并执行。

2.XSS(跨站脚本攻击)

攻击者在网页中插入恶意代码,而网站对于用户输入内容未过滤,当用户浏览该页之时,页面中被插入的代码被执行,从而达到恶意攻击用户的特殊目的。

3.文件上传漏洞

文件上传漏洞是指用户上传一个可执行的脚本文件,并通过此脚本文件获得了执行服务端命令的能力,这种攻击方式也是最直接和有效的,有的时候几乎不需要技术门槛。

(文件上传本身没有什么问题,有问题的是文件上传之后,服务器怎么处理,解释文件,如果服务器的逻辑处理不够安全,那么就会存在很严重的安全隐患。)

4.文件下载

可以下载网站所有的信息数据,比如网站源码,网站的配置信息,网站的备份文件等信息。

5.目录遍历

设计者对内容没有恰当的访问控制,允许HTTP遍历,攻击者就可以访问这些受限的目录,并可以在Web根目录以外来执行命令。

6.本地文件包含

未对用户可控的变量进行输入检查,导致用户可以控制被包含的文件名,被利用时Web服务将特定的文件当成php脚本执行,从而获取一定的服务器权限。

7.远程文件包含

服务器通过php的特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从而可以去包含一个恶意文件,而攻击者可以构造这个恶意文件来达到特殊的目的。

8.代码执行

开发人员编写源码时没有针对代码中可执行的特殊函数入口做过滤,导致客户端可以提交构造语句,并且交由服务器端执行。

9.信息泄露

代码编写不严谨或者应用固有的功能。造成网站服务器信息被非法获取。

10.弱口令

就是一个非常简单的账号密码。就好像你弄了一个异常牢固的保险箱,然后把钥匙挂在锁上一样。

11.Cookies欺骗

它可以看做你在这个网站的身份证,当你修改了其中的内容之后,可以达到一些特殊的目的。比如修改了uid变成了其他人的账号

或者修改了权限level拥有了更高的权限等。

12.反序列化

暴露或间接暴露反序列化 API ,导致用户可以操作传入数据,攻击者可以精心构造反序列化对象并执行恶意代码。

13.CSRF跨站请求伪造

用户使用浏览器安全登录网站后,浏览器会以Cookie的形式保存信息,其中就包含用户的登录信息,然后在不关闭浏览器的情况下,用户可能访问一个危险网站(比如弹出的小广告),这个危险网站就能通过获取Cookie信息来仿造用户的请求,进而伪造用户的身份来请求安全网站,并进行一些危险操作从而给网站带来危险。

14.命令注入

系统对用户输入的数据没有进行严格过滤就运用,并且使用bash或者cmd来执行