WEB攻击手段及防御-扩展篇

之前的文章介绍了常见的XSS攻击、SQL注入、CSRF攻击等攻击方式和防御手段,没有看的去翻看之前的文章,这些都是针对代码或系统本身发生的攻击,另外还有一些攻击方式发生在网络层或者潜在的攻击漏洞在这里也总结一下。

DOS/DDOS攻击

DOS攻击不是说攻击DOS系统,或者通过DOS系统攻击。

DOS攻击全称为Denial of service,即拒绝服务,其主要攻击目的是使计算机硬件或网络宽带资源耗尽从而造成服务器无法提供正常服务,而DDOS攻击就是Distributed denial of service,即分布式的拒绝服务攻击,攻击者利用多台服务器资源对同一个目标服务器发起攻击,从而使目的服务器快速陷入崩溃。

不管是DOS还是DDOS,它们的本质都是通过各种手段消耗目标服务器资源,从而使目标服务器瘫痪不能接受用户的服务。

一般租用像阿里云或者其他的服务器资源都是有web应用防火墙能阻止dos攻击的,如果是自己的服务器需要专业的运维人员对服务器进行相关设置以防止DOS攻击。

DNS攻击

DNS攻击包括有DNS劫持和DNS污染。

DNS劫持即通过某种手段控制DNS服务器,篡改域名真实的解析结果,并返回攻击者的ip地址,从而跳到了攻击者的页面。像我们宽带快到期了或者有什么推广信息,电信总会弹出一个营销界面提示我们宽带快到期了或者什么活动的,这其实就是运营商DN劫持搞的鬼。像在我们本地,也经常会配置host文件以开发测试联调,或者访问那些访问不了你又想访问的网址。

防止DNS劫持可以用国外知名的DNS服务器,像google的8.8.8.8,或者准备两个域名,一个被劫持了引导用户去访问另一个。

DNS污染发生在请求DNS解析前第一步,直接在协议上对DNS解析请求进行干扰,因为DNS查询是基于不可靠无连接的UDP协议,它是没有经过认证的,很容易被篡改,所以攻击者通过在UDP的53端口进行DNS查询检测,并返回攻击者错误的解析结果给用户,这就是DNS污染。

DNS污染可以通过自己搭建DNS服务器,采用TCP加密的形式,但可能延迟比较大。

错误回显

这个在SQL注入防御篇幅中有描述,就是不能把数据库表及代码关键信息输出到用户浏览器,这里不再详细描述。

网页注释

为了开发或联调的便利性,我们经常在代码使用注释,某些注释可能包括重要信息,给攻击者以可乘之机,所以这个最好养成良好的习惯及时删除敏感的注释或者开发完成对代码进行审视。

文件上传

一般的网站都会有文件上传功能,如人才网就会有包括用户的头像、简历附件什么的,如果攻击者上传一个.exe可执行程序到服务器,那么这个执行程序很有可能操控这个服务器,或者通过这个服务器间接攻击其他内部服务器群,后果是十分严重的。

所以,针对上传功能要限制用户可上传的文件类型,比如头像肯定是jpg等图片格式;文件最好分开存储,一是能提高系统性能,二是就算攻击者攻击了文件服务器也不一定能攻击到别的服务器;另外,存储采用重命名方式,像QQ之间传送文件一般会在文件名后面加上一个".重命令"后缀,就是为了防止用户点击.exe文件造成病毒攻击。

原文发布于微信公众号 - Java技术栈(javastack)

原文发表时间:2017-06-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏phodal

你的 GitHub 子域名可能已被劫持

昨晚,在我快睡觉的时候,收到了一堆友善的警告邮件。大意是,我指向 GitHub 的子域名被劫持了。

1812
来自专栏源码之家

.htaccess重写让空间绑定多个域名到不同的目录支持多站点

6467
来自专栏北京马哥教育

rsync同步的艺术

如果你是一位运维工程师,你很可能会面对几十台、几百台甚至上千台服务器,除了批量操作外,环境同步、数据同步也是必不可少的技能。 说到“同步”,不得不提的利器就是r...

4047
来自专栏数据和云

经典分享:一份高达555页的技术PPT会是什么样子?

首先要明确,升级和迁移是两件事,升级和数据量关系不大,而迁移通常涉及到跨数据库版本、跨平台,其耗时和复杂度大大增加,数据库容量也将成为重要的影响因素。

1224
来自专栏菩提树下的杨过

maven学习(中)- 私服nexus搭建

接上回继续,相信大家对maven每次都联网从国外站点下载依赖项的龟速网络已经不坎忍受了,今天先来看看如何搭建"仓库私服",目前nexus是使用比较广泛的私服软件...

2838
来自专栏FreeBuf

快速自检电脑是否被黑客入侵过(Linux版)

之前写了一篇《快速自检电脑是否被黑客入侵过(Windows版)》, 这次就来写写Linux版本的。 前言 严谨地说, Linux只是一个内核, GNU Linu...

5797
来自专栏PHP在线

在Mac下使用MAMP Pro环境

以前,我使用Windows作为自己的工作系统,后来,改用Mac作为自己的主要工作系统了。 在Windows下,快速搭建*AMP环境,使用xampp或者WAMP之...

7737
来自专栏Java学习123

WIN 7/WIN8 必须开启的服务及服务功能解释

37112
来自专栏编程

挖洞技巧:APP手势密码绕过思路总结

欢迎关注:07v8论安全,技术干货等你来 这是07v8的第5篇技术文章,希望对你有用 挖洞技巧:APP手势密码绕过思路总结 作者:@剑影 * 本文参与双dan投...

2649
来自专栏JadePeng的技术博客

开源APM系统skywalking介绍与使用

SkyWalking 创建与2015年,提供分布式追踪功能。从5.x开始,项目进化为一个完成功能的Application Performance Managem...

6370

扫码关注云+社区

领取腾讯云代金券