ddos常用攻击方式,要实现ddos攻击

Web扫描:一般对Web扫描的通常都是需要找到对应较敏感的信息,比如部分用户使用的资源,特定后台登录界面,网站的配置文件如nginx.conf .git .svn等等这些内容资源。

Web扫描:

一般在扫描Web的时候需要找到对应的敏感信息,比如一些用户使用的资源,具体的后台登录界面,nginx.conf等网站的配置文件。蠢货。svn等等。

如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

通常每个网站的用户(运营者)都会因为一些规避行为造成严重的后果,比如不小心曝光或者遗忘。最后,财产、隐私等主要信息被不法分子获取。因此,网站所有者必须小心保护自己的网站,不要暴露一些重要信息。

一些常见的网页扫描方式,比如以这个网站为例:目标地址:对其进行扫描。

1、通过ping找到它对应的IP地址:

如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

2、通过dnsenum:

例如:DNS枚举-枚举testphp.vulnweb.com(9502 . 163.com)。

3、通过 traceroute 查看路由跳次的信息:

只需查看相应的IP和路由跳数信息。使用dirb命令暴力扫描,找出网站的一些敏感信息路径文件。

4、dirb:

dirb命令参数:

Dirb url基址[填写相应的下载词典文件](1)、可以自建一个文本文件,随便命令为file.txt,里面放着是路径文件的名称。如admin,login等。.

命令如下所示:

http://testphp.vulnweb.com文件如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

(2)、这种方式太耗时间,不太推荐使用:

dirb http://testphp.vulnweb.com/usr/share/dirb/word list/big . txt如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

上面的实现原理是通过url基址把字典文件中的资源路径拼凑到一起,得到一个可访问的地址,然后启动http GET,看看是否能得到一个资源。如果没有返回404,则资源存在。

我推荐两种获取字典文件的方法。这个是针对个人需求的,没有绝对的好坏之分。

1、默认dirb的字典:

存放在一个文件里,/usr/share/dirb/word list/

如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

2、更好用的字典可以到网上去下载 svndigger:

把下载好的文件压缩包,自行上传至kali中去解压。利用这个命令解压即可unzip SVNDigger.zip,解压之后,里面有这些文件提供:

如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

如何规避web被暴力扫描?

目前对于规避问题,能做的可以围绕两点,一个是通过检测手段,比如查看web服务器的访问日志,如果在一段时间内出现N多个404错误页面的访问,就可以断定有人在进行扫描的可能性了。对于暴力扫描真的预防不了太多,只能将敏感的数据文件规避起来,比如类似.git,.svn等等文件。

DDoS:

如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

DDoS是“Distributed denial of service attack”的缩写,意为:分布式拒绝服务攻击。

DoS denial of service:拒绝服务,指的是服务器或者网络的一种状态,服务不能正常工作,只要造成服务产生DoS状态的攻击成为DoS攻击,而DDoS分布式的DoS攻击,指的是多台机器同时对目标产生DoS攻击行为。

比如占用网络带宽的DDoS攻击,如下图所示:

如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

DDOS攻击主要分为三类:1、流量型攻击2、连接型攻击3、特殊协议缺陷。包括了 Ip Flood、Syn Flood、Udp 反射 Flood、Dns Query Flood、Dns Reply Flood、Http Flood、Https Flood、Sip Invite Flood、Sip Register Flood、Ntp Request Flood、Ntp Reply Flood、Connection Flood、CC攻击、http slow header慢速攻击、http slow post慢速攻击、Https-ssl-dos攻击、Dns NX攻击、Dns 投毒等等。

因时间有限,就简单以tcp SynFlood这种攻击方式为例。

其原理是:

tcp连接有一个队列,当服务器收到第一次握手包的时候,就会产生一个连接信息放到这个半连接队列里边 syn_backlog ,当服务器收到第三次握手的时候就会从半连接队列查询对应的连接信息,将其移动到另一个已经完成连接的队列 tcp backlog。但是如果攻击者一直发起第一次握手包syn报文,不发送第三次握手包来完成连接,那么就会导致服务器的半连接队列被撑爆,导致拒绝服务。

如下图所示:

如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

而实现的技术是依据tcp建立连接的三次握手,此攻击以多个随机的源主机地址向目的主机发送syn。攻击者只发起第一次握手包,但是不发起第三次握手包。而在收到目的主机的syn+ack包后并不回应,目的主机就为这些源主机建立大量的连接队列,由于没有收到ack一直维护这些连接队列,造成资源的大量消耗而不能向正常的请求提供服务。与之类似的攻击方式还有ackflood、s-ackflood、finflood、rstflood、tcpflood。connect api 是会完成三次握手的,所以只能使用原始套接字来实现。

而对于发起的攻击者IP是否会被发现?只要发起DDoS攻击,服务器肯定能发现,如果IP直接写真实的源IP地址,就会导致被攻击者容易追查是哪个人发起攻击的。现在技术也随之升级,攻击者也会知道如何更好利用跳板机等技术,防御方也有更好的防攻击对策,所以在安全攻防界里有一句话叫“道高一尺魔高一丈”。如果源地址是随机的,好处就是让服务器返回第二次握手报文的时候丢给了一个未知机器,该机器即使存活,也不会回第三次握手了。

netwox工具就是一个典型的例子。里面也有很多方法,在此不过多介绍,毕竟这方面说太多就易触碰底线问题了,点到为止即可。

SynFlood攻击的如何防护?

如何Web扫描?常见DDoS攻击方式,及预防手段都有哪些?

我列三点,当然不止,大佬们有更好的方法可以通过 评论方式一起交流下,谢谢。

1、通过扩大半连接队列的长度来达到防护手段:

这种防护方式真的治标不治本,队列再大也可以将其撑破比如通过这一命令设置:

echo 4096 > /proc/sys/net/ipv4/tcp_max_syn_backlog

2、通过来减少服务器syn+ack的重传次数,提高半连接队列的清理频率:

比如通过这条命令:

echo 4 > /proc/sys/net/ipv4/tcp_synack_retries

3、通过设置 tcp_syncookies:

这个方法虽然能够根本解决问题,但最后也会延伸其他攻击方式。

在第一次握手,服务器肯定要回第二次握手syn+ack报文 ,服务器在这个报文中放一些信息,该信息只有服务器能够识别,而第三次握手过来的是ack报文,服务器要从这个报文里边解析出之前留下的信息,来确定这个第三次握手包是合法的,就完成连接。直接废弃半连接队列,也就可以不存在半连接队列被撑破的情况。

根据上面所说的,会延伸另一种其他攻击方式的问题,这也是一个缺陷,因为每次第三次握手报文过来,要做额外的运算验证这个报文是否合法的,是一件非常损耗CPU资源的。

这么一来,虽然解决了前面一个问题,后一问题又发生,类似拆东墙补西墙的做法,毕竟可以一直发送第三次握手报文,从而来造成服务器花费大量的CPU资源去做验证,一样会造成DDoS。

这种方法可以通过这条命令来打开:

echo 1 >  /proc/sys/net/ipv4/tcp_syncookies

总结:

对于上面所介绍Web扫描和DDoS攻击部分问题,更多围绕介绍点出发,没具体说明怎么去操作,毕竟这块更侧重于防御,而不是攻击。在防御上或者有更加先进的方法很欢迎讨论评论。最后还是那句话:技术是学来或用来用在对的事情之上的,遵守法律法规,做到合理合法,踏踏实实地做一个白帽子,共同维护一个良好的网络环境。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/52294.html

(0)

相关推荐