网站安全漏洞--大全

news/2024/5/15 21:00:45/文章来源:https://knife.blog.csdn.net/article/details/117189537

原文网址:网站安全漏洞--大全_IT利刃出鞘的博客-CSDN博客

简介

        本文介绍网站常见的一些安全漏洞,包括:SQL 注入、越权操作、跨站脚本攻击(XSS)、跨站请求伪造(CSRF)、DDoS 攻击、JSON 劫持、暴力破解、HTTP 报头追踪漏洞、信息泄露、文件上传格式校验。

SQL 注入

简介

        SQL 注入就是通过给 web 应用接口传入一些参数来拼凑SQL语句,使服务器执行恶意的sql命令。

实例

sql = "select * from users where name=" + name;

上面的 SQL 语句目的是通过用户输入的用户名查找用户信息,因为由于 SQL 语句是直接拼接的,也没有进行过滤,所以,当用户输入 '' or '1'='1' 时,这个语句的功能就是搜索 users 全表的记录。

select * from users where name='' or '1'='1';

防御方案

  1. 绑定变量
  2. 检查数据类型
  3. 使用过滤函数

越权操作

平行越权漏洞

        只要一个账户即可控制全站用户数据。当然这些数据仅限于存在漏洞功能对应的数据。越权漏洞的成因主要是因为开发人员在对数据进行增、删、改、查询时对客户端请求的数据过分相信而遗漏了权限的判断。

        案例分析:删除帖子时没有判断当前用户是否有权限删除该帖子,导致其他用户的帖子也被删掉了。

垂直越权操作漏洞

        基于角色的权限管理,又称为“垂直权限管理”。不同角色的权限有高低之分。高权限角色访问低权限角色的资源往往是被允许的,而低权限角色访问高权限角色的资源往往是被拒绝的。如果低权限角色获得了高权限角色的能力,那么就发生了“越权访问”。

跨站脚本攻击(XSS)

简介

        XSS(Cross Site Scripting)的含义:恶意攻击者通过某些输入点往Web页面里插入脚本代码,当用户浏览页面或执行某种操作时,就会触发嵌入的脚本代码,从而实现恶意攻击。

分类

1.存储型XSS(Stored XSS)

存入了数据库,再取出来时导致的xss。

输入

输出

2.反射型XSS(Reflected XSS)

案例:在网址url后输入xss代码,如<script>alert(1)</script>,然后访问时导致html页面加载这段代码即可达到弹框效果

3.DOM型XSS(DOM Based XSS)其实也是反射型的一种

        严格来说该xss也属于反射型,本文的例子其实也是dom based,是指修改页面的dom对象模型,从而达成攻击。

防御方案

1.输出过滤

跨站请求伪造(CSRF)

简介

        CSRF(Cross-site request forgery)跨站请求伪造,也被称成为“one click attack”或者session riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。

发生原因

网站是通过cookie来识别用户的,当用户成功进行身份验证之后浏览器就会得到一个

标识其身份的cookie,只要不关闭浏览器或者退出登录,以后访问这个网站会带上这个cookie。

1.登录受信任网站A,并在本地生成Cookie。

2.如果在用户登录访问网站A的同时访问了网站B,访问者在网站A的数据就会被B使用用户cookie假冒更新。

案例

假如某网银转账操作是以GET请求来完成:

http://www.mybank.com/Transfer.php?toBankId=11&money=1000

网站B,它里面有一段HTML的代码如下:

<img src=http://www.mybank.com/Transfer.php?toBankId=11&money=1000>

当我在网银cookie有效的情况下访问了网站B,那我的网银就莫名其妙的被转账了1000。。。

防御方案

  1. 二次验证
    1. 比如:对于转账、修改密码之类的敏感操作,不能仅通过cookie进行验证,要重新验证,比如:短信验证码、账号密码、人脸识别。
  2. 对请求的referer进行检测
  3. 添加随机token校验

DDoS 攻击

简介

        DoS 攻击全称拒绝服务(Denial of Service),简单的说就是让一个公开网站无法访问,而 DDoS 攻击(分布式拒绝服务 Distributed Denial of Service)是 DoS 的升级版。这个就完全属于后端的范畴了。

原因

攻击者不断地提出服务请求,让合法用户的请求无法及时处理,这就是 DoS 攻击。

攻击者使用多台计算机或者计算机集群进行 DoS 攻击,就是 DDoS 攻击。

解决方案

防止 DDoS 攻击的基本思路是限流,限制单个用户的流量(包括 IP 等)。另见:此文

  1. 设置高性能设备
    1. 要保证网络设备不能成为瓶颈,因此选择路由器、交换机、硬件防火墙等设备的时候要尽量选用知名度高、口碑好的产品。再就是假如和网络提供商有特殊关系或协议的话就更好了,当大量攻击发生的时候请他们在网络接点处做一下流量限制来对抗某些种类的DDoS攻击是非常有效的。
  2. 带宽得保证
    1. 网络带宽直接决定了能抗受攻击的能力,假若仅仅有10M带宽的话,无论采取什么措施都很难对抗现在的SYN Flood攻击。所以,最好选择100M的共享带宽,当然是挂在1000M的主干上了。
  3. 不要忘记升级
    1. 在有网络带宽保证的前提下,请尽量提升硬件配置,要有效对抗每秒10万个SYN攻击包。而且最好可以进行优化资源使用,提高web server 的负载能力。
  4. 异常流量的清洗
    1. 通过DDoS硬件防火墙对异常流量的清洗过滤,通过数据包的规则过滤、数据流指纹检测过滤、及数据包内容定制过滤等顶尖技术能准确判断外来访问流量是否正常,进一步将异常流量禁止过滤。
  5. 考虑把网站做成静态页面
    1. 把网站尽可能做成静态页面,不仅能大大提高抗攻击能力,而且还给黑客入侵带来不少麻烦,最好在需要调用数据库的脚本中,拒绝使用代理的访问,经验表明,使用代理访问你网站的80%属于恶意行为。
  6. 分布式集群防御
    1. 这是目前网络安全界防御大规模DDoS攻击的最有效办法。分布式集群防御的特点是在每个节点服务器配置多个IP地址,并且每个节点能承受不低于10G的DDoS攻击,如一个节点受攻击无法提供服务,系统将会根据优先级设置自动切换另一个节点,并将攻击者的数据包全部返回发送点,使攻击源成为瘫痪状态,从更为深度的安全防护角度去影响企业的安全执行决策。
  7. IP轮询技术
    1. 对稳定性、流畅性以及安全性上要求较高的业务,用户遭受 DDoS 攻击且达到一定峰值时,系统通过 IP 轮询机制,将从IP 池中灵活调取一个新的 IP 充当业务 IP,使攻击者失去攻击目标,以此保证业务在 DDoS 的攻击下正常运转。
  8. BGP高防IP
    1. 当用户应用 BGP 高防 IP 且配置转发规则和域名回源后,此时所有的访问流量都将流经 BGP 高防 IP 集群,通过端口协议转发的方式(支持网站业务和非网站业务)将访问流量转发至源站,同时攻击流量将在 BGP 高防 IP 集群进行清洗和过滤,只会将正常业务流量返回至源站,从而确保源站业务的稳定。
  9. 运营商过滤
    1. 针对反射放大类攻击,都有相同的特点,可以直接在运营商侧进行过滤,不用将流量流入抗D设备,从而使防御与反射放大类压制更有效果。本不存在放大效果,但基于其真实 IP 的原因,穿透性与隐蔽性都十分显著。
  10. 流量预压制
    1. 流量预压制/UDP 预压制等能力,从容应对新型的超大流量攻击。 (Memcached的5W倍反射)

JSON 劫持

其他网址

JSON和JSONP劫持以及解决方法

简介

        JSON 劫持(JSON Hijacking)是用于获取敏感数据的一种攻击方式,属于 CSRF 攻击的范畴。

原因

        一些 Web 应用会把一些敏感数据以 json 的形式返回到前端,如果仅仅通过 Cookie 来判断请求是否合法,那么就可以利用类似 CSRF 的手段,向目标服务器发送请求,以获得敏感数据。

比如下面的链接在已登录的情况下会返回 json 格式的用户信息:

http://www.test.com/userinfo

攻击者可以在自己的虚假页面中,加入如下标签:

<script src="http://www.test.com/userinfo"></script>

如果当前浏览器已经登录了 www.test.com,并且 Cookie 未过期,然后访问了攻击者的虚假页面,那么该页面就可以拿到 json 形式的用户敏感信息,因为 script 标签会自动解析 json 数据,生成对应的 js 对象。然后再通过:

Object.prototype.__defineSetter__

个函数来触发自己的恶意代码。但是这个函数在当前的新版本 Chrome 和 Firefox 中都已经失效了。

解决方案

  • X-Requested-With 标识
  • 浏览器 JSON 数据识别
  • 禁止 Javascript 执行 JSON 数据

暴力破解

简介

        这个一般针对密码而言,弱密码(Weak Password)很容易被别人(对你很了解的人等)猜到或被破解工具暴力破解。

解决方案

  • 密码复杂度要足够大,也要足够隐蔽
  • 限制尝试次数

HTTP 报头追踪漏洞

简介

        HTTP/1.1(RFC2616)规范定义了 HTTP TRACE 方法,主要是用于客户端通过向 Web 服务器提交 TRACE 请求来进行测试或获得诊断信息。

        当 Web 服务器启用 TRACE 时,提交的请求头会在服务器响应的内容(Body)中完整的返回,其中 HTTP 头很可能包括 Session Token、Cookies 或其它认证信息。攻击者可以利用此漏洞来欺骗合法用户并得到他们的私人信息。

防御方案

禁用 HTTP TRACE 方法。

信息泄露

简介

        由于 Web 服务器或应用程序没有正确处理一些特殊请求,泄露 Web 服务器的一些敏感信息,如用户名、密码、源代码、服务器信息、配置信息等。

防御方案

  • 应用程序报错时,不对外产生调试信息
  • 过滤用户提交的数据与特殊字符
  • 保证源代码、服务器配置的安全

文件上传格式校验

简介

        黑客攻击网站还有一个常见的方式就是通过文件上传漏洞,比如网站上传图片的功能没有严格校验后缀名。黑客可以通过此功能上传一些脚本文件,上传成功后,通过请求这些脚本文件运行脚本中的功能达到攻击的目的。

        那么如果验证了上传文件的后缀名就可以吗?实际上并不是,举例说我们知道页面引入script标签时src写啥都行,比如http://www.baidu.com/123.jpg,也是可以的,攻击者只需要把一个script文件后缀名改为jpg即可通过后缀验证,后面一路畅通。所以这就提到了验证文件的真实格式。如何验证,网上一大堆…

防御方案

设置php文件、jsp文件不可直接被访问(不知道php可以不,jsp放在WEB-INF即可),这样攻击者上传此类文件也无法执行;

通过文件头信息严格验证文件格式,从上传功能开始防范。

其他网址

WEB应用常见15种安全漏洞一览 | Fundebug博客 - 一行代码搞定BUG监控
网络安全常见漏洞与分析_loner_fang的博客-CSDN博客_网络安全漏洞
网站10大常见安全漏洞及解决方案_shanhanyu的博客-CSDN博客_常见网络安全漏洞

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_720467.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[存底]加速,加速,再加速:来自Google的网站加速技巧大全

原文&#xff1a;http://developer.51cto.com/art/200906/132210.htm 困扰许多网站所有者很久的一个问题是网站访问速度总是那么慢。想购买独立带宽&#xff0c;预算不允许&#xff0c;想购买CDN加速&#xff0c;价格又太贵。那有没有经济实惠的解决办法呢&#xff1f;从目前的…

python人工智能_Python爬虫学习教程 bilibili网站视频爬取!【附源码】

Python爬虫学习教程&#xff0c;万物皆可爬&#xff01;每个技术大牛都是从基础慢慢的提升上去的&#xff0c;基础知识越深以后的发展越牛&#xff01;学好python&#xff0c;才能玩转python&#xff0c;那到底怎么才能学好python&#xff1f;通过爬取b站案例带领你快速掌握爬虫…

ASP.NET : 如何为网站添加自定义的文件类型

我们知道&#xff0c;在ASP.NET网站中&#xff0c;默认页面的扩展名是aspx.要想实现在网站中提供特殊的文件类型&#xff0c;例如Test之类的,就可以考虑通过HttpHandler来实现。下面是一个小的例子 1. HttpHandlerusing System; using System.Collections.Generic; using Syste…

aspnetcore upload form提交_第八:网站网址提交给搜索引擎

第八&#xff1a;网站网址提交给搜索引擎网站更新了文章&#xff0c;如果你想搜索引擎快速收录网页&#xff01;把网址提交给搜索引擎&#xff0c;是一种辅助网页收录的技巧。会围绕着搜索引擎提交这个话题&#xff0c;一一的介绍网址提交的方法。★ 网址提交方式以百度为例&am…

网站用户登录验证:Servlet+JSP VS Struts书剑恩仇录

? 什么是Struts框架 –从不同的角度看待Struts框架 –Struts框架的优点 ? 下载安装Struts框架 –下载配置Struts框架 –测试Struts框架 –安装Struts应用程序 –访问Struts文档 ? Struts 中常用组件 –ActionServlet –Action –ActionForm –ActionMapping –ActionForward…

网站防御DDoS的方案--高防节点(高防IP)

原文网址&#xff1a;网站防御DDoS的方案--高防节点(高防IP)_IT利刃出鞘的博客-CSDN博客 简介 本文介绍如何使用高防节点防御DDoS攻击。 本文包含的内容有&#xff1a;DDos的概念&#xff0c;高防节点的防御原理&#xff0c;提供高防节点的一些厂家&#xff0c;高防节点的配置…

linux 部署asp网站,Linux Ubuntu下部署Asp.net Core Web

Linux Ubuntu下部署Asp.net Core WebLinux Ubuntu下部署Asp.net Core Web使用的是Ubuntu14.04版本&#xff0c;.Net Core 版本2.1打开终端并运行以下命令&#xff1a;wget -q https://packages.microsoft.com/config/ubuntu/19.04/packages-microsoft-prod.deb -O packages-mic…

UX Pin - 一款在线界面设计网站

UXPorn首页上以Pinterest的风格聚合了很多优秀的UI设计&#xff0c;除了供大家参考学习外&#xff0c;也可以在UXPIN App中直接使用。 进入UXPIN App, 可以拖动各种元素到canvas上&#xff0c;添加用户交互事件&#xff0c;并支持自定义component, version control, team colla…

方配网站服务器 32位,方配网站服务器

方配网站服务器 内容精选换一换当您想在Internet上通过域名访问您的网站时&#xff0c;可以通过本操作将域名托管至华为云的云解析服务&#xff0c;并为域名添加解析记录。例如&#xff0c;搭建一个网站服务器&#xff0c;采用IPv4格式的弹性IP地址。如果想要实现通过域名“exa…

php网站怎么把上传的图片加载在头像上,JavaScript

js实现图片上传并正常显示项目经常会用到头像上传&#xff0c;那么怎么实现呢&#xff1f;首先是HTML布局&#xff1a;缩略图jquery方式&#xff0c;IE不支持&#xff0c;但IE会获得绝对的上传路径信息&#xff1a;function getObjectURL(file) {var url null ;if (window.cre…

b2c 多语言,3个可以让B2C外贸网站更成功的设计

让B2C外贸网站更具备竞争力&#xff0c;也可以从网站上的细节入手。人类是一种很复杂的动物&#xff0c;一些小设计往往能够直达内心&#xff0c;引导他们做出购买行为。下面5个小设计希望能够引起路过的电商朋友一些启发。行为召唤Call To Action充斥在各种购物环境中&#xf…

php手机网站视频上传播放器,TP中PC与手机端视频播放功能二次开发

原标题&#xff1a;TP中PC与手机端视频播放功能二次开发在使用ThinkPHP进行长沙网站开发中&#xff0c;发现新闻中的视频文件都不能正常播放。在DWPCMS开发的项目中存在同样问题&#xff0c;但PC端能正常播放。DWPCMS和TP的视频播放都是使用flash播放器&#xff0c;但Android(安…

360抢票 网站维护中 你的登录被踢了!

本来在超市犹豫到底该买哪种暖手袋&#xff0c;犹豫了差不多半个多小时&#xff0c;还没决定好&#xff0c;一看时间还有8分钟到10点&#xff0c;遂狂奔回寝室抢票。 结果&#xff0c;360抢票被12306秒了—— 猜测原因是12306的验证码改了&#xff08;变成动态的了……&#xf…

win2008服务器运行Linux,Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站...

前言App Store上的所有App应用以后将鼓励或者强制开启ATS功能。苹果的ATS(App Transport Security)对服务器硬性3点要求&#xff1a;① ATS要求TLS1.2或者更高&#xff0c;TLS 是 SSL 新的别称。② 通讯中的加密套件配置要求支持列出的正向保密。③ 数字证书必须使用sha256或者…

体验游戏编程网站

最近学习python&#xff0c;想要找点练习&#xff0c;在看《python核心编程》&#xff08;真是一本好书&#xff0c;非常详细&#xff0c;觉得看这一本书就够了&#xff0c;余下可以翻翻文档&#xff09;。觉得cf之类的虽然能用python提交但是重点不是在学习python上 。终于找到…

如何构建一个优秀的移动网站?谷歌专家教你25招(五)[转]

▌21、你的产品图像需要支持大图显示 顾客想要看看自己买的产品。在零售网站上&#xff0c;用户希望可以看到分辨率更高的产品图片&#xff0c;这样可以看到更多细节&#xff0c;如果网站不支持产品大图显示&#xff0c;肯定会让用户觉得非常失望。 关键要素&#xff1a;对于产…

Vue--解决官网网站404的问题

原文网址&#xff1a;Vue--解决官网网站404的问题_IT利刃出鞘的博客-CSDN博客 简介 本文介绍Vue官网打开之后404的问题。 问题描述 之前收藏了Vue的官网网址&#xff0c;结果现在打开发现404了&#xff0c;如下图所示&#xff1a; 上图的网址是&#xff1a;https://cn.vuejs.…

虚拟服务器是否能查访问网站记录,服务器可以查询记录吗

服务器可以查询记录吗 内容精选换一换资源管理服务(Resource Management Service&#xff0c;简称“RMS”)为用户提供进行全局资源管理的能力&#xff0c;用户可以通过RMS来检索、存储、评估自己在云平台上的资源。裸金属服务器(Bare Metal Server&#xff0c;以下简称BMS)提供…

做好数据库备份、网站备份很重要

2019独角兽企业重金招聘Python工程师标准>>> 对于服务器、网站管理员来说&#xff0c;数据库文件、网站文件的管理是一个重要的工程&#xff0c;他们每天都要耗费大量的精力和时间来管理海量的数据。但是&#xff0c;在管理过程中&#xff0c;总会出现一些大家无法预…

PayPal 开发详解(三):在网站上创建【立即付款】按钮

PayPal 开发详解&#xff08;三&#xff09;&#xff1a;在网站上创建【立即付款】按钮 1.使用【商家帐号】登录https://www.sandbox.paypal.com/ 2.点击【用户信息】->【其他选项】->【我保存的按钮】 3.选择【立即购买按钮事例】 4.【第一步】设置商品名称、价格 5.【…