目录
文章目录
一、SQL注入攻击
二、跨站脚本攻击 (XSS)
三、跨站请求伪造 (CSRF)
四、Dos拒绝服务攻击
五、DNS查询攻击
六、业务漏洞
七、点击劫持
八、文件上传漏洞
九、不安全的会话管理
十、信息泄露
十一、暴力破解
十二、后门程序
十三、未经授权访问
文章目录
- 一、SQL注入攻击
- 二、跨站脚本攻击 (XSS)
- 三、跨站请求伪造 (CSRF)
- 四、Dos拒绝服务攻击
- 五、DNS查询攻击
- 六、业务漏洞
- 七、点击劫持
- 八、文件上传漏洞
- 九、不安全的会话管理
- 十、信息泄露
- 十一、暴力破解
- 十二、后门程序
- 十三、未经授权访问
一、SQL注入攻击
- 描述:攻击者通过在用户输入中注入恶意SQL查询代码,程序在执行时,将攻击者输入的恶意SQL作为查询语句的一部分执行,导致查询逻辑更改,执行了攻击者恶意的SQL代码。
- 例举:最常见的SQL注入攻击是在查询语句后拼接字符串SQL语句如 'OR' 1 '=' 1SQL片段,当执行查询用户名和密码是否正确的SQL语句时,原本要执行的语句是SELECT * FROM user WHERE username='' and password='',在经过参数拼接后,执行语句变成了 SELECT * FROM user WHERE username='' and password='' OR '1'='1',这个时候的1=1是恒成立的,这就自然跳过了验证,实现了SLQ注入攻击。
- 防范措施: 使用参数化查询、细致的输入验证、最小权限原则等。
二、跨站脚本攻击 (XSS)
- 描述:XSS跨站脚本攻击(Cross-Site scripting)是指通过在Web应用程序中注入恶意脚本(如:非法的htmll标签或javascript)从而达到攻击的目的,如盗取用户的cookie,改变网页的DOM结构,重定向到其他网页等。XSS攻击分类包含反射型,存储型,DOM型以及FLASH。
- 防范措施:通过输入验证方式、输出编码格式方式、使用CSP(内容安全策略)等措施进行防范。
三、跨站请求伪造 (CSRF)
- 描述:CSRF跨站点请求伪造(Cross-Site Request Forgeries)是指攻击者通过利用受信任用户的身份,在用户不知情的情况下发送恶意请求,执行某些敏感操作,属于被动攻击。
- 防范措施:使用CSRF令牌、检查Referer头、实施同源策略等。
四、Dos拒绝服务攻击
- 描述:Dos拒绝服务攻击(Denial of Service attack)是一种能够让服务器呈现静止状态的攻击方式。其原理是通过发送大量的合法请求到服务器,使得服务器无法分辨这些请求是否为正常请求还是攻击请求,服务器直接全部放行,大量的请求造成服务器进入停止工作或拒绝服务的状态,从而实现攻击。Dos拒绝服务攻击有很多方式,包括:(传统的DoS攻击、DDOS分布式拒绝服务攻击、资源耗尽攻击等等)
- 防范措施:网络流量过滤、带宽扩展、流量限制、负载均衡等防范Dos攻击。
五、DNS查询攻击
-
描述:DNS查询攻击(DNS Query Flood)是向被攻击的服务器发送大量随机生成的域名解析请求,其中大部分请求其实根本就不存在使得服务器承受请求负载,并且通过伪造端口和客户端IP方式,防止查询请求被ACL过滤,从而实现攻击,其中注意DNS查询攻击其实是Dos攻击的一种方式之一。
-
防范措施:根据端口号,域名 IP 主动回应结果,减轻服务器负载、对突然发起大量域名解析请求的 IP 地址进行限制、限制每个源 IP 地址每秒的域名解析请求次数等。
六、业务漏洞
-
描述:业务漏洞是跟具体的应用程序相关,如参数篡改(连续的发送携带不同请求参数的请求)、重放攻击(发送请求又取消又再发送)、权限控制(即跨权限访问)等。
-
防范措施:在系统设计阶段就因该考虑业务漏洞问题,应尽量避免连续发送请求、越权访问操作等。
七、点击劫持
- 描述:攻击者通过将用户认为是安全的页面嵌入到一个透明的iframe中,然后引导用户点击透明的页面上的按钮,实现攻击。
- 防范措施: 使用frame跳转防护、X-Frame-Options头、点击劫持的检测和提示等防范攻击。
八、文件上传漏洞
- 描述:攻击者通过上传包含恶意内容的文件,绕过应用程序的文件上传校验和限制等操作,执行任意恶意操作,实现攻击。
- 防范措施:限制文件类型和大小、验证上传文件内容、将上传文件存储在安全位置等防范攻击。
九、不安全的会话管理
- 描述:攻击者以试图截获、劫持或猜测用户的会话标识方式,以获取未经授权的访问,执行恶意操作,实现攻击。
- 防范措施:使用安全的cookie属性、定期更新会话令牌、使用HTTPS等防范攻击。
十、信息泄露
-
描述:由于 Web 服务器或Web应用程序没有正确的处理一些特殊的请求,泄露了 Web 服务器的一些敏感信息。
-
防范措施:保证源代码、过滤用户提交的数据与特殊字符、敏感信息加密传输、服务器配置的安全等。
十一、暴力破解
-
描述:暴力破解一般情况下只针对密码,因为安全性低的密码很容易被攻击者猜到或被使用破解工具暴力破解。
-
防范措施:密码复杂度要足够大同时也要保证密码足够隐蔽、限制尝试次数、加锁等。
十二、后门程序
-
描述:后门程序一般多指那些绕过安全性控制从而获取对程序或系统访问权限的方法。
-
防范措施:使用非对称后门接口进行软件进行更新,避免对称后门接口, 给后端程序加保护膜,定时更新去除后门的补丁程序等。
十三、未经授权访问
- 描述:攻击者以某种特殊手段试图访问未经授权的资源或执行未经授权的操作,实现攻击。
- 防范措施:严格的身份验证、访问控制列表(ACL)、最小权限原则等防范攻击。