目录:
- 1、如何查看服务器是否被攻击
- 2、如何判断服务器是否被DDoS恶意攻击?
- 3、服务器被攻击有什么表现
- 4、如何快速判断服务器是否遭受CC攻击?
- 5、如何辨别是否是网络DDoS攻击?
- 6、如何判断服务器是被攻击还是在攻击
如何查看服务器是否被攻击
服务器遭受ddos、cc攻击后一般会表现出:网站掉包严重,访问网站时要么打不开,要么打开了提示“server ”,刷新后情况依然如此,服务器远程困难,远程连接桌面非常卡,或者远程桌面进去后是黑屏。有的用户勉强能远程桌面连接进去了,但是操作困难,cpu处于100%,内存占用率也高,服务器已处于瘫痪状态。(来源网络)
如果服务器被攻击了, 建议:
1、查看下是啥类型的攻击。检查下系统日志,看下攻击者都去了哪些地方。
2、关闭不必要的服务和端口
3、整体扫描下服务器,看下存在什么问题, 有漏洞及时打补丁;检查是否有影子账户,不是自己建立的账号;内容是否又被修改的痕迹等,如果发现问题及时进行清理。
4、重新设置账户密码,密码设置的复杂些;以及设置账户权限。
5、对服务器上的安全软件进行升级,或者是对防护参数进行重新设置,使他符合当时的环境。如果服务器上没有安装防护软件,可以看下服务器安全狗和网站安全狗。还可以将服务器添加到安全狗服云平台上,这样当有攻击发生时,可以快速知道,并进行处理等。
6、有网站,就检测下网站,是否有被挂马、被篡改、挂黑链等,如果有,及时清理。
7、如果是大流量攻击,单靠软防效果有限,可以看下DOSS流量清洗服,这个很多安全厂商都有这个服务,包括安全狗,安全宝、加速乐等。
8、定期备份数据文件。如果之前有做备份,当发生安全问题时,可以及时替换。
如何判断服务器是否被DDoS恶意攻击?
怀疑遇到攻击情况,首先要看看服务器上面的情况,首先top一下,看看服务器负载,如果负载不高,那么基本可以判断不是cc类型的攻击,再输入命令
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
查看下网络连接的情况,会得到下面这些结果:
TCP/IP协议使用三次握手来建立连接,过程如下:
1、第一次握手,客户端发送数据包syn到服务器,并进入SYN_SEND状态,等待回复
2、第二次握手,服务器发送数据报syn/ack,给客户机,并进入SYN_RECV状态,等待回复
3、第三次握手,客户端发送数据包ACK给客户机,发送完成后,客户端和服务器进入ESTABLISHED状态,链接建立完成
如果ESTABLISHED非常地高,那么可能是有人在恶意攻击,进一步判断,可以把下面命令保存为脚本执行一下:
for i in `netstat -an | grep -i ':80 '|grep 'EST' | awk '{print $5}' | cut -d : -f 1 | sort | uniq -c | awk '{if($1 50) {print $2}}'`
do
echo $i
echo $i /tmp/evilip
done
如果输出了多个结果,那么可能表示有人在企图进行DDOS攻击,想用TCP连接来拖死你的服务器,输出的ip就是发出请求的服务器地址,并且保存在了/tmp/evilip里面。如果没有结果,可以调整一下阈值,把50改成40试一试,对策我们后面再说,这里只讲判断。如果SYN_RECV非常高,那么表示受到了SYN洪水攻击。
SYN洪水是利用TCP/IP协议的设计缺陷来进行攻击的,采用一些策略以及配置可以适当的降低攻击的影响,但并不能完全消除。
sysctl -w net.ipv4.tcp_syncookies=1
sysctl -w net.ipv4.tcp_syn_retries = 0
sysctl -w net.ipv4.tcp_max_syn_backlog=2048
tcp_syncookies设置为1表示启用syncookie,可以大大降低SYN攻击的影响,但是会带来新的安全缺陷。
tcp_syn_retries 表示syn重试次数,重传次数设置为0,只要收不到客户端的响应,立即丢弃该连接,默认设置为5次。
tcp_max_syn_backlog表示syn等待队列,改小这个值,使得SYN等待队列变短,减少对系统以及网络资源的占用。
TCP连接攻击算是比较古老的了,防御起来也相对比较简单,主要是利用大量的TCP连接来消耗系统的网络资源,通常同一个IP会建立数量比较大的TCP连接,并且一直保持。应对方法也比较简单,可以将以下命令保存为脚本,定时ban掉那些傀儡机ip
for i in `netstat -an | grep -i ':80 '|grep 'EST' | awk '{print $5}' | cut -d : -f 1 | sort | uniq -c | awk '{if($1 50) {print $2}}'`
do
echo $i
echo $i /tmp/banip
/sbin/iptables -A INPUT -p tcp -j DROP -s $i
done
banip文件里面记录了所有被ban的ip地址信息,方面进行反渗透以及证据保存等等。为了更好地加固系统,我们可以使用iptables来限制一下,单个ip的最大连接数。
当攻击者的资源非常的多,上面这些方法限制可能就没有什么防护效果了,面对大流量DDoS攻击还是要考虑采用多机负载或者选择墨者安全高防来应对了,一般来说多机负载的成本可能更高,所以大部分人还是选择墨者高防硬防产品来防御。
服务器被攻击有什么表现
服务器被攻击一般有两种比较常见的方式:一是恶意的攻击行为,如拒绝服务攻击,网络病毒等等,这种方式就是消耗服务器资源,影响服务器的正常运作,甚至服务器所在网络的瘫痪;
另外一个就是恶意的入侵行为,这种行为更是会导致服务器敏感信息泄露,入侵者更是可以为所欲为,肆意破坏服务器
如何快速判断服务器是否遭受CC攻击?
CC攻击有一定的隐蔽性,那如何确定服务器正在遭受或者曾经遭受CC攻击呢?可以通过以下三个方法来确定。
1、命令行法
一般遭受CC攻击时,Web服务器会出现80端口对外关闭的现象,因为这个端口已经被大量的垃圾数据堵塞了正常的连接被中止了。可以通过在命令行下输入命令netstat-an来查看,SYN_RECEIVED是TCP连接状态标志,意思是正在处于连接的初始同步状态,表明无法建立握手应答处于等待状态。这就是攻击的特征,一般情况下这样的记录一般都会有很多条,表示来自不同的代理IP的攻击。
2、批处理法
上述方法需要手工输入命令且如果Web服务器IP连接太多看起来比较费劲,可以建立一个批处理文件,通过该脚本代码确定是否存在CC攻击。
脚本筛选出当前所有的到80端口的连接。当感觉服务器异常时就可以双击运行该批处理文件,然后在打开的log.log文件中查看所有的连接。如果同一个IP有比较多的到服务器的连接,那就基本可以确定该IP正在对服务器进行CC攻击。
3、查看系统日志
web日志一般在C:WINDOWSsystem32LogFilesHTTPERR目录下,该目录下用类似httperr1.log的日志文件,这个文件就是记录Web访问错误的记录。管理员可以依据日志时间属性选择相应的日志打开进行分析是否Web被CC攻击了。
默认情况下,web日志记录的项并不是很多,可以通过IIs进行设置,让web日志记录更多的项以便进行安全分析。其操作步骤是:开始-管理工具打开Internet信息服务器,展开左侧的项定位到相应的Web站点,然后右键点击选择属性打开站点属性窗口,在网站选项卡下点击属性按钮,在日志记录属性窗口的高级选项卡下可以勾选相应的扩展属性,以便让Web日志进行记录。比如其中的发送的字节数、接收的字节数、所用时间这三项默认是没有选中的,但在记录判断CC攻击中是非常有用的,可以勾选。另外,如果你对安全的要求比较高,可以在常规选项卡下对新日志计划进行设置,让其每小时或者每一天进行记录。为了方便日后进行分析时好确定时间可以勾选文件命名和创建使用当地时间。
如何辨别是否是网络DDoS攻击?
1、服务器连接不到,网站也打不开
如果网站服务器被大量DDoS攻击时,有可能会造成服务器蓝屏或者死机,这时就意味着服务器已经连接不上了,网站出现连接错误的情况。
2、服务器CPU被大量占用
DDoS攻击其实是一种恶意性的资源占用攻击,攻击者利用肉鸡或者攻击软件对目标服务器发送大量的无效请求,导致服务器的资源被大量的占用,因而正常的进程没有得到有效的处理,这样网站就会出现打开缓慢的情况。如果服务器某段时期能突然出现CPU占用率过高,那么就可能是网站受到CC攻击影响。
3、服务器带宽被大量占用
占用带宽资源通常是DDoS攻击的一个主要手段,毕竟对很多小型公司或者个人网站来说,带宽的资源可以说非常有限,网络的带宽被大量无效数据给占据时,正常流量数据请求很很难被服务器进行处理。如果服务器上行带宽占用率达到90%以上时,那么你的网站通常出现被DDoS攻击的可能。
4、域名ping不出IP
域名ping不出IP这种情况站长们可能会比较少考虑到,这其实也是DDoS攻击的一种表现,只是攻击着所针对的攻击目标是网站的DNS域名服务器。在出现这种攻击时,ping服务器的IP是正常联通的,但是网站就是不能正常打开,并且在ping域名时会出现无法正常ping通的情况。
如果经常发生DDoS攻击,对于网站来说是比较危险的,因此要重视DDOS攻击。防御DDoS攻击,可以使用安全狗来防护。
如何判断服务器是被攻击还是在攻击
(1)CC类攻击
A.网站出现service unavailable提示
B.CPU占用率很高
C.网络连接状态:netstat –na,若观察到大量的ESTABLISHED的连接状态 单个IP高达几十条甚至上百条
D.外部无法打开网站,软重启后短期内恢复正常,几分钟后又无法访问。
(2)SYN类攻击
A.CPU占用很高
B.网络连接状态:netstat –na,若观察到大量的SYN_RECEIVED的连接状态
(3)UDP类攻击
A.观察网卡状况 每秒接受大量的数据包
B.网络状态:netstat –na TCP信息正常
(4)TCP洪水攻击
A.CPU占用很高
B.netstat –na,若观察到大量的ESTABLISHED的连接状态 单个IP高达几十条甚至上百条
如不幸被当肉鸡去攻击别人,就查看您的服务器是否有向别的服务器不断发送文件。